python aes ecb_python代码封装加密

python aes ecb_python代码封装加密前言AES加密的模式有很多种,下面来介绍ECB模式的加密解密importbase64fromCrypto.CipherimportAESclassAESECB:def__init

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

前言

AES加密的模式有很多种,下面来介绍ECB模式的加密解密

import base64
from Crypto.Cipher import AES


class AESECB:
    def __init__(self, key):
        self.key = key  # 加密密钥
        self.mode = AES.MODE_ECB  # 设置为ECB模式
        self.bs = 16  # block size
        self.PADDING = lambda s: s + (self.bs - len(s) % self.bs) * chr(self.bs - len(s) % self.bs)

    def encrypt(self, text):
        generator = AES.new(self.key, self.mode)  # ECB模式无需向量iv
        crypt = generator.encrypt(self.PADDING(text).encode('utf-8'))
        crypted_str = base64.b64encode(crypt).decode('utf-8')
        return crypted_str

    def decrypt(self, text):
        generator = AES.new(self.key, self.mode)  # ECB模式无需向量iv
        decrpyt_bytes = base64.b64decode(text)
        meg = generator.decrypt(decrpyt_bytes).decode('utf-8')
        return meg[:-ord(meg[-1])]


if __name__ == '__main__':
    aes = AESECB('1234567890abcdef')
    print(aes.encrypt('111111'))
    print(aes.decrypt('rfTzn9WjsDFbK262m0k4xg=='))

结果:

rfTzn9WjsDFbK262m0k4xg==
111111
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/165347.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 基于SpringBoot的JWT单点登录

    基于SpringBoot的JWT单点登录单点登录单点登录SSO,分布式架构中通过一次登录,就能访问多个相关的服务。快速入门首先引入Jwt依赖<!–JWT–><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.4&

    2022年5月11日
    42
  • react-router@4.0 使用方法和源码分析

    react-router@4.0 使用方法和源码分析

    2021年7月8日
    65
  • mt4下载和安装好后如何使用呢「建议收藏」

    mt4下载和安装好后如何使用呢「建议收藏」首先要了解一些基本的功能,先来认识一下工具栏。mt4的工具栏有市场报价、导航、新订单、数据窗口以及终端,这些都是很重要的工具。在MT4的窗口上,有交易产品的展示,哪些是可以销售和购买的,以及当前对应产品的价格。另外一个还要经常用到的就是图标数据分析的功能,例如选择图标的形态,时间的管理周期,缩放功能等等。常用的分析工具是K线图的时间周期,可以根据自己需要的时间周期,在工具栏的图标上进行选择,从而对交易产品进行研究观测和分析。另外如果想更加精确,还需要十字光标、划线工具、文字及文字标签进行辅助。.

    2022年8月15日
    1
  • 基本粒子群算法小结及算法实例(附Matlab代码)

    基本粒子群算法小结及算法实例(附Matlab代码)1、基本粒子群算法假设在一个D维的目标搜索空间中,有N个粒子组成一个群落,其中第i个粒子表示为一个D维的向量:$$X_i=(x_{i1},x_{i2},\cdots,x_{iD}),\quadi=1,2,\cdots,N\quad\text{(1)}$$第i个粒子的“飞行”速度也是一个D维的向量,记为:$$V_i=(v_{i1},v_{i2},\cdots,v_{iD}),\quadi=1,2,\cdots,N\quad\te…

    2022年5月29日
    29
  • 正弦、余弦和正切

    正弦、余弦和正切https://www.shuxuele.com/sine-cosine-tangent.html直角三角形正弦、余弦和正切是 三角法 里的主要函数,它们是基于一个 

    2022年8月1日
    3
  • 校准不好TOF相机就废了?

    校准不好TOF相机就废了?校准不好TOF相机就废了?原文:(143条消息)校准不好TOF相机就废了?_深度视觉小司机的博客-CSDN博客五种校准一、镜头校准二、温度校准三、非线性校准四、共偏校准五、逐像素校准六、结语校准不好TOF相机就废了?目前,手机相机的进化方向是多摄中加入3D技术,而3D技术的一个很重要的路线是TOF,各大手机厂商都有对应的机型。关于TOF相机的原理,之前已经有很多科普文章了,今天我们就来聊一聊对TOF相机很重要的校准标定。五种校准TOF相机可以产生距离信息即深度信息,而深度.

    2022年5月26日
    31

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号