此Qt程序实现了AES加密算法,解压后用QtCreator打开Pro文件,编译后即可运行。经多次试验,证明了这个程序是有效、无误、可用的,非常适合入门阶段学习参考。
2019-12-21 19:50:27 25KB Qt编程 AES加密算法 加密算法
1
今天项目要用到zip的加密解密,在网上搜索了好多这方面的资料,发现要么只是贴了一部分代码,要么这里少个jar包那里少个方法,花了2天时间翻阅各种资料后,自己整理了一下代码,引用了5个jar包,调用就一个方法搞定,简单实用,高端大气上档次
2019-12-21 19:50:27 2.72MB zip 加密解密 AES
1
一份非常不错的AES加密解密原理及算法学习的资料。所附源码经本人实测,完全无误。并且可移植性强,可移植到任意平台运行,从而为系统添加AES加密解密的功能。
2019-12-21 19:48:11 1.6MB AES 加密解密 源码 算法详解
1
AES加密,我经过修改可以对文件进行加密,分享一下,以此感谢csdn上大家的分享!
2019-12-21 19:48:09 14KB AES加密 文件加密
1
高级加密标准(英语:Advanced Encryption Standard,缩写:AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院(NIST)于2001年11月26日发布于FIPS PUB 197,并在2002年5月26日成为有效的标准。2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一。 CryptoJS工具类包,aes加密只使用了其中的crypto-js.js文件
2019-12-21 19:46:38 90KB CryptoJS aes Pkcs7
1
信息安全中加密技术之一。 AES的基本要求是,采用对称分组密码体制,密钥的长度最少支持为128、192、256,分组长度128位,算法应易于各种硬件和软件实现。 可以对文本、图片、视频进行加密和解密。
2019-12-21 19:45:44 2.25MB AES 信息安全 加密
1
AES加密算法中的S_盒及其MATLAB实现论文********************************
2019-12-21 19:44:56 143KB AES S盒 MATLAB
1
windows上加解密正常,linux上加密正常,解密时发生 异常: javax.crypto.BadPaddingException: Given final block not properly padded
2019-12-21 19:43:25 53KB AES linux报错
1
128位数据串的AES加密,实现平台为MATALB,加密和解密都在里面。
2019-12-21 19:38:40 18KB matlab AES加密
1
AES加密,全称为Advanced Encryption Standard,是目前广泛应用于数据加密的标准算法之一,特别是在软件开发领域。C++是一种通用的编程语言,拥有强大的性能和灵活性,因此在实现AES加密时非常适用。本文将深入探讨AES加密的基本原理以及如何在C++中实现AES加密。 AES是一种分组密码,它将明文数据分成128位的数据块进行处理。加密过程分为多个步骤,包括字节替代(SubBytes)、行移位(ShiftRows)、列混淆(MixColumns)和轮密钥加(AddRoundKey)。这些步骤在10轮(对于128位密钥)或14轮(对于256位密钥)中重复执行,以确保数据的安全性。密钥扩展也是一项关键操作,它将原始密钥扩展为足够多的轮密钥,用于每一轮的加密。 在C++中实现AES加密,首先需要理解并实现上述的加密步骤。`aes.cpp`和`aes.h`两个文件通常包含了AES加密的函数定义和类声明。`aes.cpp`是实现文件,包含具体的函数实现,而`aes.h`是头文件,定义了相关的类和函数接口,方便其他模块调用。 在`aes.cpp`中,可能会有一个名为`AES`的类,其中包含如`encrypt`和`decrypt`这样的成员函数,分别用于加密和解密。这些函数可能接收一个128位的明文块和一个密钥作为输入,然后返回对应的密文块。类内部可能还会有其他辅助函数,如进行字节替代、行移位和列混淆的函数。 `aes.h`文件则会包含`AES`类的声明,以及必要的公有成员函数和常量定义。例如: ```cpp class AES { public: AES(const unsigned char* key, int keySize); // 初始化AES对象,设置密钥 void encrypt(unsigned char* plaintext, unsigned char* ciphertext); // 加密函数 void decrypt(unsigned char* ciphertext, unsigned char* plaintext); // 解密函数 private: // 其他私有成员变量和函数,如密钥扩展、字节操作等 }; ``` 在实际使用时,开发者可以通过实例化`AES`类,并调用其`encrypt`或`decrypt`方法对数据进行加密和解密操作。例如: ```cpp AES aes(key, 16); // 假设key是16字节的密钥 unsigned char plaintext[16], ciphertext[16]; //...填充plaintext... aes.encrypt(plaintext, ciphertext); //...使用ciphertext... aes.decrypt(ciphertext, plaintext); //...plaintext恢复为原文... ``` AES加密在C++中的实现涉及到对加密流程的精确控制和内存操作,同时还需要注意效率和安全性。通过`aes.cpp`和`aes.h`这两个文件,我们可以构建一个完整的AES加密库,方便在各种C++项目中集成和使用。
2019-12-21 19:36:31 17KB AES,C++
1