在Linux下,使用OpenSSL进行数据签名通常涉及以下步骤:
openssl genpkey -algorithm RSA -out private_key.pem 2048
openssl rsa -pubout -in private_key.pem -out public_key.pem
data.txt
为例。openssl dgst -sha256 -sign private_key.pem -out signature.bin data.txt
这个命令会生成一个名为signature.bin
的签名文件。
openssl dgst -sha256 -verify public_key.pem -signature signature.bin data.txt
如果签名有效,命令将输出Verified OK
。
生成私钥:
openssl genpkey -algorithm RSA -out private_key.pem 2048
这条命令生成一个2048位的RSA私钥,并保存到private_key.pem
文件中。
生成公钥:
openssl rsa -pubout -in private_key.pem -out public_key.pem
这条命令从私钥文件private_key.pem
中提取公钥,并保存到public_key.pem
文件中。
openssl dgst -sha256 -sign private_key.pem -out signature.bin data.txt
这条命令使用SHA-256算法对data.txt
文件进行签名,并将签名结果保存到signature.bin
文件中。openssl dgst -sha256 -verify public_key.pem -signature signature.bin data.txt
这条命令使用SHA-256算法和公钥public_key.pem
来验证signature.bin
文件是否是data.txt
文件的签名。openssl
命令在你的系统路径中可用。通过这些步骤,你可以在Linux环境下使用OpenSSL进行数据签名和验证。