|
发表于 2021-1-27 11:11:50
|
显示全部楼层
本楼为最佳答案
本帖最后由 jackz007 于 2021-1-27 11:33 编辑
- #include <stdio.h>
- int main(void)
- {
- char s[] = "中国" ;
- int i ;
- for(i = 0 ; s[i] ; i ++) s[i] ^= 255 ;
- printf("加密后: 【%s】\n" , s) ;
- for(i = 0 ; s[i] ; i ++) s[i] ^= 255 ;
- printf("解密后: 【%s】\n" , s) ;
- }
复制代码
Python
- a = "中国" . encode('gbk') # 下面开始加密,得到 "中国" 的 GBK 编码字节数据 a
- b = [i ^ 255 for i in a] # 将 a 逐字节异或 255,得到列表 b
- c = bytes(b) # 将 b 转化为字节数据形式 c,c 就是密文形式的中文字符数据
- d = [i ^ 255 for i in c] # 下面开始解密,将 c 逐字节异或 255,得到列表 d
- e = bytes(d) # 将 d 转化为字节数据形式 e(e 与 a 相等)。
- f = e . decode('gbk') # 对 e 按 'GBK' 解码,得到 unicode 形式的字符串 '中国' f
- print(f)
复制代码 |
|