Зашифруйте в Ruby и расшифруйте в Javascript - PullRequest
0 голосов
/ 24 сентября 2019

Я пытаюсь зашифровать с помощью Ruby openssl и расшифровать с помощью crypto в javascript, но я получаю UTF-8 искаженную ошибку.Пожалуйста, помогите.

      # contents is some object with key and value
      contents = contents.to_s;
      cipher = OpenSSL::Cipher::AES128.new :CBC;
      cipher.encrypt;
      # Random Key and IV
      cipher.key = "AE08BF965F95A75A8AAB8C79CEFF4CB5";
      cipher.iv = "7E5ADDF765E56F564FB4E50B3115BAC3";
      encrypted = cipher.update(contents) + cipher.final;
      # Converting into Base64 for more readable format.
      encrypted =  Base64.strict_encode64(encrypted);
      return {
        config: encrypted
      }.to_json

Javascript Code

    var data = data.config;
    var decryptedData = data && CryptoJS && CryptoJS.AES && CryptoJS.enc && CryptoJS.AES.decrypt(data, CryptoJS.enc.Hex.parse(key), {
      iv: CryptoJS.enc.Hex.parse(iv)
    });
    decryptedStr = decryptedData && decryptedData.toString(CryptoJS.enc.Utf8);
...