日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

OpenSSL常用命令快速上手

發布時間:2025/6/17 编程问答 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 OpenSSL常用命令快速上手 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

OpenSSL常用命令快速上手

RSA篇

我們的操作流程為:

  • 生成RSA密鑰key.pem(也稱私鑰,密鑰對)。
  • 從key.pem中導出公鑰pubkey.pem。
  • 使用公鑰pubkey.pem對文件test.txt進行加密,得到密文test.enc。
  • 使用私鑰key.pem對test.enc進行解密,得到譯文test.dec。
  • 對比test.txt和test.dec,應該是一樣的。
  • 使用key.pem對test.txt進行簽名,得到test.sig。
  • 使用pubkey.pem對test.txt的簽名test.sig進行驗簽。
  • key.pem ====導出=====> pubkey.pem pubkey.pem + text.txt ===公鑰加密===> test.enc key.pem + test.enc ===私鑰解密===> test.deckey.pem + test.txt ===私鑰簽名===> test.sig pubkey.pem + test.txt + test.sig ==> 驗證簽名

    命令如下:

    1. 生成密鑰對并導出公鑰

    # 生成密鑰對 openssl genrsa -out key.pem# 導出公鑰 openssl rsa -in key.pem -pubout -out pubkey.pem

    參數說明:

    • -out: 指定輸出的文件
    • -in: 指定輸入的文件
    • -pubout: 指定輸出公鑰。如果不加該參數,默認輸出的為私鑰

    2. 加解密操作

    # 生成一個待加密的測試文件 echo "hello, world" > test.txt # 公鑰加密 openssl rsautl -encrypt -pubin -inkey pubkey.pem -in test.txt -out test.enc openssl rsautl -decrypt -inkey key.pem -in test.enc -out test.dec

    參數說明:

    • -encrypt: 加密操作
    • -decrypt: 解密操作
    • -pubin: 指定輸入公鑰。如果不加該參數,則認為輸入的為私鑰
    • -inkey: 密鑰文件

    核對文件

    # 如果沒有任何輸出,則文件相同 cmp test.txt test.dec

    3. 簽名、驗簽

    # 簽名 openssl dgst -sign key.pem -sha256 -out test.sig test.txt # 驗簽 openssl dgst -verify pubkey.pem -sha256 -signature test.sig test.txt

    參數說明:

    • -sign: 使用私鑰簽名
    • -verify: 使用公鑰驗簽
    • -sha256: 摘要算法,也可以為md5/sha1/sha384/sha512等,簽名驗簽使用的摘要算法應相同
    • -signature: 待驗證的簽名文件

    4. 查看密鑰信息

    # 查看私鑰信息 openssl rsa -in key.pem -noout -text# 查看公鑰信息 openssl rsa -pubin -in pubkey.pem -noout -text

    參數說明:

    • -noout: 不打印密鑰數據
    • -text: 以文本方式打印密鑰信息

    總結

    以上是生活随笔為你收集整理的OpenSSL常用命令快速上手的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。