iT邦幫忙

0

[已解決]rsa非對稱加密(檔案加密)

  • 分享至 

  • xImage

目的:檔案是由我發出的

一般狀況
使用openssl 對檔案進行加密

1.使用public key 進行加密
2.解密用private 進行解密
這問題

思緒邏輯
所以應該是用private 進行加密
public key 進行解密
我要把public key 給對方對吧

我這樣邏輯是對的吧 還是陷入了所以才沒搞清楚

wrxue iT邦好手 1 級 ‧ 2021-08-19 13:27:57 檢舉
拿對方的 public key 加密,對方用對方的 private key 解密
SSL 的流程,看一下吧
https://www.netadmin.com.tw/netadmin/zh-tw/technology/6F6D669EB83E4DC9BEA42F1C94636D46
流程基本上是 雙方互握之後由主機傳送憑證 ( 公KEY ) 到 用戶端
然後用戶端會產生 隨機KEY 並使用主機的公KEY加密傳輸資料後傳給主機
主機收到之後就會用 自己的 私KEY 來解密
大約就這樣,SSL主機端必須有證書,用戶端不需要,整個流程大致上就這樣
角度要正確,誰是主機誰是用戶端,方向不一樣答案就不一樣
通通 iT邦新手 4 級 ‧ 2021-08-19 16:32:55 檢舉
果然我陷進去了 明明很簡單的概念卡太久了
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

1
淺水員
iT邦大師 6 級 ‧ 2021-08-19 12:09:24
最佳解答

如果把 public key 視為「給予公眾的 key」
那麼用 private key 加密就失去意義了
(因為大家都有 public key)

所以一般來說都是請對方產生 key pair
然後你用他給的 public key 加密資料後回傳給他

private key 加密通常只是用來做數位簽章

淺水員 iT邦大師 6 級 ‧ 2021-08-19 13:07:14 檢舉

考量到客戶不會用 openssl
key pair 可以用 js 產生
參考 MDN SubtleCrypto.exportKey()

通通 iT邦新手 4 級 ‧ 2021-08-19 16:13:55 檢舉

突破盲點 因為客戶不會用 連key 都是我產生

我要發表回答

立即登入回答