1. 背景
我写了一个RC4加密的程序,如下所示。
data = b"204EF6D2FB3B"
key = b'123'
# 加密(引用传递)
dll.RC4_enc_dec(data,key)
print('加密结果:',data) # b'a\xc0\x8b\xc7\xa3B@\xc9c!0\xc8'
# 解密
dll.RC4_enc_dec(data,key)
print('解密结果:',data) # b"204EF6D2FB3B"
需求:我希望将加密结果作为“注册码”来使用
问题1:这个 \x 格式的字节串太丑了。能不能变成纯16进制字符串的样式?可以
data.hex() # "61c08bc7a34240c9632130c8"
问题2:但是解密时仍需要\x格式的字节串,怎么变回去?
data = bytes.fromhex(data) # b'a\xc0\x8b\xc7\xa3B@\xc9c!0\xc8'
2. 分析
看下面这句话:
在Python中,当你打印 ( print