-3
我試圖用SSL手動處理而不使用libs作爲OpenSSL等......而且我在第一步用客戶端的Hello消息出現問題。SSL客戶端 - 你好,消息正文結構
從technet:
It must consist of:
ClientVersion 3,1
ClientRandom[32]
SessionID: None (new session)
Suggested Cipher Suites:
TLS_RSA_WITH_3DES_EDE_CBC_SHA
TLS_RSA_WITH_DES_CBC_SHA
Suggested Compression Algorithm: NONE
在我的代碼(C/C++),我已經創建的消息在這條路上:
char *request = "ClientVersion 3,1\r\nClientRandom[32]\r\n
SessionID: None (new session)\r\n
Suggested Cipher Suites:\r\n
TLS_RSA_WITH_3DES_EDE_CBC_SHA\r\n
TLS_RSA_WITH_DES_CBC_SHA\r\n
Suggested Compression Algorithm: NONE\r\n";
不過的recv()之後的功能,我有0結果,我的消息結構有什麼問題?
PS 在HTTP-proto中有一個地方,當它必須是雙\ r \ n(分割標題和正文消息)時,可能是,必須有這樣或沒有的東西?
這不是一個謎,這是正常的。我認爲我可以工作,因爲:somebobdy可以做到這一點(爲什麼不是我?),它不是第三方libs,它可以讓你免於思維過程,你應該知道SSL如何正確工作,我已經使用HTTP,FTP, POP3,使用C/C++的TCP上的IMAP,並且不使用現成的東西,也爲這項工作實施子字符串搜索經典算法。這樣的工作有更多的知識目標。 – Secret
@ user167908,SSL/TLS比HTTP,FTP,POP3和IMAP更難一些。這不是像這些協議那樣簡單的基於文本的請求/響應模型。仔細看一下RFC(至少在它談論XDR的地方)。通常需要一段時間才能理解它。弄錯事情並獲得不安全的實現很容易。查看Wireshark等數據包,瞭解發生了什麼。您試圖發送的僞命令僅僅是對消息的文本表示:有用的,但很大程度上簡化了。 – Bruno
@ user167908這是不正常的,這是一個謎。你可以自己做*如果*你可以實現或連接幾十個密碼套件,並且你知道如何閱讀一個RFC。這裏的證據表明你沒有資格,對不起。有幾種高質量的實現已經可用。爲什麼你認爲你想要另一個仍然是一個謎。 – EJP