溫馨提示×

如何用OpenSSL進行數據簽名

小樊
74
2025-03-22 18:10:03
欄目: 云計算

使用OpenSSL進行數據簽名的步驟如下:

生成密鑰對

  1. 生成私鑰

    openssl genpkey -algorithm RSA -out private_key.pem -aes256
    

    這條命令會生成一個RSA私鑰,并使用AES-256加密保護。

  2. 從私鑰提取公鑰

    openssl rsa -in private_key.pem -pubout -out public_key.pem
    

    這條命令會從私鑰中提取出公鑰。

使用私鑰進行簽名

假設你有一個要簽名的數據文件 data.txt,可以使用以下命令進行簽名:

openssl dgst -sha256 -sign private_key.pem -out signature.bin data.txt
  • -sha256 指定使用SHA-256哈希算法。
  • -sign private_key.pem 指定使用私鑰進行簽名。
  • -out signature.bin 指定輸出簽名的文件名。

驗證簽名

使用公鑰驗證簽名的有效性:

openssl dgst -sha256 -verify public_key.pem -signature signature.bin data.txt
  • -verify public_key.pem 指定使用公鑰進行驗證。
  • -signature signature.bin 指定要驗證的簽名文件。
  • data.txt 是原始數據文件。

如果簽名有效,命令會輸出:

Verified OK

否則,會輸出錯誤信息。

示例總結

  1. 生成密鑰對

    openssl genpkey -algorithm RSA -out private_key.pem -aes256
    openssl rsa -in private_key.pem -pubout -out public_key.pem
    
  2. 簽名數據

    openssl dgst -sha256 -sign private_key.pem -out signature.bin data.txt
    
  3. 驗證簽名

    openssl dgst -sha256 -verify public_key.pem -signature signature.bin data.txt
    

通過這些步驟,你可以使用OpenSSL輕松地進行數據簽名和驗證。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女