Secure Internet Live Conferencing
Total Page:16
File Type:pdf, Size:1020Kb
Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Secure Internet Live Conferencing Frank Benkstein <[email protected]> 26.10.2007, 19:12:23h Frank Benkstein <[email protected]> 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 <[email protected]> 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 <[email protected]> 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 (Instant Messaging) I Multimedia-Fähigkeit I Datei-Transfer I Sicherheit I Modularität Frank Benkstein <[email protected]> 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 Server Frank Benkstein <[email protected]> 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 <[email protected]> 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 <[email protected]> Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Topologie Server Frank Benkstein <[email protected]> Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Topologie Zelle Frank Benkstein <[email protected]> Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Topologie Router zu Router Frank Benkstein <[email protected]> Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Topologie Ring-Mesh Frank Benkstein <[email protected]> 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 <[email protected]> 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 <[email protected]> Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll SILC-Paket Frank Benkstein <[email protected]> Secure Internet Live Conferencing Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll SILC-Paket-Header Frank Benkstein <[email protected]> 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 <[email protected]> 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 <[email protected]> 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 <[email protected]> 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 <[email protected]> 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 <[email protected]> Secure Internet Live Conferencing.