1. 利用CryptoAPI加/解密文件:
允许用户输入口令,根据用户输入的口令,加/解密文件,要求:
• 用户选择要加密或解密的文件
• 用户输入口令,或没有输入口令,则用随机数产生密钥句柄
• 界面可参考如下:
2. 利用CryptoAPI实现公开密钥加密
(1) 导出密钥(导出公钥/导出私钥)
(2) 加密和解密
• 导出的公钥可以发给其他用户,由用户使用函数CryptImportKey()导入得到密钥句柄,然后使用函数CryptEncrypt()来加密数据
• 导出的私钥由所有者保留,当其他用户发送来数据,使用函数CryptImportKey()导入得到密钥句柄,然后使用CrypDecrypt()解密数据
(3) 要求:
• 在用户界面中显示出导出的公钥和私钥数据
• 用户选择要加密的文件或解密的文件
• 显示加密或解密后的效果
3. 利用CryptoAPI实现数字签名
(1) 用户选择要签名或验证签名的文件
(2) 将签名数据显示在用户界面中
(3) 界面可参考如下
1