使用OpenSSL進行數字簽名驗證的步驟如下:
獲取公鑰:
.pem
或.crt
格式)。獲取簽名和原始數據:
.sig
或.bin
格式)。安裝OpenSSL:
sudo apt-get update
sudo apt-get install openssl
打開終端。
運行驗證命令: 使用以下命令格式進行驗證:
openssl dgst -verify public_key.pem -signature signature_file.sig original_data_file
其中:
public_key.pem
是簽名者的公鑰文件。signature_file.sig
是簽名文件。original_data_file
是原始數據文件。查看輸出:
如果你需要頻繁進行驗證,可以編寫一個簡單的腳本來自動化這個過程。以下是一個示例Bash腳本:
#!/bin/bash
# 參數檢查
if [ "$#" -ne 3 ]; then
echo "Usage: $0 <public_key.pem> <signature_file.sig> <original_data_file>"
exit 1
fi
PUBLIC_KEY=$1
SIGNATURE=$2
ORIGINAL_DATA=$3
# 執行驗證
openssl dgst -verify $PUBLIC_KEY -signature $SIGNATURE $ORIGINAL_DATA
# 檢查退出狀態
if [ $? -eq 0 ]; then
echo "Verification successful."
else
echo "Verification failed."
fi
將上述腳本保存為verify_signature.sh
,然后賦予執行權限并運行:
chmod +x verify_signature.sh
./verify_signature.sh public_key.pem signature_file.sig original_data_file
-binary
選項來避免文本模式下的換行符問題。-sha256
等選項。通過以上步驟,你應該能夠成功地使用OpenSSL進行數字簽名驗證。