写作绅士,读作丧尸 X岛揭示板
顺猴者昌 逆猴者亡 首页版规 |用户系统 |移动客户端下载 | 丧尸路标 | | 常用图串及路标 | 请关注 官方公众号:【X岛揭示板】 官方微博: 【@X岛极速版】| 人,是会思考的芦苇
常用串:·豆知识·跑团板聊天室·公告汇总串·X岛路标

No.65410556 - 无标题 - 技术宅


回应模式
No.65410556
名 称
E-mail
标题
颜文字
正文
附加图片
•程序语言、压制投稿、视频制作以及各计算机领域的技术问题
•我觉得还是CSDN靠谱一点
•本版发文间隔为15秒。

收起 查看大图 向左旋转 向右旋转
无标题 无名氏 2025-03-01(六)17:25:47 ID:pNj9ofX [举报] [订阅] [只看PO] No.65410556 [回应] 管理
小白求助
有个网上的福利资源被上传者象征性加了密且放了加密方式,但我不会写解密脚本,
以下是上传者的说明文档:

第一个分卷已使用AES加密。您需要使用ECB/PCKS5Padding进行解密。解密脚本请自行编写。
密钥为字符串Hello World的32位md5小写值。
解密后文件的md5为3392f54ea7dbcd0c51a18b48411d6283
解密后正常打开7z文件,密码为字符串Hello World的sha256摘要(也是小写)
如此便可完全解压文件。


其中第一个秘钥我通过在线转换得到是b10a8db164e0754105b7a99be72e3fe5
第二个是a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e

但我卡在第一步了|д` )
要对这个文件进行解密,需要做一个怎样的东西呢?
jp
收起 查看大图 向左旋转 向右旋转
无标题 无名氏 2025-03-03(一)10:43:20 ID:B6Y12Bt [举报] No.65424702 管理
from Crypto.Cipher import AES
def decrypt_file(input_file, output_file, key):
with open(input_file, 'rb') as f:
encrypted_data = f.read()
cipher = AES.new(key, AES.MODE_ECB)
decrypted_data = cipher.decrypt(encrypted_data)
# Remove PKCS7 padding
pad_len = decrypted_data0[0,-1]
pad_len = ord(pad_len) if isinstance(pad_len, bytes) else pad_len
if 1 <= pad_len <= 16:
decrypted_data = decrypted_data[:-pad_len]
# Remove trailing zero bytes
decrypted_data = decrypted_data.rstrip(b'\x00')
with open(output_file, 'wb') as f:
f.write(decrypted_data)
if __name__ == "__main__":
input_file = 'download.7z.001.encrypted'
output_file = 'download.7z.001'
key = b'b10a8db164e0754105b7a99be72e3fe5'
decrypt_file(input_file, output_file, key)

实测成功解密
收起 查看大图 向左旋转 向右旋转
无标题 无名氏 2025-03-03(一)10:45:46 ID:B6Y12Bt [举报] No.65424731 管理
怎么缩进都没了(|||゚Д゚)
无标题 无名氏 2025-03-03(一)10:53:44 ID:B6Y12Bt [举报] No.65424787 管理
https://pan.baidu.com/s/1xLZq0tHS6Mq66i4CAzMhug?pwd=6caz
无标题 无名氏 2025-03-04(二)01:50:41 ID:pNj9ofX (PO主) [举报] No.65432160 管理
>>No.65424702
这位肥哥,为什么前面的脚本只能padding incorrect呢(`・ω・)
无标题 无名氏 2025-03-04(二)22:40:30 ID:pNj9ofX (PO主) [举报] No.65439824 管理
>>No.65424731
抄下来用了,奈斯兄弟,解开了

UP主: