2016-10-16 2 views
0

내가이 코드는 JS가 C#을 AES에 AES (또는 Node.js를, 나는 지금 확신)이 :포팅 JS

d = CryptoJS.AES.decrypt((t), CryptoJS.MD5(key), { 
    mode: CryptoJS.mode.ECB, 
    padding: CryptoJS.pad.Pkcs7, 
    keySize: 4 
}).toString(CryptoJS.enc.Utf8); 

나는 C#에서 keySize = 4을 설정할 수있는 방법을 모르는

예외를 일으키는 keySize = 4 설정 I는 WordArray라는 데이터 구조의 C#

답변

0

CryptoJS 저장 모든 데이터 포트 JS 코드가 필요하다. 각 "단어"는 32 비트 (4 바이트)를 저장합니다. CryptoJS에서 4의 키 크기는 128 비트 또는 16 바이트의 키 크기를 의미합니다.

API는 일반적으로 다르게 쓰여지고 대부분의 프로그래밍 언어에서 같은 방식으로 동일한 데이터를 나타내는 동일한 객체를 가지고 있지 않습니다.

C#은 바이트 배열과 함께 작동합니다. 따라서 16 바이트의 키를 만들어야합니다. MD5는 항상 128 비트 출력 (16 바이트)을 생성하므로 특별한 작업을 수행하지 않아도됩니다.