资源简介
国密算法SM2算法 C语言源码 签名验签 加解密, 密钥交换

代码片段和文件信息
#include
#include
#include
#include
#include “sm2.hpp“
#if 0
######################################
x86: CPU 2.8G
sm2_sign speed:147.058824/s
sm2_verify speed:116.414435/s
sm2_verify OK!===1
sm2_encrypt speed:74.404762/s
sm2_decrypt speed:150.602410/s
sm2_decrypt OK!
######################################
#endif
void my_ecc192_test()
{
int pv_len;
unsigned char pv[] = {0x000x000x000x000x000x000x000x000xF60x5A0x8E0xBA0xA70x8D0x490xFB
0xAA0xB80x8C0xCC0x5D0xC40x070x680xB40x0F0x430x1C0xE10x3B0x2E0xB6};
int px_len;
unsigned char px[] = {0x000x000x000x000x000x000x000x000x460x3D0xED0x0D0xDA0x970xF10x00
0x250x0C0x850xE50x380x8C0xAF0xFE0x9F0x5F0x740x730xD90x610x7F0x75};
int py_len;
unsigned char py[] = {0x000x000x000x000x000x000x000x000xC60x850x850x000xD20xD10x0D0xD8
0x1D0x7E0xE30x600xDC0x470xD40x1D0x220x5E0x880x1D0x6A0x940x2D0x80};
int hash_len;
unsigned char hash[] = {0x490x8C0x740x880x3E0x910xAA0xEB0xA70x1D0x0D0xA10xCB0x6A0x630x630x600xD10x700x06};
int sign1_len;
unsigned char sign1[] = {0x000x000x000x000x000x000x000x000x1F0xBC0xDE0xB80x7F0x6D0x520x68
0x560xBD0x500xA20xFC0x6F0x510x580xF10x120xD00x950x390x090xC90xFB};
int sign2_len;
unsigned char sign2[] ={0x000x000x000x000x000x000x000x000x030xEF0xD80x600xC00xF30x760x09
0x350x630xC40xA10x680xF60x330xDC0xBB0x6D0x330x4B0x9F0xD00xFD0xD9};
int ij;
printf(“\n[my_ecc192_test_input]:“);
printf(“\npv = “);
for(i=0; i printf(“\npx = “);
for(i=0; i printf(“\npy = “);
for(i=0; i printf(“\nhash = “);
for(i=0; i printf(“\nsign1 = “);
for(i=0; i printf(“\nsign2 = “);
for(i=0; i
printf(“\n[priv_sign ]:“);
unsigned char cr[32]cs[32];
int cr_lencs_len;
sm2_sign(hashsizeof(hash)pvsizeof(pv)cr&cr_lencs&cs_len);
printf(“\ncr_len = %d cr = “cr_len);
for(i=0; i printf(“\ncs_len = %d cs = “cs_len);
for(i=0; i
printf(“\n[verify sign ]: “);
i = sm2_verify(hashsizeof(hash)sign1sizeof(sign1)sign2sizeof(sign2)pxsizeof(px)pysizeof(py));
printf(“%s\n“(i==0)?(“err“):(“
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 1039 2010-10-21 15:12 miracl\aesgcm.txt
文件 3284 2009-03-19 12:52 miracl\ake.txt
文件 11768 2010-11-26 10:50 miracl\ake12blsa.cpp
文件 9822 2010-07-22 16:33 miracl\ake12bna.cpp
文件 10170 2009-12-17 11:19 miracl\ake12bne.cpp
文件 12945 2010-05-20 14:22 miracl\ake12bnr.cpp
文件 14937 2010-11-22 14:45 miracl\ake12bnx.cpp
文件 17353 2010-11-18 17:38 miracl\ake18kssx.cpp
文件 11553 2010-03-09 15:57 miracl\ake1kmt.cpp
文件 13650 2010-12-10 12:51 miracl\ake24blsa.cpp
文件 9197 2010-06-16 09:11 miracl\ake2cpt.cpp
文件 8824 2009-03-25 11:27 miracl\ake2cpt2.cpp
文件 5880 2008-10-08 10:19 miracl\ake2cpw.cpp
文件 10415 2009-03-25 11:27 miracl\ake2nsst.cpp
文件 8598 2009-03-31 17:07 miracl\ake2sst.cpp
文件 8015 2010-11-16 17:22 miracl\ake4cpt.cpp
文件 8418 2009-12-07 11:50 miracl\ake4fsta.cpp
文件 25151 2009-03-25 11:28 miracl\ake4mnta.c
文件 8526 2009-12-17 11:25 miracl\ake4mnta.cpp
文件 20028 2009-03-25 11:30 miracl\ake4mntt.c
文件 9111 2010-11-16 15:17 miracl\ake4mntt.cpp
文件 9497 2009-12-17 11:28 miracl\ake4sbt.cpp
文件 8633 2009-12-07 11:08 miracl\ake6fsta.cpp
文件 10764 2010-11-25 16:19 miracl\ake6mnta.cpp
文件 20264 2009-12-03 13:03 miracl\ake6mntt.c
文件 11231 2010-02-01 18:25 miracl\ake6mntt.cpp
文件 10957 2009-12-17 11:25 miracl\ake6mntx.cpp
文件 10326 2010-11-17 15:31 miracl\ake8bwt.cpp
文件 9274 2010-11-17 15:30 miracl\ake8cpt.cpp
文件 12260 2007-09-19 11:26 miracl\amd64.mcs
............此处省略515个文件信息
相关资源
- C++中头文件与源文件的作用详解
- C++多线程网络编程Socket
- VC++ 多线程文件读写操作
- C语言代码高亮html输出工具
- 猜数字游戏 c语言代码
- C语言课程设计
- 数字电位器C语言程序
- CCS FFT c语言算法
- 使用C语言编写的病房管理系统
- 通信过程中的RS编译码程序(c语言)
- 利用C++哈希表的方法实现电话号码查
- 计算机二级C语言上机填空,改错,编
- 用回溯法解决八皇后问题C语言实现
- 移木块游戏,可以自编自玩,vc6.0编写
- 简易教务管理系统c语言开发文档
- 操作系统课设 读写者问题 c语言实现
- 小波变换算法 c语言版
- C流程图生成器,用C语言代码 生成C语
- 3des加密算法C语言实现
- 简单的C语言点对点聊天程序
- 单片机c语言源程序(51定时器 八个按
- C++纯文字DOS超小RPG游戏
- 个人日常财务管理系统(C语言)
- c语言电子商务系统
- 小甲鱼C语言课件 源代码
- 将图片转换为C语言数组的程序
- C语言实现的一个内存泄漏检测程序
- DES加密算法C语言实现
- LINUX下命令行界面的C语言细胞游戏
- 用单片机控制蜂鸣器播放旋律程序(
评论
共有 条评论