轮密钥选取 轮密钥0 轮密钥1 轮密钥2 K0 K1 K2 K3 K4 K5 K6 K7 K8 K9 K10 K11 K12
2021-10-29 18:38:44 243KB aes
1
AES加密解密工具 AES 是一种使用安全码进行信息加密的标准。 它支持 128 位、192 位和 256 位的密匙。 加密算法的实现在 ElAES.pas 单元中。 本人将其加密方法封装在 AES.pas 单元中, 只需要调用两个标准函数就可以完成字符串的加密和解密。 128 位支持长度为 16 个字符 192 位支持长度为 24 个字符 256 位支持长度为 32 个字符 所有加密和解密操作在默认情况下为 128 位密匙。
2021-10-22 14:34:26 191KB AES 信息系统安全 华科
1
修改了重新调用setMode函数时内存释放的错误,并附带了示例工程 AES类的三个公共函数 //设置AES类的模式为加密还是解密,并说明密钥长度和明文长度(解密时为密文) //key 密钥数据 //keySize 密钥长度 //inSize 明文长度(解密时为密文) //isdecrypt 是否为解密(解密时为TRUE) //成功返回1 失败返回-1 失败是由于参数设置不正确引起 int setMode(unsigned char* key, int keySize, int inSize, bool isdecrypt); //加密数据 //input 明文数据,长度为setMode时inSize指定 //ouput 加密后的数据,长度为setMode时inSize指定 void cipher (const unsigned char* input, unsigned char* output); //解密数据 //input 密文数据,长度为setMode时inSize指定 //output 明文数据,长度为setMode时inSize指定 void invCipher(const unsigned char* input, unsigned char* output);
2021-10-18 15:45:07 13KB AES 加密 算法 源代码
1
在调用企业微信通讯接口的时候,企业微信aes加密抛出了illegal key size异常,这个异常的原因是jdk jar包缺少lib导致的,不同jdk版本的jar包缺失不同,附件包含jdk6,jdk7,jdk8的jar包依赖,更新覆盖的时候,记得先备份
2021-10-15 13:09:18 5KB aes加密 illegalKeySize jdk
1
AES加密算法的编码实现
2021-10-13 16:00:28 9KB python AES
1
lua aes 加解密
2021-10-12 17:41:18 75KB lua aes 加密 解密
1
用C语言实现的128位AES加密算法,可以运行在JAVA的JNI 中AIS加密算法c语言实现代码 nt cnt for(ent =0: cnt< 8: cnt++) BvtcToBit(*(ch+cnt), bit+(ent<<3)) return /将二进制位串转为长度为8的字符串水 int Bit64ToChar8 (ElemType bitL64, ElemType ch18) int cnt memset(ch, 0, 8) for(ent-0: cnt<8: cnt++i BitToByte(bit+(cnt<<3), ch+cnt) return 0 /*生成子密钥 int DES Make Subkeys(ElemType key _64, ElemType subkeys [16][48]) ElemType temp 56 int cnt DES PCI Transform(key,temp):/*PCI置换* for(cnt=0;cnt<16;cnt+-){*16轮跌代,产生16个子密钥米 DES ROL(tenp, MOVE TIMES[cnt]);循坏左移* DES PC2 Transform(temp, subkeys cnt]);/PC2置换,产生子密钥体 return o /*密钥置換1*/ int DES PCI Transform(ElemType key [64, ElemType tempts[56])t int cnt for(cnt=0: cnt( 56 cnt++) )empts[cnt]= key[ Ilant] r巳turn /*密钥置換2* int DES PC2 Transform(Elem Type key [56], ElemType tempts[48])i t cnt for(ent =0: cnt< 48: cnt+)I )pbts [cnt]= key [PC 2[cnt]] return /*循环左移*/ int DES ROL (Elem Type data[56], int time)t Elem l'ype temp _56 /*保存将要循环栘动到右边的位* memcpy(temp, data, time) memcpy(temg-time, data+28, time) /*前28位移动 (data-28-time, temp, time) /*后28位移动* memcpy(data 28, data+28+time, 28-time memcpy (data-56-time, temp+time, time) return o /*P置换*/ int DES IP) Iransform(Elemlype data[64)[ ElemType temp _64]: for(cnt templet- datalIP Tablelcnt」」 memcpy(data, temp, 64) return o 第3页 AIS加密算法c语言实现代码 /*IP逆置換* int DES IP 1 Transform(ElemType data[64)( int cnt ElemType temp _64 for(cnt =0: cnt 64: cnt+-)i templet」- dataLIP1 Tablelcrt]」 memcpy(data, temp, 64) return o /*扩展置换*/ int DES E Transform(ElemType data[48])( Int cn ElemType temp48」 for(ent-0: cnt 48: cnt-) temp lent= datale Tablelent memcpy( data, temp, 48 return o P置换 int DES P Transform(ElemType data[32])( t ElemType temp_32] for(ent =0; cnt 32; cnt+-) temp ent-datalP Tablel 11 me.mcpy(data, temp, 32) return 0 /水异或* int DES XOR(Elem Type R[48, Elem Type L[48], int count)I int cnt for(cnt-0: cnt< count: cnt++)i RIant]= lent] return 0 /*S盒置换*/ int DES SBOX (Elem Type data[48]) int cnt int line, row, output int curl, cur for(en
2021-10-10 17:31:05 60KB AES 加密 C语言 aes128加密解
1
java实现SHA1、SHA、MD5、AES加密、AES解密、BASE64解密、BASE64加密,以及apache BASE64 jar和源码
2021-10-08 21:14:51 2.34MB SHA MD5 AES BASE64
1
AES 是一种可用来保护电子数据的新型加密算法。本文是AES加密解密的实现,
2021-10-08 15:29:30 350KB aes
1
源文件为AES高级加密算法的C语言实现,由于AES加密算法的加密解密过程高度对称,程序可读性很强。改变宏定义中的加密轮数可以实现128位,192位以及256位的密钥加密,一次加密过程明文长度最多为128位,即16个字节,8个汉字。
2021-10-07 15:58:21 13KB AES加密C语言
1