Node.js를 설치하게 되면 내장 모듈중 crypto라는 모듈이 있습니다. Show 비밀번호를 단순히 평문으로 데이터베이스에 저장하는 것은 범죄와 다름 없습니다. 암호화의 방법은 단방향 암호화와 양방향 암호화 두가지가 있습니다. 1. 단방향 암호화 Q: 왜 비밀번호 저장을 단방향 암호화로 할까요? Q: 복호화가 되어있지 않으면 비교는 어떻게하나요? 즉 기존의 비밀번호는 어디에도 저장되지 않고 암호화된 문자열로만 비교하는 방법입니다. 단방향 암호화는 해시 알고리즘을 사용합니다. 해시는 임의의 크기를 가진 문자열을 고정된 길이의 다른 문자열로 변경하는 것을 말합니다. 예를 들어서 zqxwce라는 문자열과 asdf라는 문자열을 해시 알고리즘을 사용한다면 고정된 길이(6개로 가정) pmonib와 lkjhgf로 바꾸는 방식입니다. 입력된 문자열의 길이가 다르지만, 해시알고리즘으로 변경된 문자열의 길이는 6개로 고정되어 있습니다. 해시함수를 어떻게 쓰는지 알아보겠습니다. 먼저 crypto의 method와 property에 대해서 알아보겠습니다. - createHash(algorithm[,options]): 사용할 해시 알고리즘을 입력합니다. md5, , sha256, sha512등이 가능합니다. crypto란?javascript에서 해시 함수를 통한 암호화를 할 수 있도록 해주는 Node.js 패키지 해시함수란? / 블록체인 내부의 해시함수[프로그래밍] 블록체인이란? 블록체인이란? 정보가 담긴 블록을 체인형태로 묶은 것으로, 여러명의 사람들이 하나의 데이터를 나눠서 저장하는 기술 블록체인의 필요성 하나의 컴퓨터가 해킹당해 정보가 조작되었더라도, defineall.tistory.com crypto의 필요성node.js 앱에서, 중요한 정보를 암호화 해, 안전하게 보호 할 수 있다 crypto 설치
암호화 방법
암호화 사용법
cryto 사용법
해커의 레인보우 테이블 방지하기 위한 salt 생성
* 동기 방식과 버퍼 / defineall.tistory.com/648* 레인 보우 테이블 / https://defineall.tistory.com/1011대칭형 암호화
대칭형 암호화 방식 사용 |