在Linux下使用OpenSSL實現數據簽名,通常涉及以下步驟:
openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa_keygen_bits: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
如果簽名有效,命令將不會輸出任何內容。如果簽名無效,它將顯示一個錯誤消息。
請注意,這些步驟假設你已經安裝了OpenSSL。大多數Linux發行版默認已經安裝了OpenSSL,但如果沒有,你可以使用包管理器來安裝它。例如,在基于Debian的系統上,你可以使用以下命令:
sudo apt-get update
sudo apt-get install openssl
在基于Red Hat的系統上,你可以使用:
sudo yum install openssl
或者,如果你使用的是Fedora:
sudo dnf install openssl
確保在執行這些命令時,你有足夠的權限來讀取和寫入文件。如果你遇到權限問題,可能需要使用sudo來提升權限。