Tag: rijndael

Ruby中的Rijndael AES-128加密解密

我想在ruby中使用rijndael aes128进行加密。 我有这个代码: cipher = OpenSSL::Cipher::Cipher.new(“aes-128-cbc”) cipher.encrypt cipher.key = ‘abcdef0123456789abcdef0123456789’ cipher.iv = ‘0000000000000000’ encrypted = cipher.update(‘2~1~000024~0910~20130723092446~T~00002000~USD~F~375019001012120~0~0~00000000000~’) encrypted << cipher.final 这是行不通的。 但是使用这个PHP函数: <?php function hex2bin($hex_string) { return pack('H*', $hex_string); } $data_to_encrypt = '2~1~000024~0910~20130723092446~T~00002000~USD~F~375019001012120~0~0~00000000000~'; $key = 'abcdef0123456789abcdef0123456789'; $iv = '0000000000000000'; $key = hex2bin($key); $iv = hex2bin($iv); $data_encrypted = bin2hex(mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $key, $data_to_encrypt, MCRYPT_MODE_CBC, $iv)); echo "Data encrypted: ".strtoupper($data_encrypted)."”; […]

如何解码ruby中的Rijndael(用VB.net编码)

我正在使用Rinjael在VB.NET中进行编码,需要在Ruby中进行解码。 我的VB.NET加密类看起来像这样: Private Class Encryptor Private symmetricKey As System.Security.Cryptography.RijndaelManaged Private iVector As Byte() Private Key As Byte() Public Function encrypt(ByVal data As String) As String Try Dim plainTextBytes As Byte() = System.Text.Encoding.ASCII.GetBytes(data) Dim encryptor As System.Security.Cryptography.ICryptoTransform = symmetricKey.CreateEncryptor(Key, iVector) Dim memoryStream As New System.IO.MemoryStream Dim cryptoStream As System.Security.Cryptography.CryptoStream = New System.Security.Cryptography.CryptoStream(memoryStream, encryptor, System.Security.Cryptography.CryptoStreamMode.Write) cryptoStream.Write(plainTextBytes, 0, […]