2025年python处理c MD5Hleper.MD5Encrypt以及类的序列化

python处理c MD5Hleper.MD5Encrypt以及类的序列化1 python 处理 c MD5Hleper MD5Encryp 在之前碰到了 c 进行 MD5 加面的代码 发现携带者秘钥 但是查找之后发现 MD5 加密不涉及秘钥 后来才发现 c MD5Hleper MD5Encryp 里面用的是 DES 加密 在 python 如果要处理的话代码如下 首先要安装 pyDes 模块

大家好,我是讯享网,很高兴认识大家。

1.python处理c# MD5Hleper.MD5Encryp

# pyDes.des(key,[mode],[IV],[pad],[padmode]) # 加密密钥的字节、加密类型、偏移量(可选参数用来设置填充字符)、设置填充模式 # key-> 包含加密密钥的字节。DES 8个字节,16或24个字节用于三重DES; # mode-> 加密类型的可选参数,可以是pyDes.ECB(电子密码簿)或pyDes.CBC(密码块链接) # 如果使用CBC模式,则必须提供IV->可选的初始值字节。长度必须为8个字节; #pad-> 可选参数,设置填充字符(PAD_NORMAL)以在使用此实例完成的所有加密/解密操作; padmode-> 可选参数,设置填充模式(PAD_NORMAL或PAD_PKCS5)在对此实例执行的所有加密/解密操作期间使用; text = "" k = pyDes.des("ABCDEFGH", pyDes.CBC, "ABCDEFGH", pad=None, padmode=pyDes.PAD_PKCS5) d = k.encrypt(text.encode('utf-8')) dex_text = binascii.b2a_hex(d) # 其中"ABCDEFGH"是秘钥,秘钥为8位,这里的偏移量我也设置为秘钥 

讯享网

2.python的类的json序列化

在c#里面用到了序列化的类, JsonConvert.JsonSerializer本想在python中创建个类进行序列化,发现并不行。python进行类json序列化可以通过下面两种方式:

(1)json-serializer库

json-serializer的库可以直接对于类进行序列化,具体代码如下:


讯享网

讯享网from json_serializer.Serializer import Serializer class Car(object): mark = None model = None year = None color = None if __name__ == "__main__": CAR = Car() CAR.mark = 'FORD' CAR.model = 'MUSTANG' CAR.year = 2016 CAR.color = 'BLACK' # 序列化 serializer = Serializer([Car]) string1 = serializer.serialize(CAR) print(string1) # 反序列化 CAR = serializer.deserialize(string1) print(CAR) 

(2)字典序列化

经过serializer库发现,其实和字典序列化很像,其实不用创建类,直接使用字典的形式,然后json进行序列化结果是一样的:

import json if __name__ == "__main__": dict1 = { 
    "mark": "FORD", "model": "MUSTANG", "year": 2016, "color": "BLACK" } # 序列化 dict1 = json.dumps(dict1) print(dict1) 

这是笔者目前查python对于类序列化的两种操作形式,主要是没太接触过c#的代码,导致对于一些东西不太熟悉

小讯
上一篇 2025-03-19 19:50
下一篇 2025-03-10 09:08

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/116808.html