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
AES加密算法的实现,初始密钥和明文都是128位。完全实现10轮加密,C语言实现。
2022-05-24 15:36:38 163KB AES 加密 算法 C
1
对 Objective-C 中,对称加密的核心函数 CCCrypt 进行了简单的封装,提供了对字符串进行 DES 加解密、AES(128 bit 秘钥)加解密的方法。并附使用 Demo。
2022-02-26 12:15:21 5KB 对称加密 AES 128 位秘钥加解密
1
通过2个64位INT整数实现的128位整数运算,可容易的扩展到更高位数的整数运算。
2022-02-11 17:17:31 1.24MB 整数运算
1
用JAVA写得简单文件加密解密程序,不需要用户输入加密密码,自动生成秘钥来对文件加密,但没有设置文件保存位置的功能,加密后的文件只能与原文件在同一位置,解密后文件的保存位置只能保存在加密文件所在的位置
2021-11-23 22:00:45 70KB 文件加密解密
1
雪崩 Rijndael 算法的实现,用 128 位密钥加密/解密 128 位块并测量雪崩效应
2021-11-19 20:54:45 24KB encryption-algorithms Java
1
uint128_t C ++的无符号128位整数类型 版权所有(c)2013-2018 Jason Lee @ calccrypto在gmail.com 请参阅许可文件以获得许可。 致谢 在Auston Sterling的大力帮助下 感谢StefanDeigmüller找到操作员中的错误*。 感谢FrançoisDessenne说服我对该类进行了一般性的重写。 感谢John Skaller在将符号编译为共享库时使符号可见。 这最初是在uint256_t完成的,我将其复制到此处。 用法 这是C ++中无符号128位整数类型的简单实现。 它的意图是像标准uintX_t一样使用,除了比特大小比C / C ++提供的更大。 在代码中 在代码中只需完成#include "uint128_t.h" # include # include " uint128_t.h
2021-11-06 12:41:10 26KB c-plus-plus unsigned-integers C++
1
AES128-GCM AES 的 C 语言中 128 位的基本实现和 Galois Counter Mode 的操作模式。
2021-10-31 18:13:57 18KB C
1
C++实现的AES 128位加密算法。效率很高。经过测试,1K的明文每秒钟可以加密1M次
2021-10-18 22:18:25 205KB C++ 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