高级加密标准(AES) 这是Python中的AES实现。 分组密码操作模式为CTR。 该实现支持AES-128,AES-192和AES-256(默认)。 AES密钥和HMAC密钥是使用hashlib的scrypt和一个随机的16字节盐从用户密码生成的(密钥的创建时间是创建密钥的两倍,每个密钥分成两半)。 CTR IV由一个随机的10字节随机数和一个从0开始的6字节计数器创建。salt被写为密文的第一个块,然后CTR IV被写为第二个块。 最后,使用HMAC密钥创建密文的HMAC值,并将其写为密文的最后两个块。 解密之前,将对HMAC值与其余密文进行检查,如果该值与解密匹配,则开始解密。 我尝试了两种不同的方法来优化代码并获得更快的运行速度: 常规:这是未优化的代码版本-很慢。 并行化:此版本使用并行化多处理-更快。 :此版本使用Numba,这是一种JIT编译器,可将Pytho
2023-04-14 17:46:25 21KB Python
1
这是我四年级的密码学课程的学校项目。 我们不得不做一个使用 C 实现的高级加密标准。由于实际的 AES 非常大,我们在它上面使用了一个简化版本。 这个只使用了 16 位系统和更简单的 S-box 加密。 编译 C 代码并运行。
2022-10-14 09:13:34 32KB C
1
AES-128/192/256 算法,用于在给定 128 位十六进制输入消息和 128/192/256 位十六进制密钥的情况下创建密码。 使用FIBS-197标准创建。 该算法不是为提高速度而构建的,并且不包含文本消息或数据输入的128位输入块。 Cipher 和 InvCipher 是要执行的主要函数。 函数根据密钥大小执行 AES128 或 AES192 或 AES256。 函数不会检查密钥大小或输入的长度是否正确,如果大小不正确,则会出错。 例子: Out = Cipher(key,In) %key ='000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f' %In='00112233445566778899aabbccddeeff' %Out='8ea2b7ca516745bfeafc49904b496
2022-09-25 12:20:08 8KB matlab
1
MagicCrypt 是一个 Java/PHP/NodeJS/Rust 库,用于加密/解密字符串、文件或数据,使用数据加密标准 (DES) 或高级加密标准 (AES) 算法。它支持 CBC 分组密码模式、PKCS5 填充和 64、128、192 或 256 位密钥长度。
2022-06-11 14:03:29 19KB rust 算法
高级加密标准AES(Rijndael)算法的分析及实现.doc
2022-05-31 14:05:55 296KB 文档资料
#AES JavaScript实现 ##感谢及参考 的
2022-04-29 01:35:31 9KB JavaScript
1
不可能差分是通过寻找不可能出现的差分关系,排除满足这种关系的密钥,并最终恢复出秘密密钥的一种攻击方法.研究了高级加密标准(AES)的不可能差分分析,利用AES-192和AES-256的密钥编排方案,结合时间-存储权衡攻击,提出了不可能差分密码分析7轮AES-192和8轮AES-256的方法.新方法分析7轮AES-192需要2~(94.5)选择明文,记忆存储空间为2~(129)分组,以及约2~(157)的7轮AES-192加密.新方法分析8轮AES-256需要2~(101)选择明文,记忆存储空间为2~(201)分组,以及约2~(228)的8轮AES-256加密.
1
基于图像加密的安全性目的,采用了基于AES算法的图像加密方法,分析了AES算法具有安全性高、图像加密效果好等优点,但鲁棒性方面有一定的局限性。为进一步提高加密效果,在此基础上提出了一种混合的加密方法,即首先进行Arnold置乱,然后再用AES算法对图像加密。通过用MATLAB仿真,分析两种加密结果,得出了改进算法鲁棒性和安全性得到改善的结论。
1
高级加密标准AES-FIPS197中文版.pdf
2021-12-18 19:39:28 323KB AES中文版
1
高级加密标准AES算法的FPGA实现 FPGA上的AES 实现
2021-11-14 06:32:58 185KB AES FPGA
1