Encryption Erlang crypto:stream_init在32&;64位系统。如何使用?

Encryption Erlang crypto:stream_init在32&;64位系统。如何使用?,encryption,cryptography,erlang,Encryption,Cryptography,Erlang,当使用crypto:stream_init(rc4,String)时,我得到了不同的密钥。在32位erlang和64位erlang上 我需要在其中一个上使用crypto:stream\u encrypt(),在另一个上使用crypto:stream\u decrypt()。有什么办法让它工作吗 谢谢加密:stream_init()返回一个状态,而不是密钥,并且它的二进制表示形式在32位和64位体系结构上看起来会有所不同 加密/解密操作仍然可以工作,因为它们依赖于底层的OpenSSL实现 作为加密

当使用crypto:stream_init(rc4,String)时,我得到了不同的密钥。在32位erlang和64位erlang上

我需要在其中一个上使用crypto:stream\u encrypt(),在另一个上使用crypto:stream\u decrypt()。有什么办法让它工作吗

谢谢

加密:stream_init()
返回一个
状态
,而不是密钥,并且它的二进制表示形式在32位和64位体系结构上看起来会有所不同

加密/解密操作仍然可以工作,因为它们依赖于底层的OpenSSL实现

作为加密的一个示例:

State = crypto:stream_init(rc4, "SecretKey").
{Newstate, Secret} = crypto:stream_encrypt(State, "SecretMessage").
和解密:

State = crypto:stream_init(rc4, "SecretKey"),
{Newstate, Message} = crypto:stream_decrypt(State, Secret),
Message = "SecretMessage".

i、 e.解密操作应返回使用密钥加密的相同的
SecretMessage
,谢谢,它确实有效。我第一次测试的时候一定是做错了什么。