研究以上API接口,总结他们的异同,并以龙脉GM3000Key为例,写出调用不同接口的代码,提交博客链接和代码链接。
内容:
0 查找各种标准的原始文档,研究学习(至少包含Crypto API,PKCS#11,GMT 0016-2012,GMT 0018-2012)(5分)
1 总结这些API在编程中的使用方式(5分)
2 列出这些API包含的函数,进行分类,并总结它们的异同(10分)
3 以龙脉GM3000Key为例,写出调用不同接口的代码(Crypto API,PKCS#11,SKF接口),把运行截图加入博客,并提供代码链接(10分)
总结使用方式
(1)给定明文文件,生成加密文件,同时产生文件的数字签名文件;
(2)给定密文文件,解密出明文文件,并验证签名的正确性。
在不安全的网络上进行安全的数据传输涉及三个方面的要求:信息隐藏,身份鉴别和完整性检验。CryptoAPI除了提供上述三个功能外还提供标准的ASN.1编码、解码,信息解密,数字证书和证书存储区的管理,证书信任列表、吊销列表和证书有效性检查等功能。
具体API函数
参考链接:https://blog.csdn.net/liuhuiyi/article/details/7778123
1.基本加密函数
-
(1)CSP独立加密模块

-
(2)服务提供者函数

-
(3)密钥产生交换函数

-
(4)编码解码函数

-
(5)加密解密函数

-
(6)HASH和签名函数

2.证书和证书库函数
(1)证书库函数

(2)维护和证书函数




3.证书验证函数
(1)使用CTL 的函数

(2)证书链验证函数

4.消息函数

5.其他辅助函数


以龙脉GM3000Key为例,写出调用不同接口的代码(Crypto API,PKCS#11,SKF接口),把运行截图加入博客,并提供代码链接
1.SKF接口

文件地址:龙脉密码钥匙驱动实例工具等\mToken-GM3000\skf\samples\windows\EncryptData\EncryptData.sln
2.API接口



3.PKCS#11
DES:

DES3:


RC2:


RC4:


RSA:


AES:

4.getusbinfos.sln
