Code/JavaScript

[javascript] crypto-js , 암호화 라이브러리

codens 2021. 2. 27. 01:47

    - 자바스크립트 암호화 라이브러리



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



반응형