본문 바로가기

기타

(4)
[git] 원격 저장소와 local저장소의 소스코드를 일치시키는 방법 원격 저장소(깃헙)의 소스코드와 로컬 저장소의 소스코드를 일치키는 방법입니다. 명령어만 빠르게 확인하고 싶으시면 아래 명령어를 확인하시면 됩니다. git fetch --prune origin git reset --hard origin/main 먼저 깃을 처음 다루는 사람들이 하는 가장 큰 착각 중 하나가 단순히 pull을 받으면 원격 저장소와 내 컴퓨터의 소스코드가 일치된다고 생각하는 것입니다. 하지만 pull을 받는다고 하여 원격저장소의 브랜치와 로컬브랜치의 소스코드가 같아지지는 않습니다. 왜냐하면 pull은 fetch + merge이며, 기존 로컬에 있는 코드와 원격에서 받은 코드가 merge 되며 합쳐지기 때문입니다. 때문에 fetch를 통하여 remote tracking branch (origin..
npm package 버전관리 npm으로 모듈들을 설치하고 한참 시간이 지나면, 오래전에 설치한 모듈의 경우 최신 문법이나 메서드가 반영이 안 되는 경우가 있다. 나의 경우 리덕스에서 얼마전부터 공식 지원하고 있는 훅스가 react-redux 모듈의 버전이 낮아서 사용할 수 없었다. 이를 해결하기 위해 모듈들을 어떻게 한번에 업데이트해야 하는지 알아보았다. 검색 결과 npm-check-updates와 npm-check 두 가지의 라이브러리를 발견할 수 있었다. 두 개 모두 업데이트를 해주는 것은 동일하지만 과정에 있어서 약간의 차이가 있었다. 밑에는 스택오버플로우에서 긁어온 답변이다. npm-check-updates will only modify your package.json file. Once you've run that comm..
암호화에서 해시(hash)란 무엇인가? 해시(hash) 란 무엇인가? 해시란 원형문자(plaintext)가 해시함수(해시 엔진)를 통과하여 암호화되어 나온 결과물을 뜻한다. 그리고 해시함수(해시엔진)를 통과하는 과정을 해싱(hashing)이라고 한다. 13 곱하기 29 가 무엇인지 누가 물으면 377이라는 것을 금방 알 수 있다. 하지만 반대로 몇과 몇을 곱하면 377이 나오냐라고 물어보면 무수히 많은 경우의 수가 있다. 이것이 해싱의 기본원리이다. 실제 사용자가 입력한 비밀번호가 해시함수를 통과하여 해시가 된다. 이 해시의 원형을 알아 내려면 많은 경우의 수가 필요하여 복호화(암호해독)가 어렵다. 이것이 해싱을 통한 비밀번호 암호와의 기본원리이다. 다만 해싱에도 단점이 있는데 비밀번호가 같으면 해시가 무조건 같다. 예를들어 md5라는 해시 ..
나의 비밀번호를 지키기 위해서는 특수문자보다 길이가 우선되어야 한다. 암호와 관련 인강을 들으면서 재미있는 사이트를 발견했다. 암호를 해독하는데 걸리는 시간을 cpu성능별로 비교해주는 사이트이다. http://password-checker.online-domain-tools.com/ 이 사이트를 통해 나의 암호를 푸는데 얼마나 오랜시간이 걸리는지 알 수 있다. 이 사이트에서 알 수 있는 교훈 강력한 비밀번호를 만들기 위해서 특수문자, 대소문자를 활용하는 것도 중요하지만, 길이가 조금이라도 긴것이 더 최우선이 되어야 한다는 것이다. Assfeg! 라는 7자리 비밀번호는 암호는 일반 cpu로 3일, gpu로8시간이면 풀린다. 대문자와 특수문자를 사용했지만 7자리에 불과하기 때문이다. 반면, gehfeses!라는 10자리 암호는 대문자를 사용안했음에도 일반 cpu로 2년 gpu..