海盜灣創始人的的新項目,聊天應用 Heml.is 號稱可以反監聽,是如何實現,P2P 技術嗎?

他們正在籌款,Android 和 iOS 應用很快上線,但對通訊原理並沒有過多介紹,所以這是不是去中心化的 P2P 通信?具體如何實現?更多: Pirate Bay co-founder plans Hemlis, an encrypted messaging app where "no one can listen in"


非常遺憾,官方網站 https://heml.is/ 上除了提到通訊協議是 XMPP、加密方式是 PGP 外並沒有對技術細節有過多的介紹,所以我們現在並不能判斷它是否基於 P2P 結構。不過這並不重要,因為只要它能保證是真正的端到端加密 (end-to-end encryption),用 P2P 還是用中心化的節點伺服器中轉對於通信內容的安全性而言並沒有太大不同:除非量子計算機有質的飛躍,以目前的技術水平要破解正確加密的通信內容還不現實。

從官方網站的介紹來看,這個 app 是可以免費使用的,但需要收費才能有更多的功能【比如發送圖片】,所以它不太可能會是開源的。而在沒有源代碼的情況下談端到端加密是非常可疑的,因為你無法確信它到底在幹什麼。那麼剩下的就是拼人品了:你需要信任它的作者沒有做任何手腳、或者疏忽導致存在漏洞使得別人能做任何手腳。從過往的記錄來看,前者我個人認為是可以放心的【雖然官方首頁上的四張作者合影對不熟悉的人而言只能是大大的減分項】,但後者就不好說了。安全問題在技術上是非常困難的,我很懷疑僅憑這幾個人的力量就能保障技術上不出任何紕漏。而安全問題的困難之處在於任何小的紕漏都有很大的可能性導致極大的麻煩,於是在涉及安全的矛和盾的較量中盾總是處於劣勢:矛可以接受 99.999% 的失敗,那 0.001% 的成功足以帶來巨大的收益;而盾即便在 99.999% 都有效,而那 0.001% 的失敗可能使得之前的全部努力都付諸東流。

這個 app 本身的賣點似乎只強調了內容的安全性,並沒有強調它的匿名性。至少從 PRISM 的初衷來看,監聽者並不一定需要知道通信的內容才有用。僅僅知道通信的元信息【比如發送者、接受方、時間地點等等】在很多情況下便足夠了。當然,作為一個簡訊工具,元信息的數據量和通信內容的數據量基本在一個數量級上,所以完全監聽的額外成本也不是特別大【發送多媒體的情況除外】。實際上面對海量的數據,監聽方在有限資源約束下也不可能全部偵聽通信內容。托「大數據」、「機器學習」等新技術的福,監聽方可以從那些你覺得完全微不足道的邊角信息得出遠遠超出想像的精準判斷。比如 Nature 上最近的這篇論文 [1] 的研究表明,在手機基站級別的定位精度【遠不如 GPS 準確】上,在 15 個月的記錄數據中只需要區區四個數據點便可以唯一確定約 50 萬人中 95% 的準確身份。這,才是 PRISM 的牛逼之處,而大眾在技術、心理、政治等各個層面都對此毫無防備。

[1]: Unique in the Crowd: The privacy bounds of human mobility : Scientific Reports : Nature Publishing Group


一個可能的設計是:

1. 每個用戶都有一對公鑰私鑰

2. 用戶把自己的公鑰公布給朋友, 讓朋友信任自己的公鑰(當面確認,簡訊發送)

發送消息時,用戶在客戶端用自己的私鑰對信息做sign然後用收信人的公鑰對信息加密並發送,收信人從取得信息解密並確認信息的發信人,這樣做到:

1. 發信人能確認只有收信人能看到信息內容

2. 收信人能確認發信人是誰,防止信息偽造

PGP是一個廣泛使用的加密標準(rfc 4880), 安全性應該值得信賴,可能特別需要注意的是加密過程中生成的對稱加密的密鑰的不可預測性.

另外我覺得如果Heml能公布協議應該能驗證Heml是否做了任何可疑操作.

已有的類是應用有: http://threema.ch/en/


如@Rio 所說,不開源,就談不上安全,畢竟此時所謂的「安全」只是開發者的一家之言,大家並不清楚到底是不是這樣。


有一個聊天工具是
加密聊天工具 BitTorrent Chat 這個加密應該是比較靠譜的

&> BitTorrent 公司正在開發使用公鑰系統加密通信和認證用戶身份的無伺服器即時聊天系統。開發 BitTorrent 協議和 μTorrent 軟體的 BitTorrent 在今年 9 月宣布它正在一個新的 IM 系統,今天在官方博客上介紹其工作原理,以及一個用公鑰取代用戶名新穎的認證系統。BitTorrent Chat 沒有用戶名,你的身份是一個加密密鑰對。對 BitTorrent Chat 網路中的其他人而言,你就是你的公鑰,你可以在不透露身份的情況下使用Chat,兩位用戶只要交換了公鑰就可以互相聊天。BitTorrent Chat將使用一個分散式哈希表尋找 IP 地址,不需要中心伺服器路由信息...

1. Solidot | BitTorrent開發基於公鑰加密的去中心IM

2. BitTorrent Chat Alpha

3. Update on BitTorrent Chat修改

如何評價加密聊天工具 BitTorrent Chat,它會像 BT 一樣流行起來嗎? - 知乎

如何評價加密聊天工具 BitTorrent Chat,它會像 BT 一樣流行起來嗎?


去中心化點對點傳輸類似比特信(Bitmessage),分為公匙和私匙。發送消息的時候,發送者用接收者的公匙加密後向全網廣播,中間接收到消息的節點,都會幫忙繼續廣播,一直傳到接收者那裡,接收者用自己的私匙解密來自發送者的消息。

比特信 BitMessage


方濱興是何等的英明?

你在牛逼的加密,天河計算機秒破你,


這個不能說是100%的安全吧


因為是用公鑰私鑰交換會話密鑰來保證的安全性.這個手機端的運算速度很慢.所以能夠起到的安全作用也有限


查詢官網代碼,發現是用了一個代號為SMSMD的技術


推薦閱讀:

如何自學 Swift 語言?
Android 系統體驗不如 iOS 真正的技術屏障在哪裡?
有哪些被「差評保護」的APP?
什麼是遊戲應用壞賬?開發者得不到的錢,會返還給卡主嗎?

TAG:即時通訊IM | iOS應用 | 海盜灣ThePirateBay |