다이렉트 엔드 투 엔드 시큐어 채팅 프로토콜
Direct End to End Secure Chat ProtocolIANA(Internet Assigned Numbers Authority)는 공식적으로 포트 4605를 Sixscape Communications, Pte.에 의해 작성된 SixChat End2End Direct 보안 메시징 프로토콜에 할당했습니다.이 할당은 2014년 9월 11일에 IANA에 의해 발행되었으며, 공식 IANA 리소스 레지스트리에 등재되어 있습니다.https://www.iana.org/assignments/service-names-port-numbers
IANA가 현재 프로토콜 설계 표준을 준수하고 기존 인터넷 표준에서 아직 다루지 않은 프로토콜에 대해 할당하는 포트 번호는 매우 제한적입니다.예를 들어 포트 25는 수년 전에 SMTP 이메일 프로토콜에 할당되었습니다.이를 통해 표준 포트를 제공하고 다른 프로토콜과의 충돌을 줄일 수 있습니다.SixChat 프로토콜의 기술적 검토는 인터넷 연구 태스크 포스의 저명한 의장 Lars Egert에 의해 수행되었다.
SixChat 메시징 프로토콜은 Lawrence E에 의해 만들어졌습니다.Sixscape Communications의 공동 설립자이자 CTO인 Hughes는 SixChat 인터넷 애플리케이션 소프트웨어 담당자입니다.새로운 프로토콜을 통해 두 개의 SixChat 사용자 에이전트가 직접 연결하여 X.509 클라이언트 디지털 인증서와 상호 인증을 수행한 다음 대칭 세션 키를 안전하게 교환할 수 있습니다(모든 컨텐츠 암호화).SixChat은 주소 레지스트리와 취득에 회사의 Identity Registration Protocol(IANA 할당 포트 4604)을 사용하고, 공개 키 인프라스트럭처 기능(클라이언트 디지털 증명서 취득 및 사용)을 사용하고 있습니다.
End2End Direct 메시징에는 관련된 모든 노드에 대해 글로벌하게 라우팅 가능한("퍼블릭") IP 주소가 필요합니다.Network Address Translation(NAT; 네트워크주소 변환)과는 호환되지 않습니다.프라이빗 인터넷(NAT 를 사용하지 않는 플랫주소 공간을 사용하는 IPv4 인터넷의 서브셋)내에서도, 퍼블릭 IPv6 인터넷상의 임의의 2 개의 노드간에 동작할 수 있습니다.NAT 에서는, 착신 접속이 방지되기 때문에, 모든 유저간 메세징은 중간 서버를 사용할 필요가 있습니다.
End2End Direct Messaging에는 중간 서버를 통한 간접 메시징보다 몇 가지 이점이 있습니다.End2End Direct 트래픽은 고도로 분산되어 통신자 간의 최단 네트워크 경로만 통과합니다.따라서 가로채기, 감시 또는 차단이 더욱 어려워집니다.중간 서버에서는 신뢰성, 신뢰성 및 보안 문제가 발생합니다.소수의 '초크 포인트'를 통과해야 하는 네트워크트래픽을 감시하거나 차단하는 것이 훨씬 쉬워집니다.
End2End Direct 메시징의 노드 이름 해결(노드 이름을 IP 주소에 매핑)에 DNS를 사용할 수 있지만, DNS는 점점 더 안전하지 않고 등록 또는 업데이트를 위한 사용자별 인증이 없으며 전파에 오랜 시간이 걸립니다.사용자에게 X.509 클라이언트 디지털 증명서를 공개하는 좋은 방법은 없으며 특정 사용자가 최근에 사용한 노드가 아닌 특정 네트워크 노드의 주소만 공개할 수 있습니다.IRP는 사용자별 인증(통상은 X.509 증명서 기반의 Strong Client Authentication을 사용)으로 매우 안전한 주소 레지스트리를 제공합니다.등록된 정보는 즉시 이용할 수 있습니다.모바일 노드(스마트폰 등)의 IP 주소는 다른 WiFi 액세스포인트에 접속함에 따라 자주 변경될 수 있습니다.이것은 DNS 모델에서는 올바르게 동작하지 않습니다.
SixChat End2End Messaging 프로토콜은 스트리밍 프로토콜(tcp 기반, 연결 지향)입니다.기본적으로 클라이언트/서버 기술인 TLS에서는 보안을 유지할 수 없습니다.X.509 클라이언트 디지털 증명서(서버 증명서 없음) 및 대칭 세션키 교환(공개/비공개 키 암호화 또는 Ephemeral Diffie Hellman 키 교환)만을 사용하여 상호 강력한 인증을 제공합니다.이 핸드쉐이크는 TLS 설계에 근거하고 있습니다만, 클라이언트/서버가 아니고, 피어간의 핸드쉐이 핸드쉐이크는 TLS 설계에 근거하고 있습니다.TLS와 달리 프로토콜 메시지는 전적으로 XML에 기반합니다.
End2End Direct 메시징을 지원하는 노드는 클라이언트도 서버도 아니지만 네트워크 연결을 시작하고 받아들일 수 있어야 합니다(따라서 클라이언트와 서버 모두의 특성이 있습니다).이러한 노드를 "사용자 에이전트"라고 합니다.