Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

Secure Live Conferencing

Frank Benkstein

26.10.2007, 19:12:23h

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

Übersicht

I Einführung

I SILC vs. IRC vs. XMPP

I Architektur

I Protokoll

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

Geschichte Geschichte

1996 Idee und Entwurf durch Pekka Riikonen 1997 erster Code 1998 Rewrite in C++ 1999 Rewrite in C 2000 erste Veröffentlichung der Quelltexte Einreichung der Spezifikationen bei der IETF 2003 SILC-Client 1.0

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

Design Ziele

I Echtzeit-Text-Kommunikation

I Viele-Zu-Viele (ähnlich IRC) I Eins-Zu-Eins ()

I Multimedia-Fähigkeit

I Datei-Transfer

I Sicherheit

I Modularität

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

Protokoll-Eigenschaften Protokoll-Eigenschaften

I Verschlüsselung

I gesamte Kommunikation verschüsselt und authentifiziert I unverschlüsselte Kommunikation unmöglich*

I Signatur von Nachrichten I Unicode (UTF-8) statt ASCII

I Nicknames I Channel-Namen I Nachrichten

I Peer-to-Peer für Dateitransfer

I alles andere über

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

Protokoll-Eigenschaften Clients

I eindeutige Client-ID I Nicknamen

I nicht eindeutig* I UTF-8 I bis zu 128 Bytes (!) lang

I gleicher Public-Key möglich

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

Protokoll-Eigenschaften Channels

I eindeutiger Name (256 Bytes)

I Shared-Key I Sicherung

I Rechte-System (Operator, Founder) I Zugangslisten, Banlisten I geheime Schlüssel I Unsichtbarkeit

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

Topologie Server

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

Topologie Zelle

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

Topologie Router zu Router

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

Topologie Ring-Mesh

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

Channel-Nachrichten

I Schlüssel

I regelmäßige Regenerierung I Zellen-lokal

I zwischen Routern mit Session-Key verschlüsselt

I Signierung möglich

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll private Nachrichten

I verschiedene Verschlüsselungsmethoden

I Session-Key I separater Key-Exchange I Public-Key

I Signierung möglich

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

SILC-Paket

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

SILC-Paket-Header

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

SILC-Key-Exchange

I Rollenverteilung

I Initiator (bietet an) I Responder (wählt aus)

I Vereinbarung

I Protokoll-Version I DH-Gruppen I PKCS-Algorithmus I Verschlüsselung I Hashes I HMAC I Kompression

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

SILC-Authentication

I einseitige oder beidseitige Authentifizierung

I Public-Key-basiert

I Passphrase

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll andere Paket-Typen

I 29 verschiedene Typen durch Protokoll definiert

I 54 Typen zur freien Verfügung

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

SILC-Command-Pakete

I wichtigster Paket-Typ

I 27 verschiedene Typen durch Protokoll definiert

I 54 Typen zur freien Verfügung

I komplex zu erzeugen

I komplex zu parsen

Frank Benkstein Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll

Fazit

I komplexes Problem

I komplexes Protokoll

I bessere Alternativen nicht vorhanden

I aktuelle Implementation nur wenig besser als IRC oder Jabber

Frank Benkstein Secure Internet Live Conferencing