使用crypt-js的Angular 7 AES加密密码

时间:2018-12-18 15:23:23

标签: c# angular typescript cryptojs

我正在尝试使用AES技术对密码进行加密,并将其发送到在.net上开发的api。我面临的问题是我遇到了错误:

我正在使用Crypto-JS类型的版本:Crypto-JS Doc

  

填充无效,无法删除。

我的打字稿代码是:

let encrypted = CryptoJS.AES.encrypt('Coll@123', '16ad55fd-598b-45d7-a371-a1e011ec1345', {iv: '6fcc45cc3a8a4764'}).ciphertext.toString();
console.log("Encrypted: ", encrypted);
let decrypted = CryptoJS.AES.decrypt(encrypted, "16ad55fd-598b-45d7-a371-a1e011ec1345", {iv: '6fcc45cc3a8a4764'}).toString(CryptoJS.enc.Base64)
console.log("Decrypted: ", decrypted);

我的.net代码是:

public static string encrypt(string encryptString, string EncryptionKey)
{
    Cryptography cript = new Cryptography();
    string ivString = AppConstants.EncryptionKey_IV_Default; //16 character IV
    string key = cript.getHashSha256(EncryptionKey, 32);
    string cipherText = cript.Encrypt(encryptString, key, ivString);
    return cipherText;
}

注意:我尚未开发使用其他API的.net代码。

请帮助我不知道我在做什么错。这里有我想念的东西吗?

0 个答案:

没有答案