- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 오늘도 개발자가 안된다고 말했다
- react
- TMIL
- mongodb
- 리팩터링 2판
- Err-Handling
- typescript
- LEVEL1
- javascript
- 배포
- 에러핸들링
- CSS
- 프로그래머스
- sql
- MariaDB
- java
- CRUD
- LEVEL 1
- LEVEL 2
- 코딩테스트
- Git
- TWIL
- 면접을 위한 cs 전공지식 노트
- Docker
- TIL
- 아고라스테이츠
- 코어 자바스크립트
- Refactoring
- First Project
- 알고리즘
Archives
성장에 목마른 코린이
[Node.js] CryptoJS (설치, 암호화 방식, 사용) 본문
728x90
CryptoJS
Javascript에서 해시 함수를 통해 여러가지 정보(ex. 비밀번호)를 안전하게 암호화를 할 수 있도록 해주는 Node.js 패키지입니다.
CryptoJS 설치
npm i -d crypto-js
npm i --save-dev @types/crypto-js
CryptoJS 암호화 방식
- 대칭키 (Symmetric Encryption) : 암호화 - 복호화 할 때 같은 키값을 이용
- 비대칭키 (Asymmetric Encryption) : 암호화 - 복호화 할 때 다른 키값을 이용
- 해싱 (hashing) : 단방향으로 암호화만 가능하고 복호화 할 수 없다. 비밀번호 등에 이용.
알고리즘 | 종류 | 비고 |
---|---|---|
대칭키 | DES, 3-DES, AES(128bit, 256bit), SEED, ARIA | AES가 가장 보편적으로 이용 |
비대칭키 | RSA, ECC, DSS | |
해싱 | MD5, SHA-0, SHA-1, SHA-2 |
CryptoJS 사용
// crypto-js 모듈 불러오기
import crypto-js from 'crypto-js'
// 암호화 할 데이터
const data = {
username:'Jinho Kim',
age: 25
};
// 복호화 키 지정
const privateKey = 'secret key';
// AES알고리즘 사용 암호화
const encrypted = CryptoJS.AES.encrypt(JSON.stringify(data), secretKey).toString();
// AES알고리즘 사용 복호화 ( 복구 키 필요 )
const bytes = CryptoJS.AES.decrypt(encrypted, secretKey);
// 인코딩, 문자열로 변환, JSON 변환
const decrypted = JSON.parse(bytes.toString(CryptoJS.enc.Utf8));
'Javascript > Node.js' 카테고리의 다른 글
[Node.js] Babel을 통해 ES5 -> ES6 사용하기 with nodemon (0) | 2022.11.23 |
---|---|
[Node.js] 프로젝트 시작 기본 세팅 (0) | 2022.11.23 |
[Node.js] PM2 소개, 사용이유 및 사용법 (0) | 2022.11.03 |
Comments