zl程序教程

您现在的位置是:首页 >  后端

当前栏目

一个python自定义的加密解密函数详解编程语言

Python加密解密编程语言 详解 函数 一个 自定义
2023-06-13 09:20:23 时间

一个python自定义的加密解密函数,下面的代码实现了对字符串的加密盒解密,调用简单

def encrypt(key, s): 

 b = bytearray(str(s).encode("gbk")) 

 n = len(b) # 求出 b 的字节数 

 c = bytearray(n*2) 

 j = 0 

 for i in range(0, n): 

 b1 = b[i] 

 b2 = b1 ^ key # b1 = b2^ key 

 c1 = b2 % 16 

 c2 = b2 // 16 # b2 = c2*16 + c1 

 c1 = c1 + 65 

 c2 = c2 + 65 # c1,c2都是0~15之间的数,加上65就变成了A-P 的字符的编码 

 c[j] = c1 

 c[j+1] = c2 

 j = j+2 

 return c.decode("gbk") 

def decrypt(key, s): 

 c = bytearray(str(s).encode("gbk")) 

 n = len(c) # 计算 b 的字节数 

 if n % 2 != 0 : 

 return "" 

 n = n // 2 

 b = bytearray(n) 

 j = 0 

 for i in range(0, n): 

 c1 = c[j] 

 c2 = c[j+1] 

 j = j+2 

 c1 = c1 - 65 

 c2 = c2 - 65 

 b2 = c2*16 + c1 

 b1 = b2^ key 

 b[i]= b1 

 try: 

 return b.decode("gbk") 

 except: 

 return "failed" 

key = 15 

s1 = encrypt(key, hello world) 

s2 = decrypt(key, s1) 

print s1,/n,s2 

# HGKGDGDGAGPCIHAGNHDGLG 

# hello world 

8043.html

cjavapython