最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

用Crypto API进行加密通信及签名的一般步骤

来源:动视网 责编:小OO 时间:2025-09-27 11:46:15
文档

用Crypto API进行加密通信及签名的一般步骤

CSP开发基础--加密通信过程中CryptAPI函数的调用流程 应用程序使用CryptoAPI进行加密通信的一般步骤如下: 1,includewincrypt.h 2,调用CryptAcquireContext()获得某个CSP模块中的密钥容器(keycontainer)的一个句柄; 3,发送方使用CryptImportKey()将接受方的证书导入CSP中,从而获得接收方的公钥; 4,发送方式用CryptGenKey()随机产生一个会话密钥,且用对方的公钥对会话密钥进行加密,用CryptExp
推荐度:
导读CSP开发基础--加密通信过程中CryptAPI函数的调用流程 应用程序使用CryptoAPI进行加密通信的一般步骤如下: 1,includewincrypt.h 2,调用CryptAcquireContext()获得某个CSP模块中的密钥容器(keycontainer)的一个句柄; 3,发送方使用CryptImportKey()将接受方的证书导入CSP中,从而获得接收方的公钥; 4,发送方式用CryptGenKey()随机产生一个会话密钥,且用对方的公钥对会话密钥进行加密,用CryptExp
CSP开发基础--加密通信过程中CryptAPI函数的调用流程 

应用程序使用Crypto API进行加密通信的一般步骤如下: 

1,include wincrypt.h 

2,调用CryptAcquireContext()获得某个CSP模块中的密钥容器(key container)的一个句柄; 

3,发送方使用CryptImportKey()将接受方的证书导入CSP中,从而获得接收方的公钥; 

4,发送方式用CryptGenKey()随机产生一个会话密钥,且用对方的公钥对会话密钥进行加密,用CryptExportKey()将加密后的会话密钥导出并且发给对方; 

5,接收方收到会话密钥后,用自己的私钥调用CryptImportKey(),将会话密钥解出来; 

6,发送方用会话密钥调用CryptEncrypt()加密数据,并且发送给对方; 

7,接收方收到加密后的数据,用会话密钥调用CryptDecrypt(),对数据进行解密; 

8,通信完毕,调用CryptDestroyKey()释放任何密钥句柄,再用CryptReleaseContext()释放CSP句柄。 

使用Crypto API进行数字签名及验证的一般步骤如下: 

1,调用CryptAcquireContext()获得某个CSP模块中的密钥容器(key container)的一个句柄; 

2,签名者调用CryptGerUserKey()得到用于签名的密钥,并用CryptExportKey()降其中的公钥输出,以便收到数字签名的人对自己的签名进行验证; 

3,签名者用CryptCreateHash()和CryptHashData()计算需要签名的数据散列值; 

4,签名者用私钥调用CryptSignHash()给数据的散列值加上自己的签名; 

5,负责验证签名的人在收到签名者发来的公钥、数据及签名后,先用CryptImportKey()将签名者的公钥导入密钥容器中; 

6,验证者再签名者那样用CryptCreateHash()和CryptHashData()计算数据的散列值; 

7,验证者用CryptVerifySignature()检查签名是否有效; 

8,调用CryptDestroyHash()释放散列值对象,并调用CryptReleaseContext()释放最初的CSP句柄资源。

文档

用Crypto API进行加密通信及签名的一般步骤

CSP开发基础--加密通信过程中CryptAPI函数的调用流程 应用程序使用CryptoAPI进行加密通信的一般步骤如下: 1,includewincrypt.h 2,调用CryptAcquireContext()获得某个CSP模块中的密钥容器(keycontainer)的一个句柄; 3,发送方使用CryptImportKey()将接受方的证书导入CSP中,从而获得接收方的公钥; 4,发送方式用CryptGenKey()随机产生一个会话密钥,且用对方的公钥对会话密钥进行加密,用CryptExp
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top