• Q&A
  • 회원가입
  • 로그인

[module] Node.js - crypto 모듈 - OpenSSL 암호화 기능을 처리.

3  

crypto 모듈 예제

[예제1] hz 문자를 암호화.

 

var crypto = require('crypto');


var mykey = crypto.createCipher('aes-128-cbc', 'mypassword');

var mystr = mykey.update('hz', 'utf8', 'hex')

mystr += mykey.final('hex');


console.log(mystr); // f050e627bcd78e37ed8f35355bfb1d15

 

결과값:

f050e627bcd78e37ed8f35355bfb1d15

(node:8344) [DEP0106] DeprecationWarning: crypto.createCipher is deprecated.

(Use `node --trace-deprecation ...` to show where the warning was created)


[예제2] 암호화 된 문자를 다시 hz 문자로 복원.

 

var crypto = require('crypto');


var mykey = crypto.createDecipher('aes-128-cbc', 'mypassword');

var mystr = mykey.update('f050e627bcd78e37ed8f35355bfb1d15', 'hex', 'utf8')

mystr += mykey.final('utf8');

 

console.log(mystr); //hz

 

결과값:

hz

(node:8436) [DEP0106] DeprecationWarning: crypto.createDecipher is deprecated.

(Use `node --trace-deprecation ...` to show where the warning was created)

 

crypto 모듈 정의

 

암호화 된 데이터를 처리하는 방법 제공.

 

 

crypto 모듈 구문

 

var crypto = require('crypto');

 

 

crypto 모듈 속성・메서드

 

constants

암호화 상수를 포함하는 객체를 반환.

 

fips

FIPS 암호화 공급자가 사용 중인지 확인.

 

createCipher()

폐기 예고. 특정 알고리즘 및 암호를 사용하여 Cipher 객체를 생성.

 

createCipheriv()

특정 알고리즘, 암호 및 초기화 벡터를 사용하여 Cipher 객체를 생성.

 

createDecipher()

폐기 예고. 특정 알고리즘 및 암호를 사용하여 Decipher 객체를 생성.

 

createDecipheriv()

특정 알고리즘, 암호 및 초기화 벡터를 사용하여 Decipher 객체를 생성.

 

createDiffieHellman()

DiffieHellman 키 교환 객체를 생성.

 

createECDH()

타원 곡선 Diffie Hellmann 키 교환 개체를 생성.

 

createHash()

지정된 알고리즘을 사용하여 Hash 객체를 생성.

 

createHmac()

지정된 알고리즘과 키를 사용하여 Hmac 객체를 생성.

 

createSign()

지정된 알고리즘과 키를 사용하여 Sign 객체를 생성.

 

createVerify()

지정된 알고리즘을 사용하여 Verify 객체를 생성.

 

getCiphers

지원되는 암호 알고리즘의 배열을 반환.

 

getCurves()

지원되는 타원 곡선의 배열을 반환.

 

getDiffieHellman()

미리 정의 된 Diffie Hellman 키 교환 객체를 반환.

 

getHashes()

지원되는 해시 알고리즘의 배열을 반환.

 

pbkdf2()

암호 기반 키 파생 함수 2 구현을 생성.

 

pbkdf2Sync()

동기 암호 기반 키 파생 함수 2 구현을 생성.

 

privateDecrypt()

개인 키를 사용하여 데이터를 해독.

 

timingSafeEqual()

두 버퍼를 비교하고 같으면 true 반환. 그렇지 않으면 false 반환.

 

privateEncrypt()

개인 키를 사용하여 데이터를 암호화.

 

publicDecrypt()

공개 키를 사용하여 데이터를 해독.

 

publicEncrypt()

공개 키를 사용하여 데이터를 암호화.

 

randomBytes()

임의의 데이터를 생성.

 

setEngine()

일부 또는 모든 OpenSSL 함수에 대한 엔진을 설정.

 

 


방문자 수

오늘 1,153
어제 2,320
최대 2,397
이달 41,464
전체 989,210
Since 2012