OpenSSL数字签名实验

OpenSSL数字签名实验

实验目的

通过实验理解数字摘要、数字签名原理与应用

实验步骤
  1. 创建明文文档plain.txt,写入内容。

  2. 计算plain.txt的哈希值,输出到文件digest.txt。

  3. 利用RSA算法对摘要进行签名。

    • 创建1024位的RSA私钥,写入文件rsaprivatekey.pem,同时用3DES加密,设置密码。

    • 从文件rsaprivatekey.pem中提取公钥,写入文件rsapublickey.pem.

    • 利用上述私钥对摘要digest.txt进行签名,生成签名文档signature.bin

  4. 对签名signature.bin进行公钥验证。

实验过程
  1. 在openssl/bin下创建明文文档plain.txt,写入内容。

OpenSSL数字签名实验

  1. 计算plain.txt的哈希值,输出到文件digest.txt。

$ openssl sha1 -out digest.txt plain.txt

OpenSSL数字签名实验

  1. 利用RSA算法对摘要进行签名。

  2. 创建1024位的RSA私钥,写入文件rsaprivatekey.pem,同时将私钥用3DES加密,并设置密码。

openssl genrsa -out rsaprivatekey.pem -passout pass:123456 -des3 1024

OpenSSL数字签名实验

  1. 从文件rsaprivatekey.pem中提取公钥,写入文件rsapublickey.pem.

openssl rsa -in rsaprivatekey.pem -passin pass:123456 -pubout -out rsapublickey.pem

OpenSSL数字签名实验

  1. 利用上述私钥对摘要digest.txt进行签名,生成签名文档signature.bin

openssl rsautl -sign -inkey rsaprivatekey.pem -in digest.txt -out signature.bin

OpenSSL数字签名实验

  1. 对签名signature.bin进行公钥验证。

openssl rsautl -verify -inkey rsapublickey.pem -pubin -keyform PEM -in signature.bin

OpenSSL数字签名实验

OpenSSL数字签名实验

上一篇:Vundle Windows安装时 E117: Unknown function: vundle#begin一种解决方法


下一篇:《慕慕到家》家政小程序组件化进阶实战网盘下载