一個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 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!