메모리

OMEMO
OMEMO 로고

OMEMO는 Andreas Straub에 의해 개발된 멀티 클라이언트 엔드 투 엔드 암호화를 위한 XMPP(Extensible Messaging and Presence Protocol)의 확장입니다.Straub에 따르면 OMEMO는 이중 래칫 알고리즘을 사용하여 "멀티엔드에서 멀티엔드로의 암호화를 제공하여 메시지 중 일부가 오프라인인 경우에도 여러 클라이언트에서 안전하게 동기화할 수 있도록 합니다."[1]"OMEMO"라는 이름은 "OMEMO Multi-End Message and Object Encryption"의 재귀 약자입니다.Double Ratchet Algorithm과 Personal Eventing Protocol(PEP, XEP-0163)[2]에 기반한 개방형 표준입니다.OMEMO는 메시지 동기화 및 오프라인 전달을 통해 미래 및 미래 및 미래 비밀 유지 및 거부 기능을 제공합니다.

특징들

OTR과 비교하여 OMEMO 프로토콜은 다대다 암호화 채팅, 오프라인 메시지 큐잉, 전송 비밀, 파일 전송, 검증 가능성 및 거부 기능을 약간 더 큰 메시지 크기 [3]오버헤드로 제공합니다.

역사

이 프로토콜은 Andreas Straub에 의해 2015년 Google Summer of Code 프로젝트로 개발되고 처음 구현되었습니다.이 프로젝트의 목표는 Android XMPP 기반의 인스턴트 메시징 클라이언트인 Conversations에 이중 래칫 기반의 멀티 엔드 투 멀티 엔드 암호화 스킴을 구현하는 것이었다.2015년 가을에 제안된 XMPP 확장 프로토콜(XEP)로 대화에 도입되어 XMPP 표준 재단(XSF)에 제출되었으며 2016년 [1]12월에 XEP-0384로 승인되었다.

2016년 7월 ChatSecure 프로젝트는 다음 릴리즈에서 OMEMO를 구현할 것이라고 발표했습니다.ChatSecure v4.0은 OMEMO를 지원하며 2017년 [4][5]1월 17일에 출시되었습니다.

크로스 플랫폼 XMPP 클라이언트 Gajim을 위한 OMEMO 플러그인의 첫 번째 실험 릴리스는 2015년 [6]12월 26일에 제공되었습니다.

2016년 6월 비영리 컴퓨터 보안 컨설팅 회사인 Recratical Open Security는 OMEMO [7]프로토콜에 대한 분석을 발표했습니다.

클라이언트 지원

OMEMO를 지원하는 선택된 클라이언트(클라이언트의 전체 목록도[8] 있음):

라이브러리 지원

  • smack은 smack-omemo와 smack-omemo-signal의[20] 2가지 모듈을 사용하여 OMEMO를 지원합니다.
  • XMPPFramework(macOS, iOS, tvOS)는 SignalProtocol-ObjC [23]라이브러리와 함께 사용할 경우 OMEMO 스케줄 확장을 통해 OMEMO를 지원합니다.

레퍼런스

  1. ^ a b "[Standards] NEW: XEP-0384 (OMEMO Encryption)". 2016-12-07. Retrieved 2016-12-23.
  2. ^ Daniel Gultsch. "OMEMO Multi-End Message and Object Encryption". Retrieved 2015-11-23.
  3. ^ "OMEMO Multi-End Message and Object Encryption". conversations.im. Retrieved 2019-01-22.
  4. ^ "ChatSecure iOS v3.2.3 - XMPP Push". 2016-07-25. Retrieved 2016-09-07.
  5. ^ "ChatSecure v4.0 - OMEMO and Signal Protocol". 2017-01-17. Retrieved 2017-02-07.
  6. ^ Bahtiar Gadimov (2015-12-26). "Initial OMEMO commit". dev.gajim.org. Retrieved 2017-09-08.
  7. ^ OMEMO: 암호 분석 보고서.2016년 6월
  8. ^ "Are we OMEMO yet?". Are we OMEMO yet?. Retrieved 2019-01-22.
  9. ^ a b "BeagleIM and SiskinIM just got OMEMO support". tigase.net. Retrieved 2019-06-07.
  10. ^ "ChatSecure v4.0 - OMEMO and Signal Protocol". chatsecure.org. Retrieved 2017-01-17.
  11. ^ "XEP-0384: OMEMO Encryption · Issue #497 · conversejs/converse.js". GitHub. Retrieved 2019-11-20.
  12. ^ "Dino - Modern Jabber/XMPP Client using GTK+/Vala". dino.im. Retrieved 2017-11-06.
  13. ^ Bahtiar Gadimov; et al. "Omemogajimplugin · Wiki · gajim / gajim-plugins · GitLab". Retrieved 2016-12-04.
  14. ^ "End to end encryption in Movim - OMEMO is (finally) there!". mov.im. Retrieved 2021-12-15.
  15. ^ Vyacheslav Karpukhin. "OMEMO for Psi · GitHub". Retrieved 2018-03-04.
  16. ^ Vyacheslav Karpukhin. "Psi+ snapshots". Retrieved 2018-03-04.
  17. ^ Richard Bayerle. "lurch - OMEMO for libpurple". Retrieved 2017-02-12.
  18. ^ Olivier Mehani. "Lurch4Adium - OMEMO Xtra for Adium". Retrieved 2017-06-08.
  19. ^ René Calles. "profanity-omemo-plugin: A Python plugin to use (axolotl / Signal Protocol) encryption for the profanity XMPP messenger". Retrieved 2017-01-10.
  20. ^ Schaub, Paul (6 June 2017). "Ignite Realtime Blog: Smack v4.2 Introduces OME... Ignite Realtime". community.igniterealtime.org. Retrieved 2017-07-11.
  21. ^ "Robbiehanson/XMPPFramework". 26 October 2021.
  22. ^ "Robbiehanson/XMPPFramework". 26 October 2021.
  23. ^ "SignalProtocolObjC". 30 January 2021.

외부 링크