DarkHC 发表于 2021-11-27 15:18

关于DES加密可以采用一或三个Key的问题

本帖最后由 DarkHC 于 2021-11-29 11:43 编辑

最近在逆向一个App, 发现其采用了DES加密类, 但是它传入了三个Key值, 正常DES加密是采用8个字节的字符串座位密钥, 但是它采用三个Key让我很迷茫

然后经过搜索发现有与其一模一样的加密程序 , 分为Java和Js版本.

我的问题是如何才能以Python的代码(使用加密库)写出相同的加密效果.

DesUtils.encode('admin', '1,2,3')

js文件链接https://github.com/thinkgem/jeesite4/blob/42a572fca92dceb2f4bcfd31301eeca52e997ce7/common/src/main/resources/static/common/des.js#L36

DarkHC 发表于 2021-11-27 15:19

DES加密js链接 https://github.com/thinkgem/jeesite4/blob/42a572fca92dceb2f4bcfd31301eeca52e997ce7/common/src/main/resources/static/common/des.js

平淡最真 发表于 2021-11-27 16:16

def hahaha(a,b,c):
    return a
可以多给参数,不用就行

黑龍 发表于 2021-11-27 16:17

你这明明是2个参数啊

无闻无问 发表于 2021-11-27 17:06

本帖最后由 无闻无问 于 2021-11-27 17:08 编辑

正常啊,一个明文,密码,向量或模式三个嘛

machenglin 发表于 2021-11-27 18:41

heng179 发表于 2021-11-27 18:51

DarkHC 发表于 2021-11-29 11:28

本帖最后由 DarkHC 于 2021-11-29 11:40 编辑

平淡最真 发表于 2021-11-27 16:16
def hahaha(a,b,c):
    return a
可以多给参数,不用就行
不是那么简单 你看看源码
正常的DES采用的也是64位的密钥 这个可以传最多三个64位(传入1-4个字节的Key会利用getKeyBytes转成64位的Key)的密钥, 然后进行加密

DarkHC 发表于 2021-11-29 11:29

黑龍 发表于 2021-11-27 16:17
你这明明是2个参数啊

{:1_907:}源码太长 我没法全贴出来 里面的key 是要以逗号分隔的

DarkHC 发表于 2021-11-29 11:30

无闻无问 发表于 2021-11-27 17:06
正常啊,一个明文,密码,向量或模式三个嘛
不是你看看源码 不是这三个参数
页: [1] 2
查看完整版本: 关于DES加密可以采用一或三个Key的问题