[javascript] crypto-js , 암호화 라이브러리
- 자바스크립트 암호화 라이브러리
https://github.com/brix/crypto-js - 10.7k
- v4.0.0 , 2020/02
- 매뉴얼
https://cryptojs.gitbook.io/docs/#hashing
//---------------
* 암호 모듈
- HMAC (Hash-based Message Authentication Code )
HmacMD5
var hash = CryptoJS.HmacMD5(message, password).toString()
HmacRIPEMD160
HmacSHA1
HmacSHA3
HmacSHA224
HmacSHA256
HmacSHA384
HmacSHA512
- hash
MD5
SHA1
SHA3
SHA224
SHA256
SHA384
SHA512
RIPEMD160
EvpKDF
PBKDF2
//-----------------------------
- 복원가능 (encrypt, decrypt )
AES ,
var encrypted = CryptoJS.AES.encrypt("Message", "Secret Passphrase").toString();
var decrypted = CryptoJS.AES.decrypt(encrypted, "Secret Passphrase").toString(CryptoJS.enc.Utf8);
DES ,
RC4 ,
RC4Drop ,
Rabbit ,
RabbitLegacy ,
TripleDES ,
//--------------------
* 복원 가능 알고리즘 - 실행 시간(속도) 측정 비교 (5000 loop)
XOR : 474 , 초당 10,548
Rabbit : 1245 , 초당 4,016
RabbitLegacy : 1234 , 초당 4,051
RC4 : 1259 , 초당 3,971
RC4Drop : 1342 , 초당 3,725
AES : 1647 , 초당 3,035
DES : 3798 , 초당 1,316
TripleDES : DES의 2배 이상 (느림)
//----------------------
* 인코더
Hex, Base64, Latin1 , Utf8 , Utf16, Utf16LE
- 사용예
CryptoJS.HmacMD5(message, password).toString( CryptoJS.enc.Utf8 )
//-------------------------
- 예제
https://asecuritysite.com/encryption/js_cry