-
国密SM4源码c语言
分组密码就是将明文数据按固定长度进行分组,然后在同一密钥控制下逐组进行加密,从而将各个明文分组变换成一个等长的密文分组的密码。其中二进制明文分组的长度称为该分组密码的分组规模。
SM4密码算法的整体结构图如下:
在SM4的源代码中存在如下几个函数:
void sm4_setkey_enc(sm4_context *ctx,unsigned char key[16])
void sm4_setkey_dec(sm4_context *ctx,unsigned char key[16])
void sm4_crypt_ecb( sm4_context *ctx,int mode,int length, unsigned char *input,unsigned char *output)
void sm4_crypt_cbc( sm4_context *ctx,int mode,int length,unsigned char iv[16],unsigned char *input,unsigned char *output )
static void sm4_setkey( unsigned long SK[32], unsigned char key[16] )
- 2022-04-11 13:46:32下载
- 积分:1
-
五子棋游戏
简洁明了的c语言实现五子棋游戏,适合于初学c语言的朋友,培养用c语言编程的习惯
- 2022-09-22 13:00:03下载
- 积分:1
-
sift特征提取
Opencv SIFT特征提取,有需要的朋友可以参考下。Opencv里面,特征提取可以分为两步进行:detection + computation,具体为detection后,得要一些keypoints,然后在这些keypoints上应用相应的描述符。SIFT是一个比较常用的特征,下面就以SIFT特征为例,在Opencv进行SIFT提取(SIFT detection + SIFT description)。
- 2022-12-15 15:00:04下载
- 积分:1
-
边填充算法
边填充算法,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
- 2023-02-08 14:20:04下载
- 积分:1
-
随机数产生+冒泡与快速排序+文件读写操作
应用背景在需要对大量的数据进行排序时,本程序利用文件读写操作进行,以方便查看排序结果,并且利用冒泡排序与快速排序两种算法作为比较,把排序后的数据分别写入到文件。关键技术
1、随机数产生函数 srand与rand
2、文件读写操作,比如文件打开命令fopen,读写操作fprintf函数与fscanf函数
3、冒泡排序与快速排序
- 2022-03-10 15:30:40下载
- 积分:1
-
单片机电赛电子秤源码
16年电赛 电子秤源码 16年电赛 电子秤源码 16年电赛 电子秤源码 16年电赛 电子秤源码 16年电赛 电子秤源码
- 2023-06-12 10:30:05下载
- 积分:1
-
基于STC60S2单片机的倒立摆PID参考程序
这是一个基于STC60S2单片机的倒立摆PID参考程序,对pid初学者很有借鉴意义
- 2023-01-04 10:00:03下载
- 积分:1
-
图书管理系统
根据图书管理系统的要满足的实际需求情况与基本服务职能,我们确定了整个图书管理系统应该划分以下6个模块:系统设置、读者管理、图书管理、图书借还、系统查询、排行榜。
- 2023-04-18 17:30:03下载
- 积分:1
-
基于51单片机的电子琴源代码
本设计采用STC89C52芯片组成的最小系统,结合八位按键控制音调输出,24C80存储芯片,以及扬声器构成简易电子琴。通过软件设置,使系统达到,按下控制按键,蜂鸣器发出Do,Re,Mi,Fa,So,La,Si,Do-H,八个简单的音调,能自动播放预设歌曲,实现简易电子琴系统功能。
资源包含设计电路原理图、PCB图以及51单片机源码
- 2022-02-21 15:14:02下载
- 积分:1
-
stm32 can通信
CAN 是 Controller Area Network 的缩写(以下称为 CAN),是 ISO 国际标准化的串行通信协议。在当前的汽车产业中,出于对安全性、舒适性、方便性、低公害、低成本的要求,各种各样的电子控制系统被开发了出来。由于这些系统之间通信所用的数据类型及对可靠性的要求不尽相同,由多条总线构成的情况很多,线束的数量也随之增加。为适应“减少线束的数量”、“通过多个 LAN,进行大量数据的高速通信”的需要, 1986 年德国电气商博世公司开发出面向汽车的 CAN 通信协议。此后, CAN 通过 ISO11898 及 ISO11519 进行了标准化,现在在欧洲已是汽车网络的标准协议。
- 2022-10-18 10:05:03下载
- 积分:1