在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進行數據簽名和驗證。