2011-10-07 55 views
1

我想寫一個基本的套接字聊天應用程序,除了加密。你知道所有那些在命令行中運行服務器和客戶端的套接字編程示例,它會來回發送消息。像那樣,除了有很好的加密。知道基本加密聊天的任何好例子嗎? (GnuTLS?)

Diffie-Hellman密鑰交換,沒有證書權威廢話,也許一些建立連接後的ECDSA。

GnuTLS支持所有這些,但將文檔拼湊在一起比看到已經有效的東西更令人困惑。

PS:語言無關緊要,在Google上搜索了幾個星期後,沒有發現任何文檔,但我真的不在乎。它只是需要一些代碼可行。

謝謝!

回答

1

Python有很大的GnuTLS支持。

如果你使用debian/ubuntu,你所需要做的就是apt-get install python-gnutls。在文檔中是使用雙絞線的基本加密客戶機/服務器的示例。

0

我強烈建議使用SSL庫,如OpenSSL。一個好的起點可能是http://www.rtfm.com/openssl-examples/。我發現,谷歌很快,但可能有很多其他人。

+0

嘿,感謝您的提示,但根據我的IRCD的文檔,GnuTLS表現更好。 http://wiki.inspircd.org/Modules/ssl_gnutls 也許它是特定於實現的,在大多數情況下可能並不重要。只是一個想法。 – rachelderp

+0

完全沒有回答這個問題。 1)SSL,2)OpenSSL而不是GnuTLS。 – Xorlev

+0

@rachelderp - 我只是在考慮易用性。 SSL有很好的文檔記錄並且易於使用。我並不是指特定的實現。 –

0

通過閱讀這個問題,我可以理解你不瞭解底層技術。如果你想要的例子,你可以檢查gnutls的例子: http://www.gnu.org/software/gnutls/manual/html_node/Client-examples.html#Client-examples 但是,你最好閱讀整本手冊,以瞭解真正發生了什麼,以及Diffie Hellman和ECDSA如何發揮作用。 (ECDSA是用於簽署證書的簽名算法)。如果您想要完全避免證書,GnuTLS支持完全不需要證書的密碼套件(檢查SRP和PSK身份驗證)。

(順便說一句,我的GnuTLS的作者之一,所以考慮偏向任何建議)