作者zi98btcc (幼斤)
看板Linux
標題[問題] SSH連線加密技術疑問
時間Tue Dec 13 07:20:30 2016
http://linux.vbird.org/linux_server/0310telnetssh/0310telnetssh-centos4.php
如上面鳥哥說的:
------------------------------------------------------------------
SSH protocol version 1:
每一部 SSH 伺服器主機都可以使用 RSA 加密方式來產生一個 1024-bit 的 RSA Key ,
這個 RSA 的加密方式,主要就是用來產生公鑰與私鑰的演算方法!
這個 version 1 的整個連線的加密步驟可以簡單的這麼看:
1.當每次 SSH daemon (sshd) 啟動時,就會產生一支 768-bit 的公鑰
(或稱為 server key)存放在 Server 中;
2.若有 client 端的 ssh 連線需求傳送來時,那麼 Server 就會將這一支公鑰傳給
client ,此時 client 也會比對一下這支公鑰的正確性。比對的方法為
利用 /etc/ssh/ssh_known_hosts 或 ~/.ssh/known_hosts 檔案內容。
3.在 Client 接受這個 768-bit 的 server key 之後,Client 自己也會
隨機產生一支 256-bit 的私鑰(host key),並且以加密的方式將
server key 與 host key 整合成一對完整的 Key pair,
並且將這對 Key pair 也傳送給 server ;
4.之後,Server 與 Client 在這次的連線當中,
就以這一對 1024-bit 的 Key pair 來進行資料的傳遞!
------------------------------------------------------------------
這一對 Key pair 來進行資料的傳遞是甚麼意思?
是指用Key pair來加密解密嗎?
用server的公鑰加密,再用client的私鑰解密,這樣怎會解得出來?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.228.105.243
※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1481584833.A.C66.html
→ Frozenmouse: 中間有提到,在認證之後會產生一個對稱金鑰,在整個s 12/13 10:30
→ Frozenmouse: ession中傳遞訊息之用 12/13 10:30
→ danny8376: 你看的是SSHv1 其實這東西可以不管了w 12/13 10:30
→ danny8376: 現在主要都用SSHv2 中間用的對稱金鑰大多用DH算法交換 12/13 10:31
→ Frozenmouse: 這個金鑰應該就是鳥哥最後的Key pair,但名稱不對… 12/13 10:32
→ danny8376: 是說鳥哥這邊server/host key用公私鑰稱呼好像不大對 12/13 10:57
→ zi98btcc: 鳥哥有說:SSH version 2 多加了一個確認連線正確性的 12/13 12:42
→ zi98btcc: Diffie-Hellman 機制 12/13 12:44
→ danny8376: SSH直接沒用這key交換機制了 而是換成用DH來交換key 12/13 17:25
→ danny8376: v2 12/13 17:25
推 Frozenmouse: DH目的也不是檢查連線正確性,鳥哥這段真的怪怪的XD 12/13 17:55
→ Frozenmouse: 然後不管v1或v2,兩邊一開始各自的公私鑰和後來你傳 12/13 17:58
→ Frozenmouse: 遞訊息時用的加密方式已經是兩回事了 12/13 17:58
→ zi98btcc: 恩,也這樣覺得,傳遞訊息的加解密並非原始的公私鑰 12/13 20:28