首页 > 编程 > Python > 正文

python的Crypto模块实现AES加密实例代码

2020-01-04 16:03:03
字体:
来源:转载
供稿:网友

本文主要探索的是python/136994.html">python/82423.html">python的Crypto模块实现AES加密,分享了具体实现代码,下面看看具体内容。

学了使用Crypto模块的AES来加密文件,现在记录下来便于后边儿查看。

在刚开始知道这个模块的时候,连基本的Crypto模块的安装都花了很多很多时间来搞,也不知道什么情况反正是折腾很久了才安装起的,记得是包安装起来了,但使用的时候始终提示找不到Crypto.Cipher模块。然后怎么解决的呢?

一、把我的python换成了64位的,本来电脑就是64位的也不知道之前是啥情况安装成32位的了。(O(∩_∩)O哈哈~)
二、安装了VCForPython27.msi
三、在cmd中执行:

pip install pycrypto -i http://mirrors.aliyun.com/pypi/simple/

经过上边儿的几个步骤,我是能够成功执行

from Crypto.Cipher import AES

现在上一个实例代码:

# !/usr/bin/env python# coding: utf-8''''''from Crypto.Cipher import AESfrom binascii import b2a_hex, a2b_hexclass MyCrypt():  def __init__(self, key):    self.key = key    self.mode = AES.MODE_CBC  def myencrypt(self, text):    length = 16    count = len(text)    print count    if count < length:      add = length - count      text= text + ('/0' * add)    elif count > length:      add = (length -(count % length))      text= text + ('/0' * add)    # print len(text)    cryptor = AES.new(self.key, self.mode, b'0000000000000000')    self.ciphertext = cryptor.encrypt(text)    return b2a_hex(self.ciphertext)  def mydecrypt(self, text):    cryptor = AES.new(self.key, self.mode, b'0000000000000000')    plain_text = cryptor.decrypt(a2b_hex(text))    return plain_text.rstrip('/0')if __name__ == '__main__':  mycrypt = MyCrypt('abcdefghjklmnopq')  e = mycrypt.myencrypt('hello,world!')  d = mycrypt.mydecrypt(e)  print e  print d

在cmd中执行结果:

python,crypto,aes,python3,crypto模块,aes模块

总结

以上就是本文关于python的Crypto模块实现AES加密实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!


注:相关教程知识阅读请移步到python教程频道。
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表