Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC...

20
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

Transcript of Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC...

Page 1: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

Page 2: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

Übersicht

I EinführungI SILC vs. IRC vs. XMPPI ArchitekturI Protokoll

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 3: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

Geschichte

Geschichte

1996 Idee und Entwurf durch Pekka Riikonen1997 erster Code1998 Rewrite in C++1999 Rewrite in C2000 erste Veröffentlichung der Quelltexte

Einreichung der Spezifikationen bei der IETF2003 SILC-Client 1.0

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 4: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

Design

Ziele

I Echtzeit-Text-KommunikationI Viele-Zu-Viele (ähnlich IRC)I Eins-Zu-Eins (Instant Messaging)

I Multimedia-FähigkeitI Datei-TransferI SicherheitI Modularität

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 5: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

Protokoll-Eigenschaften

Protokoll-Eigenschaften

I VerschlüsselungI gesamte Kommunikation verschüsselt und authentifiziertI unverschlüsselte Kommunikation unmöglich*

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

I NicknamesI Channel-NamenI Nachrichten

I Peer-to-Peer für DateitransferI alles andere über Server

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 6: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

Protokoll-Eigenschaften

Clients

I eindeutige Client-IDI Nicknamen

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

I gleicher Public-Key möglich

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 7: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

Protokoll-Eigenschaften

Channels

I eindeutiger Name (256 Bytes)I Shared-KeyI Sicherung

I Rechte-System (Operator, Founder)I Zugangslisten, BanlistenI geheime SchlüsselI Unsichtbarkeit

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 8: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

Topologie

Server

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 9: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

Topologie

Zelle

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 10: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

Topologie

Router zu Router

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 11: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

Topologie

Ring-Mesh

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 12: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

Channel-Nachrichten

I SchlüsselI regelmäßige RegenerierungI Zellen-lokal

I zwischen Routern mit Session-Key verschlüsseltI Signierung möglich

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 13: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

private Nachrichten

I verschiedene VerschlüsselungsmethodenI Session-KeyI separater Key-ExchangeI Public-Key

I Signierung möglich

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 14: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

SILC-Paket

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 15: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

SILC-Paket-Header

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 16: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

SILC-Key-Exchange

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

I VereinbarungI Protokoll-VersionI DH-GruppenI PKCS-AlgorithmusI VerschlüsselungI HashesI HMACI Kompression

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 17: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

SILC-Authentication

I einseitige oder beidseitige AuthentifizierungI Public-Key-basiertI Passphrase

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 18: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

andere Paket-Typen

I 29 verschiedene Typen durch Protokoll definiertI 54 Typen zur freien Verfügung

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 19: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

SILC-Command-Pakete

I wichtigster Paket-TypI 27 verschiedene Typen durch Protokoll definiertI 54 Typen zur freien VerfügungI komplex zu erzeugenI komplex zu parsen

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing

Page 20: Secure Internet Live Conferencing · Secure Internet Live Conferencing. Einführung SILC vs. IRC vs. XMPP Architektur Nachrichten Protokoll Protokoll-Eigenschaften Clients I eindeutige

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

Fazit

I komplexes ProblemI komplexes ProtokollI bessere Alternativen nicht vorhandenI aktuelle Implementation nur wenig besser als IRC oder

Jabber

Frank Benkstein <[email protected]>

Secure Internet Live Conferencing