[python]SM4算法实现 # python实现SM4算法# 不考虑工作模式和消息填充ROUND = 32TIME = 1000000class SM4: def __init__(self): self.FK = [0xa3b1bac6, 0x56aa3350, 0x677d9197, 0xb27022dc] self.CK = [0x00070e15, 0x1c232a31, 0x383f464d, 0x545b6269, 0x70777e85, 0x8c939aa1, 0xa
[python]bytes型和string型的转换 数据加解密时通常是以bytes形式存储,加解密算法运行前需要先对数据进行处理。以SM4算法示例数据为例,待加密数据为:0123456789abcdeffedcba9876543210,bytes类型则有两种表示方式message1 = b'0123456789abcdeffedcba9876543210'message2 = b'\x01\x23\x45\x67\x89\xab\xcd\xef\xfe\xdc\xba\x98\x76\x54\x32\x10'无论哪种类型,SM4计算时要将其分为4个
Windows桌面鼠标右键菜单清理 随着安装软件越来越多,桌面鼠标右键的快捷键原来越臃肿。为了美观和舒适,对Windows桌面鼠标右键的快捷方式进行清理。按WIN+R键,输入regedit在注册表中,在 HKEY_CLASSES_ROOT\Directory\Background\shell 目录中删除多余的目录。...
C语言实现保留格式加密算法FF1 首先在github上下载源码:https://github.com/0NG/Format-Preserving-Encryption。在VS中新建一个工程,将FF1有关的文件放入工程中。按照本文的方式配置openssl。
[Windows系统]openssl的安装与调用 下载perl和openssl分别在官网下载perl和openssl压缩包安装perl按照默认路径安装,无需配置(我的默认路径:C:\Perl64)安装完成,通过在cmd中输入perl -v判断perl是否安装成功。安装openssl配置VS2012的环境变量(因为后面编译openssl时,将会用到vs2012自带的nmake工具)。执行vcvars32.bat文件即可完成配置,但这个文件的路径在我的电脑中和网上教程不一样,所以我是在C盘中搜索了该文件,找到它的路径后执行的。配
[python]大端模式和小端模式 计算机有little endian(小端模式)和big endian(大端模式)之分,它们都是数据在内存中的表示方式。大端模式:左边为字节的高有效位,右边为低有效位。数的高有效字节放在存储器的低位置,数的低有效字节放在存储器的高位置(从左到右存放)。举个例子,现在要将16进制的数字0x12345678放入内存。大端模式下内存的存储方向为:0x12、0x34、0x56、0x78小端模式与大端...
[python]国密SM3算法的实现 #-------以下函数也可用于其它算法中---------def rotation_left(x, num): # 循环左移 num %= 32 left = (x << num) % (2 ** 32) right = (x >> (32 - num)) % (2 ** 32) result = left ^ right ...
python中的密码算法库 库名称:pycryptodome通过查询本地第三方库,可以看到与crypto相关的库。常见的对称密码算法在 Crypto.Cipher 库下非对称密码在 Crypto.PublicKey 库下哈希密码在 Crypto.Hash 库下随机数在 Crypto.Random 库下实用小工具在 Crypto.Util 库下数字签名在 Crypto.Signature 库下假如我们要查看...
[python]查看本机中的python第三方库文档 本机系统为win10打开cmd终端,输入python -m pydoc -p 0选择b(浏览)或q(退出)此时,浏览器自动打开一个页面:这个页面中包含本机总所有的python库文件。输入要查询的第三方库信息参考:https://blog.csdn.net/weixin_40894428/article/details/81745445...
[python]自定义RC4算法 RC4算法的介绍RC4算法是一种流加密算法。所谓流加密,即密文由明文与密钥逐比特异或所得。因此该算法仅包含初始化密钥生成算法(KSA算法)和伪随机密钥流生成算法(PRGA)。关于这两个算法的描述:KSA算法执行该算法需给定一个初始密钥key,key的长度可变(范围为1~256字节)。利用这个初始密钥,可以生成一个S盒(一般为256进256出)。PRGA算法执行该算法可以输出一个密钥流。...
[python]已安装opencv包,在解释器中可导入,在pycharm中却无法导入 错误原因建立新项目设置pychram环境时,新建的环境未安装对应库解决方法在pycharm中重新下载opencv包选择已经安装好库的环境默认环境下的路径中并不是已下载的第三方库的路径修改解释器路径此时在pycharm中引入opencv包时不再报错!!...
[Python]pip安装第三方库时,出现超时错误( Read timed out) 问题在使用pip命令下载opencv包时,出现超时导致的下载失败现象。pip._vendor.urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host=‘files.pythonhosted.org’, port=443): Read timed out.错误原因国内网络环境下,python第三方库的下载速度非常慢,很容...
区分密码和口令 刚开始接触密码学时,书上说到我们平常使用的各种软件的密码实际上是一种口令,并不是真正的密码。那么口令是什么,密码又是什么呢?百度百科中对密码的定义:他们的描述过于晦涩,在英文中,密码和口令的单词其实是一样的,均为password,我想用一种容易理解的方式区分它们。日常生活中的“密码”不是真正的“密码”,而是“口令”。口令,可以看作是一个通行证。假设现在一个山洞里藏满了宝藏,山洞被石门封锁...
Linux---忘记超级用户密码的处理方式 若忘记了Linux系统中超级用户的密码,可以在启动过程中修改原始密码。在开机选择界面按e编辑进入到引导文件编辑模式在内核加载选项中删除一部分配置将ro(只读挂载)更改为rw加入参数rd.break终止系统初始化按Ctrl-x开启系统,系统进入单用户模式执行命令chroot /sysroot命令进入真实的shell中修改超级用户的密码新建文件.autorelabel(...