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


Posted in Python onJanuary 22, 2018

本文主要探索的是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 AES
from binascii import b2a_hex, a2b_hex

class 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加密实例代码

总结

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

Python 相关文章推荐
Ubuntu 14.04+Django 1.7.1+Nginx+uwsgi部署教程
Nov 18 Python
Python的设计模式编程入门指南
Apr 02 Python
python判断windows系统是32位还是64位的方法
May 11 Python
构建Python包的五个简单准则简介
Jun 15 Python
Python中协程用法代码详解
Feb 10 Python
Selenium的使用详解
Oct 19 Python
Python按钮的响应事件详解
Mar 04 Python
python用for循环求和的方法总结
Jul 08 Python
利用PyCharm操作Github(仓库新建、更新,代码回滚)
Dec 18 Python
踩坑:pytorch中eval模式下结果远差于train模式介绍
Jun 23 Python
教你怎么用Python selenium操作浏览器对象的基础API
Jun 23 Python
Python之Matplotlib绘制热力图和面积图
Apr 13 Python
python实现求最长回文子串长度
Jan 22 #Python
Python获取本机所有网卡ip,掩码和广播地址实例代码
Jan 22 #Python
Linux CentOS7下安装python3 的方法
Jan 21 #Python
简述Python2与Python3的不同点
Jan 21 #Python
手把手教你用python抢票回家过年(代码简单)
Jan 21 #Python
分析Python中解析构建数据知识
Jan 20 #Python
学习Python selenium自动化网页抓取器
Jan 20 #Python
You might like
php数组函数序列 之array_count_values() 统计数组中所有值出现的次数函数
2011/10/29 PHP
PHP面向对象程序设计组合模式与装饰模式详解
2016/12/02 PHP
浅谈php中curl、fsockopen的应用
2016/12/10 PHP
PHP基于SimpleXML生成和解析xml的方法示例
2017/07/17 PHP
Laravel5.5 手动分页和自定义分页样式的简单实现
2019/10/15 PHP
通过jquery还原含有rowspan、colspan的table的实现方法
2012/02/10 Javascript
用Javascript实现Windows任务管理器的代码
2012/03/27 Javascript
js事件冒泡实例分享(已测试)
2013/04/23 Javascript
GRID拖拽行的实例代码
2013/07/18 Javascript
node.js操作mongodb学习小结
2015/04/25 Javascript
原生js获取元素样式的简单方法
2016/08/06 Javascript
jQuery基于BootStrap样式实现无限极地区联动
2016/08/26 Javascript
jquery实现简单的瀑布流布局
2016/12/11 Javascript
Nodejs 发送Post请求功能(发短信验证码例子)
2017/02/09 NodeJs
JavaScript实现两个select下拉框选项左移右移
2017/03/09 Javascript
JS触摸事件、手势事件详解
2017/05/04 Javascript
收藏AngularJS中最重要的核心功能
2017/07/09 Javascript
js实现简易聊天对话框
2017/08/17 Javascript
vue页面跳转后返回原页面初始位置方法
2018/02/11 Javascript
学习使用ExpressJS 4.0中的新Router的用法
2018/11/06 Javascript
vue2.0 实现富文本编辑器功能
2019/05/26 Javascript
JavaScript 实现继承的几种方式
2021/02/19 Javascript
[02:14]完美“圣”典2016风云人物:xiao8专访
2016/12/01 DOTA
python实现简单爬虫功能的示例
2016/10/24 Python
Python pass详细介绍及实例代码
2016/11/24 Python
python爬虫入门教程--正则表达式完全指南(五)
2017/05/25 Python
python 获取一个值在某个区间的指定倍数的值方法
2018/11/12 Python
用python写测试数据文件过程解析
2019/09/25 Python
HTML5 video循环播放多个视频的方法步骤
2020/08/06 HTML / CSS
广州地球村科技数据库题目
2016/04/25 面试题
LINUX下线程,GDI类的解释
2012/04/17 面试题
乡镇纠风工作实施方案
2014/03/22 职场文书
党员活动日总结
2014/05/05 职场文书
2014年政协工作总结
2014/12/09 职场文书
企业办公室主任岗位职责
2015/04/01 职场文书
培训简讯范文
2015/07/20 职场文书