본문 바로가기

분류 전체보기159

[Hash] 해시 알고리즘 1. 해시 함수, 해시 알고리즘임의의 길이의 데이터를 고정된 길이의 데이터로 매핑하는 함수.이런 해시 함수에 의해 얻어지는 갑은 해시 값, 해시 코드, 해시 라고 한다.해시 테이블 자료구조에 사용되며, 매우 빠른 데이터 검색을 위한 곳에 널리 사용된다. 2. 안전한 해시 함수역상 저항성 : 해시 값을 생성하는 입력값을 찾는 것이 계산상 어려워야한다.제 2역상 저항성 : 동일한 해시값(y)이 나오는 다른 입력값(x`)을 찾는 것은 계산적으로 불가능 해야한다.충돌 저항성 : 동일한 해시 값이 나와서는 안된다.3. SHA 종류SHA-1SHA-0을 변형한 함수264비트의 메시지로부터 160비트의 해시값을 만들어 내고, 입력 메시지는 512bit 패딩을 적용하는 방식 사용충돌쌍 문제 두 데이터에 대한 해시를 계산.. 2024. 8. 1.
[git] git과 VCS, 파일시스템, 암호화, 복사 1. VCS(Version Control System)소프트웨어 개발에서 소스 코드, 문서, 설정 파일 등의 변경 이력을 관리하는 시스템입니다.VCS는 파일의 변경 내용을 추적하고, 다양한 버전의 파일을 저장하며, 여러 개발자 간의 협업을 가능하게 합니다.소프트웨어 개발, 문서 관리, 설정 파일 관리에 주로 이용된다.주요 기능분경 이력 관리분산 및 협업백업 및 복구분기 및 병합태그 : 특정 시점의 버전을 태그로 관리하여 쉽게 찾기 가능VCS의 종류로컬 버전 관리 시스템로컬 DB에서 관리협업이 어렵고, 장애 시 데이터 손실의 위험이 있음예시 : RCS중앙 집중식 버전 관리 시스템특징: 중앙 서버에 모든 버전 정보를 저장하고, 클라이언트가 서버에 접속하여 작업을 수행합니다.장점: 협업이 용이하며, 중앙에서 .. 2024. 7. 31.
[JavaScript] 이벤트 큐, Event Emitter 1. Event Emitter비동기로 이벤트를 처리할 때 사용할 수 있다.const EventEmitter = require('events');const myEmitter = new EventEmitter();myEmitter.on('event', async () => { console.log('Start processing event'); // 비동기 함수 async function asyncTask() { return new Promise(resolve => { setTimeout(() => { console.log('Async task completed'); resolve(); .. 2024. 7. 29.
[네이버 부스트 캠프 개인 회고] 240726 1. 이번주 공부한 내용Class와 Prototype의 공통점과 차이점Jest를 이용한 테스트 정규표현식의 사용법과 다양한 예시함수형 프로그래밍Observer 패턴Worker ThreadNode 이벤트 루프 동작 방식Event Emitter 동작 방식Pub-Sub 설계 패턴2. KPT 회고Keep주어진 과제를 완성하기 위해서 노력함코드에서 버그나 에러를 맞닿들인 경우 끝까지 해결하고자 함짝 프로그래밍 시 요구조건 하나하나를 섬세하게 구현하고자 함짝과 유기적인 소통problem새롭게 마주한 이론에 대한 이해와 정리가 미흡모르는 개념에 대해 정확히 이해하지 않고 코드 작성을 먼저 하려는 경향이 있음Try확실히 이론에 대한 선행학습을 제대로 하는 것이 중요하다.3. 느낀점지난 주 대비 챌린지 과제에 익숙해져서.. 2024. 7. 26.