当前位置: 首页 > 后端技术 > Python

python加密解密

时间:2023-03-26 11:55:38 Python

MD5  importhashlib  c=raw_input('输入字符:')#python3是输入b=hashlib.md5()  b.update(c.encode(encoding='utf-8'))  print('MD5加密前:'+c)  print('MD5加密后:'+b.hexdigest())Base64  importbase64base64加密打印base64.b64encode("aaa")#base64加密  printbase64.b64decode("YWFh")Base32  importbase64  printbase32.b32encode('aa')#base32加密  printbase32.b32decode('MFQWC===')#base64解密SHA1importhashliba=raw_input('请输入要加密的字符:')b=hashlib.sha1()b.update(a.encode(encoding='utf-8'))print('SHA1加密前:'+a)print('SHA1加密后:'+b.hexdigest())特别说明:        SHA1和MD5都是摘要算法,也是不可逆算法;        从应用的角度来看,适用性比安全性更重要。两种算法的长度不同,SHA-1是160位,MD5是128位。凯撒解密     a="ci^dxebiile^`hbozs"//使用凯撒加密字符 foriina:          print(chr(ord(i)+3),end="")//chr函数:chr()以(256)(即0到255)范围内的整数为参数,返回对应的字符。                       //ord函数:ord()函数是chr()函数(针对8位ASCII字符串)或unichr()函数(针对Unicode对象)的配对函数,它取一个字符(一个字符以长度为1)String)为参数,返回对应的ASCII值,或Unicode值                      //因为我们知道偏移量为3,所有+3end=""是为了字符在一行.如果您不添加它,它将是每行一个字符。        二进制转换ASCIIimportbinasciia=int('011011110011100001000100011011000111100001001011001010110100100000111000011101110111001101101001010110000110010100101111010001010101001001000110011100000100000101001101011000010100001001010000011010010100100101100011011010100011000101110011010010000111100101000111010011110100110101101101010100010100010001101011010010110010101101110101010110000111001101010110010110100110011101110010011001010011010101000100010100110101100001110111001111010011110101101000011010000110100001101000011010000110100001101000011010000110100001101000011010000110100001101000011010000110100001101000',2)print(a.to_bytes((a.bit_length()+7)//8,'big').decode())ASCII转换二进制importbinasciia=bin(int.from_bytes('hello'.encode(),'big'))print(a)更多技术资料请关注:gzitcast