OMEMO
OMEMO是由Andreas Straub開發的XMPP協議的端到端加密擴展程序。Straub 稱OMEMO使用雙棘輪算法以「提供多端到多端加密,允許在多個客戶端之間安全地同步消息,即使其中一些是離線狀態」。[1] "OMEMO 是"OMEMO Multi-End Message and Object Encryption"的遞歸縮寫。 它是一個基於雙棘輪算法和個人事件協議(Personal Eventing Protocol, XEP-0163)的開放標準。[2] OMEMO 提供前向保密、消息同步和離線傳達。
![](http://upload.wikimedia.org/wikipedia/commons/thumb/e/e1/OMEMO_logo.svg/220px-OMEMO_logo.svg.png)
特性
編輯與OTR(XMPP的另一個加密擴展)相比,OMEMO協議提供多端到多端加密通信、離線消息隊列、前向保密、文件傳輸和建立在略微更大的消息體積上的可核實性和可否認性。[3]
歷史
編輯該協議最初是作為Google編程之夏一個計劃,由Andreas Straub於2015年開發,計劃的目的是實現使用雙棘輪算法的多端到多端加密協議到名為Conversations的Andorid即時通信客戶端,該協議於Conversations首次實現並被提交至XMPP標準基金會 (XSF),並在2016年12月被接受,成為XEP-0384擴展。[1]
2016年7月,ChatSecure計劃也宣布其將實現OMEMO。並在2017年1月17日的v4.0版本中支持。[4][5]
跨平台XMPP客戶端Gajim的OMEMO插件在2015年12月26日可用。[6]
2016年6月,非盈利計算機安全諮詢公司Radically Open Security發布了對OMEMO協議的分析。[7]
客戶端支持情況
編輯部分支持OMEMO的IM客戶端列表[8]:
- BeagleIM(macOS)[9]
- ChatSecure (iOS)[10]
- Conversations (Android)
- Converse.js (基於瀏覽器)[11]
- Dino (Linux, macOS)[12]
- Gajim 通過官方插件 (Linux, Windows, BSD)[13]
- Monal (iOS)
- Movim (基於瀏覽器)[14]
- Psi 通過官方插件 (Linux, Windows, macOS)[15]
- Psi+ 通過官方插件 (Linux, Windows, macOS, Haiku, FreeBSD)[16]
- libpurple客戶端Pidgin或Finch等等,通過實驗性插件 [17]
- Adium 通過基於的libpurple插件[18]
- Profanity 通過實驗性插件 (BSD, Linux, macOS, Windows)[19]
- SiskinIM (iOS)[9]
庫支持情況
編輯參考來源
編輯- ^ 1.0 1.1 [Standards] NEW: XEP-0384 (OMEMO Encryption). 2016-12-07 [2016-12-23]. (原始內容存檔於2020-08-08).
- ^ Daniel Gultsch. OMEMO Multi-End Message and Object Encryption. [2015-11-23]. (原始內容存檔於2016-04-10).
- ^ OMEMO Multi-End Message and Object Encryption. conversations.im. [2019-01-22]. (原始內容存檔於2016-04-10) (英語).
- ^ ChatSecure iOS v3.2.3 - XMPP Push. 2016-07-25 [2016-09-07]. (原始內容存檔於2022-05-11).
- ^ ChatSecure v4.0 - OMEMO and Signal Protocol. 2017-01-17 [2017-02-07]. (原始內容存檔於2018-06-19).
- ^ Bahtiar Gadimov. Initial OMEMO commit. dev.gajim.org. 2015-12-26 [2017-09-08]. (原始內容存檔於2017-09-08).
- ^ OMEMO: Cryptographic Analysis Report (PDF). 2016-06 [2022-08-21]. (原始內容存檔 (PDF)於2021-11-09).
- ^ Are we OMEMO yet?. Are we OMEMO yet?. [2019-01-22]. (原始內容存檔於2022-08-12) (美國英語).
- ^ 9.0 9.1 BeagleIM and SiskinIM just got OMEMO support. tigase.net. [2019-06-07]. (原始內容存檔於2019-07-04).
- ^ ChatSecure v4.0 - OMEMO and Signal Protocol. chatsecure.org. [2017-01-17]. (原始內容存檔於2018-06-19).
- ^ XEP-0384: OMEMO Encryption · Issue #497 · conversejs/converse.js. GitHub. [2019-11-20]. (原始內容存檔於2022-08-21) (英語).
- ^ Dino - Modern Jabber/XMPP Client using GTK+/Vala. dino.im. [2017-11-06]. (原始內容存檔於2022-08-10).
- ^ Bahtiar Gadimov; et al. Omemogajimplugin · Wiki · gajim / gajim-plugins · GitLab. [2016-12-04]. (原始內容存檔於2018-06-19).
- ^ End to end encryption in Movim - OMEMO is (finally) there!. mov.im. [2021-12-15]. (原始內容存檔於2022-02-19).
- ^ Vyacheslav Karpukhin. OMEMO for Psi · GitHub. [2018-03-04]. (原始內容存檔於2022-05-05).
- ^ Vyacheslav Karpukhin. Psi+ snapshots. [2018-03-04].
- ^ Richard Bayerle. lurch - OMEMO for libpurple. [2017-02-12]. (原始內容存檔於2017-02-18).
- ^ Olivier Mehani. Lurch4Adium - OMEMO Xtra for Adium. [2017-06-08]. (原始內容存檔於2022-10-24).
- ^ René Calles. profanity-omemo-plugin: A Python plugin to use (axolotl / Signal Protocol) encryption for the profanity XMPP messenger. [2017-01-10]. (原始內容存檔於2018-06-11).
- ^ Schaub, Paul. Ignite Realtime Blog: Smack v4.2 Introduces OME... | Ignite Realtime. community.igniterealtime.org. 6 June 2017 [2017-07-11]. (原始內容存檔於2017-07-15) (英語).
- ^ Robbiehanson/XMPPFramework. 2021-10-26 [2022-08-21]. (原始內容存檔於2022-08-21).
- ^ Robbiehanson/XMPPFramework. 2021-10-26 [2022-08-21]. (原始內容存檔於2022-08-22).
外部連結
編輯- XEP-0384: OMEMO Encryption (頁面存檔備份,存於網際網路檔案館)
- 實現OMEMO的Python庫 (頁面存檔備份,存於網際網路檔案館)
- C語言的OMEMO協議實現 (頁面存檔備份,存於網際網路檔案館)
- OMEMO Top - 各客戶端OMEMO支持的排行榜