加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

在“普通”perl中模拟openssl rc4-40

发布时间:2020-12-16 06:13:28 所属栏目:大数据 来源:网络整理
导读:虽然我怀疑这只是我的密集,但我已经尝试了几个小时没有太多运气. 首先是设置,所以你不会试着说出来. :P我有一个对其openssl lib有限制的盒子,这样它就不会像40位那样低加密rc4.我有一个使用rc4-40的遗留功能,我不能自由地将加密升级到更难的位,因为它与其他
虽然我怀疑这只是我的密集,但我已经尝试了几个小时没有太多运气.

首先是设置,所以你不会试着说出来. :P我有一个对其openssl lib有限制的盒子,这样它就不会像40位那样低加密rc4.我有一个使用rc4-40的遗留功能,我不能自由地将加密升级到更难的位,因为它与其他我无法控制或权限的软件对话.

因此,约束到40位RC4并且不能使用openssl.任何不会回到openssl的XS / perl都应该很棒.我一直在玩几个模块,但没有任何工作开箱即用,我不擅长这种事情所以无法看到如何修改/ monkey-patch / fork自己的键/位处理代码.

该代码目前正在这样做 –

echo -ne "OHAI" |  openssl rc4-40 -d -nosalt -k  KeyPhrase0123456 | xxd
0000000: cbf7 71b2                                ..q.

Na?ve刺伤替换它是由FAIL-

perl -MCrypt::RC4 -e 'print RC4("KeyPhrase0123456","OHAI")' | xxd
0000000: bc14 808b                                ....

所以我需要一些版本的perl代码来匹配openssl调用.我一直在尝试一切合理的(cf,而不是基于openssl),我可以在CPAN上找到,包括Crypt::RC4(::XS)和Net::SSH::Perl::Cipher::RC4.谷歌在Authen::SASL引导我看到一些明显相关和改编的代码 – 它太混乱了它似乎支持使用rc4-40进行身份验证.虽然看起来很有希望,但我没有尝试Crypt::GCrypt,我看不出正确的用法.阻碍.

这 – RC4 doesn’t work correctly with openssl command?
? – 正在启发,但最终没有帮助我处理或设置键/短语.

谢谢你的期待!

更新:在FIPS mode阅读了一下之后,我认为Crypt :: GCrypt也将无法运行,即使我知道是否正确的调用.

解决方法

echo -ne "OHAI" |  openssl rc4-40 -d  -nosalt -k KeyPhrase0123456 | xxd
0000000: cbf7 71b2                                ..q.

perl -MCrypt::RC4 -MDigest::MD5 -e 'print RC4(substr(Digest::MD5::md5("KeyPhrase0123456"),5),"OHAI")' | xxd
0000000: cbf7 71b2                                ..q.

substr(Digest::MD5::md5("KeyPhrase0123456"),5) - 5*8=40bit

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读