Skip to main content
Chat API를 사용하면 X에서 종단 간 암호화된 다이렉트 메시지를 주고받을 수 있습니다. 메시지 본문은 클라이언트에서 암호화되며, X는 암호문만 라우팅할 뿐 평문 내용을 읽을 수 없습니다. 메시지는 또한 서명되어 수신자가 발신자를 검증할 수 있습니다.

앱에 필요한 구성 요소

전체 구현은 **시작하기**를 참조하세요. 개념만 확인하려면 **암호화 기초**를 참조하세요.

암호화 동작 방식 (개요)

  1. 신원(identity)서명(signing) 키페어를 생성하고, 개인 키를 안전하게 저장합니다 (보안 키 백업 또는 보호된 blob 사용).
  2. 다른 사람이 사용자와 대화 키를 교환하고 서명을 검증할 수 있도록 공개 키를 게시합니다.
  3. 각 참가자에게 암호화된 사본을 게시하여 대화 키를 공유합니다.
  4. 발신 메시지를 암호화하고 서명하여, X에는 암호문만 전송합니다.
  5. 웹훅, 스트림 또는 이벤트 이력을 통해 암호문을 수신합니다.
  6. Chat XDK로 검증하고 복호화합니다.

유용한 엔드포인트

사이드바의 API 참조 아래에 그룹화되어 있으며, 다음을 포함합니다:
  • 공개 키 — 등록 및 조회
  • 대화 및 메시지 — 대화 목록/조회, 키 추가/교체, 이벤트, 전송, 입력 중, 읽음, 그룹 멤버십
  • 미디어 — 암호화된 첨부 파일 업로드 및 다운로드 (가이드)

인증 참고 사항

DM 관련 스코프(dm.read, dm.write, 필요에 따라 users.read / tweet.read; 업로드에는 media.write)와 함께 OAuth 2.0 사용자 컨텍스트를 사용하세요. 사용자에 대한 X Chat 활동을 이용하려면 해당 사용자의 승인이 필요합니다. 보안 키 백업 구성은 본인의 공개 키 레코드(juicebox_config 필드)에 반환됩니다. 시작하기를 참조하세요.

다음 단계

  1. 암호화 기초 — E2EE 개념에 대한 선택적 배경 지식
  2. 시작하기 — 키 구현, 전송 및 수신
  3. Chat XDK — 암호화 SDK 참조
  4. 필요한 주제에 따라 실시간 이벤트, 미디어, 또는 문제 해결