개발스터디일지

[TypeScript - node.js] crypto.createHash().update().digest() 본문

프론트엔드/TypeScript

[TypeScript - node.js] crypto.createHash().update().digest()

autumn_k 2022. 10. 4. 16:04

crypto 란?

데이터를 데이터베이스에 저장하기위해 암호화하는 모듈이다.

 

해쉬는 일련의 문자를 암호화하기 위해 고유의 사람이 외우기 어려운 모양으로 만들어준다.

이렇게 만들어진 모양은 다시 기존의 일련의 문자로 돌아갈 수 없다.

 

 

일련의 문자 = 망고
해쉬 = 망고 주스

 

해쉬는 단방향이다.

일련의 문자(망고)는 해쉬(망고 주스)가 될 수 있지만, 해쉬(망고 주스)는 일련의 문자(망고)가 될 수 없다.

 

 

.createHash()

.createHash()는 해쉬를 생성해주는 함수이다. 

매개변수로 해싱 알고리즘이 들어오는데, 대표적으로 'sha256', 'sha512'이 있다. 예시) crypto.createHash('sha256')

*해싱 알고리즘: 데이터를 최종 사용자가 원문을 추정하기 힘든 더 작고, 뒤섞인 조각으로 나누는 것

 

 

.update()

.update()는 암호데이터를 업데이트해준다. 예시) crypto.createHash('sha256').update('내가정한암호')

 

 

.digest()

해쉬를 어떻게 표기할지 해쉬 표기법을 정하는 함수이다.

base64, hex와 같은 인코딩방식의 매개변수를 넣어준다. 

예시) crypto.createHash('sha256').update('내가정한암호').digest('hex')