我正在实施与银行系统的互动。我需要在ECB模式下使用DES schipher。
我的密钥是“12345678”,消息是[0xF2, 0xF3, 0x2D, 0x1A, 0xC0, 0xFD, 0x23, 0xB4]
十六进制。我需要将密钥转换为十六进制数组,然后在ecb模式下执行sha加密。结果应为[0x3E, 0x90, 0x5F, 0xB7, 0xC5, 0xA3, 0x02, 0xB1]
我正在使用
OpenSSL::Cipher::Cipher.new("des-ecb")
,是吗?获得满意结果的最佳方法是什么。
我尝试了很多方法而且迷路了。谢谢你救我:)
答案 0 :(得分:1)
正确的方法是如何进行编码:
cipher = OpenSSL::Cipher::Cipher.new("des-ecb")
cipher.encrypt
cipher.key = key
output = cipher.update hash
以前,我使用了cipher.final