我正在实现与银行系统的交互。我需要在ECB模式下使用DES schipher。
我的密钥是"12345678“,消息是十六进制的[0xF2, 0xF3, 0x2D, 0x1A, 0xC0, 0xFD, 0x23, 0xB4]。我需要将key转换成十六进制数组,然后在ecb模式下执行sha加密。结果应为[0x3E, 0x90, 0x5F, 0xB7, 0xC5, 0xA3, 0x02, 0xB1]
我正在使用
OpenSSL::Cipher::Cipher.new("des-ecb"),对吗?获得满意结果的最好方法是什么?
我试了很多方法,但都迷路了。感谢您救了我:)
发布于 2011-07-04 15:41:55
正确的编码方式是:
cipher = OpenSSL::Cipher::Cipher.new("des-ecb")
cipher.encrypt
cipher.key = key
output = cipher.update hash以前,我使用过cipher.final的输出
https://stackoverflow.com/questions/6563391
复制相似问题