这里有新鲜出炉的 Python 入门,程序狗速度看过来!
Python 是一种面向对象、解释型计算机程序设计语言,由 Guido van Rossum 于 1989 年底发明,第一个公开发行版发行于 1991 年。Python 语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制作的各种模块(尤其是 C/C++)很轻松地联结在一起。
这篇文章主要介绍了 Python 使用 PyCrypto 实现 AES 加密功能, 结合具体实例形式分析了 PyCrypto 实现 AES 加密的操作步骤与相关实现技巧, 需要的朋友可以参考下
本文实例讲述了 Python 使用 PyCrypto 实现 AES 加密功能。分享给大家供大家参考,具体如下:
- # ! /usr/bin / env python from Crypto.Cipher import AES import base64 import os#the block size
- for the cipher object;
- must be 16,
- 24,
- or 32
- for AES BLOCK_SIZE = 32#the character used
- for padding--with a block cipher such as AES,
- the value#you encrypt must be a multiple of BLOCK_SIZE in length.This character is#used to ensure that your value is always a multiple of BLOCK_SIZE PADDING = '{'#one - liner to sufficiently pad the text to be encrypted pad = lambda s: s + (BLOCK_SIZE - len(s) % BLOCK_SIZE) * PADDING#one - liners to encrypt / encode and decrypt / decode a string#encrypt with AES,
- encode with base64 EncodeAES = lambda c,
- s: base64.b64encode(c.encrypt(pad(s))) DecodeAES = lambda c,
- e: c.decrypt(base64.b64decode(e)).rstrip(PADDING)#generate a random secret key secret = os.urandom(BLOCK_SIZE)#create a cipher object using the random secret cipher = AES.new(secret)#encode a string encoded = EncodeAES(cipher, 'password') print 'Encrypted string:',
- encoded#decode the encoded string decoded = DecodeAES(cipher, encoded) print 'Decrypted string:',
- decoded
PS:关于加密解密感兴趣的朋友还可以参考本站在线工具:
希望本文所述对大家 Python 程序设计有所帮助。
来源: http://www.phperz.com/article/17/0715/335739.html