Python3 django2.0 字段加密 解密 AES
以下设置,适用于python3.5及以前的
pip install pycryptoimport base64
from Crypto.Cipher import AES
from Crypto import RandomBS = 16
key = "1234567890123456"
pad = lambda s: s + (BS - len(s) % BS) * chr(BS - len(s) % BS)
unpad = lambda s : s[:-ord(s[len(s)-1:])]class AESCipher:def __init__(self, key):self.key = keydef encrypt(self, raw):raw = pad(raw)iv = Random.new().read(AES.block_size)cipher = AES.new(self.key, AES.MODE_CBC, iv)return base64.urlsafe_b64encode(iv + cipher.encrypt(raw))def decrypt(self, enc):enc = base64.urlsafe_b64decode(enc.encode('utf-8'))iv = enc[:BS]cipher = AES.new(self.key, AES.MODE_CBC, iv)return unpad(cipher.decrypt(enc[BS:]))a = AESCipher(key=key)
b = a.encrypt(raw='123456')
b1 = b.decode()
print(b1,type(b),type(b1))c = a.decrypt(enc='N4wGyzPTnggQtUr_gyGcsxMzU136thzPIc8y3mJ2uxg=')
print(c)
python3.6版本的
pip install cryptographyfrom cryptography.fernet import Fernet## key = base64.urlsafe_b64encode(os.urandom(32)) 生成keydef encrypt_p(password):f = Fernet('Ow2Qd11KeZS_ahNOMicpWUr3nu3RjOUYa0_GEuMDlOc=')p1 = password.encode()token = f.encrypt(p1)p2 = token.decode()return p2def decrypt_p(password):f = Fernet('Ow2Qd11KeZS_ahNOMicpWUr3nu3RjOUYa0_GEuMDlOc=')p1 = password.encode()token = f.decrypt(p1)p2 = token.decode()return p2
Python3 django2.0 字段加密 解密 AES相关推荐
- [crypto]-52-python3中rsa(签名验签加密解密)aes(ecb cbc ctr)hmac的使用,以及unittest测试用
环境: 在ubuntu14.04下,记得安装:sudo pip3 install pycrypto 代码示例1: =========================== import base64 f ...
- Spring-Web - 数据库 字段加密 解密
在工作中,为了保证数据安全,需要对数据库字段进行加解密,之前工作中就遇到了这种情况,因为线上数据库有很多的人都有权限,运维,账务,运营(通过后台系统查看),出口太多了,但有用户向我们平台举报,说有 ...
- 记录一个视频加密解密--AES 进阶版 (EVP)
OpenSSL 是一个开源的软件库,提供了一组用于进行加密.解密.哈希和证书操作的函数和工具.其中,EVP(Envelope Cryptography API)是 OpenSSL 中的一个模块,用于处 ...
- oracle实现sha加密解密,oracle部分字段加密解密 实现模糊搜索
数据库部分字段加密 实现该字段模糊查询 解决方案:从数据库层面 对改字段进行解密 是目前最为方便的 而oracle可以支持将java类带入到oracle从而调用对应的方法. 基本步骤: 编写好对应的加 ...
- java jpa字段加密解密
公司有个需求,人员身份证号码入库时需要加密,取出时需要解密.由于系统中没有设计加密解密方式,所以需业务中单独处理. 之前考虑加拦截器,后来发现需求不会很大,这种方式太复杂没有必要. 首先添加一个类,处 ...
- oracle数据库字段加密解密
第一步,使用sys账号登录,创建加密解密函数 CREATE OR REPLACE FUNCTION f_Encrypt_number (number_in IN VARCHAR2) RETURN RA ...
- RSA加密解密DES加密解密AES
文章目录 RSA java 依赖 RSACoder RSACoderTest js示例 DES 示例一 js java 示例2 js java AES AesUtil RSA java 依赖 < ...
- 利用php的mcrypt模块加密解密(AES、DES等等)
php des加密: $cipher_list = mcrypt_list_algorithms();//mcrypt支持的加密算法列表 $mode_list = mcrypt_list_modes( ...
- 使用mybatis拦截器实现字段加密解密
前言 .项目中我们存储一些用户信息的使用后根据规定,不可以存储明文,尤其是密码,实现的办法有好多种,今天承接上一篇文章mybatis拦截器,利用拦截器实现使用注解的方式在数据插入前进行加密,查询是自动 ...
最新文章
- Flask-SQLAlchemy安装及设置
- angularjs -- 路由监听
- java.lang.OutOfMemoryError​异常解决方法
- Maven与IDEA结合
- spring boot 单元测试_spring-boot-plus1.2.0-RELEASE发布-快速打包-极速部署-在线演示
- 字符集和编码规范:ASCII,Unicode和UTF-8, latin1,BIG5,GBK
- 工具--常见eclipse配置导入web工程(tomcat容器)步骤
- 对象池 IObjectPool -- ESBasic 可复用的.NET类库(15)
- 用于图像识别的编程语言,你知道几个?
- Mybatis插入大量数据效率对比:foreach插入、SqlSession批量插入、sql插入
- 10个精选国外免费空间推荐
- UART 通信 协议 (二)
- 傅里叶变换经滤波处理及傅里叶逆变换
- Java Swing窗体JFrame之设置窗体图标
- tagged和untagged
- 先锋机器人Pioneer3 DX使用
- Linux下用户账号管理基础
- 云服务器部署web项目 超详细步骤 腾讯云 阿里云
- 基于FPGA的一维卷积神经网络CNN的实现(二)资源分配
- 对python的认识作文500字_关于启示的作文500字
热门文章
- 未能找到路径的一部分_车辆路径规划三种MIP模型
- win10添加美式键盘_win10玩dnf卡顿,怎么解决?
- hadoop本地模式部署_hadoop启动模式、基本配置、启动方式
- mysql timestamp 用法_MYSQL timestamp用法
- 联通突然从4g变成3g了_中国联通最快明年底2G全面退网 并推进3G逐步退网
- python点击按钮浏览本地文件_Python button选取本地图片并显示的实例
- 小程序返回上一页_智能小程序档案馆手把手教你成为小程序流量头号玩家(上)...
- 【架构】阿里中台内容整理(部分)
- 软件项目管理0813:法律合规
- 为何高并发系统中都要使用消息队列