一個python自定義的加密解密函數
一個python自定義的加密解密函數,下面的代碼實現了對字符串的加密盒解密,調用簡單
def encrypt(key, s):
b = bytearray(str(s).encode("gbk"))
n = len(b) # 求出 b 的字節數
c = bytearray(n2)
j = 0
for i in range(0, n):
b1 = b[i]
b2 = b1 ^ key # b1 = b2^ key
c1 = b2 % 16
c2 = b2 // 16 # b2 = c216 + 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 </pre>
本文由用戶 pythopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!