Beschreibung
Verfahren und Vorrichtung zur Kontrolle von Netzelementen in einem dezentralen Netzwerk
Im Stand der Technik sind dezentrale Netzwerke bekannt, bei denen ein überwiegender Anteil von verbundenen Netzelementen anderen Netzelementen Funktionen und Dienstleistungen anbieten und andererseits von anderen Netzelementen angebotene Funktionen und Dienstleitungen nutzen kann, ohne dass hierzu eine zentrale steuernde Instanz vorgesehen sein muss . Mit anderen Worten nimmt ein betrachtetes Netzelement gegenüber einem anderen Netzelement fallweise eine Rolle als Server bzw . eine Rolle als Client ein . Ein mit dem dezentralen Netzwerk verbundenes Netzelement wird in Abgrenzung von einer üblichen Client-Server-Einordnung oftmals auch als »Peer« bezeichnet . Demzufolge werden solche dezentralen Netzwerke auch als Peer- to-Peer-Netzwerke oder abkürzend als P2P-Netzwerke bezeichnet .
Die Begriffsabgrenzung eines dezentralen Netzwerks schließt im Übrigen das Vorhandensein zentraler Instanzen nicht generell aus . Auch auf Mischformen von Netzwerken, bei denen bestimmte Aufgaben auf eine zentrale Instanz bzw . Server verla- gert sind, wird mit der Bezeichnung dezentrales Netzwerk bzw . P2P-Netzwerk Bezug genommen, soweit in diesen Netzwerken kein Server vorgehalten ist, über den jegliche Kommunikationsbeziehung zwischen zwei Netzelementen zu führen ist .
In dezentralen Netzwerken werden Dienste nicht von zentralen Instanzen, sondern zwischen einzelnen Netzelementen erbracht . Die Netzelemente führen z . B . Zugangskontrollen durch und melden Vergebührungen der in Anspruch genommenen Dienste an zentrale Server, oder berechnen sich diese gegenseitig .
Im Folgenden wird exemplarisch ein auf dem Prinzip verteilter Hash-Tabellen (Distributed Hash Tables , DHTs ) organisiertes
dezentrales Netzwerk betrachtet, bei dem Ressourcen dezentral verfügbar sind. Der Begriff Ressource umfasst dabei Daten aller Art wie beispielsweise Informationen, Dateien, Dienste usw . Zur Bildung der verteilten Hash-Tabellen wird eine Hash-Funktion eingesetzt . Die Anwendung dieser Hash-Funktion auf eine Ressource oder auf einen Schlüsselbegriff liefert einen eindeutigen Hash-Wert bzw . Indexwert zur Indizierung der Ressource .
Ein weiteres Indexierungsverfahren zur Abbildung von Ressourcen auf numerische Indexwerte liefert der so genannte SQUID- Agorithmus , der auf einer Anwendung von flächenhaften Kurven (Space Filling Curves , SFC) beruht .
In einem Netzwerk der genannten Art werden Ressourcen dezentral auf denj enigen Netzelementen gespeichert, deren »P2P Adresse«, also beispielsweise der aus der IP-Adresse (Internet Protocol) und Portnummer des Netzelements gebildete Hash-Wert am besten mit dem Indexwert der Resource (z . B . Hash-Wert ei- nes Suchbegriffes etc . ) übereinstimmt .
Die Netzelemente dieses dezentralen Netzwerks authentifizieren sich und den von Ihnen veranlassten Datenaustausch durch digitale Signaturen und Zertifikate . Diese Zertifikate werden von einer vertrauenswürdigen, zentralen Zertifizierungsstelle (Certification Authority, CA) im voraus ausgestellt und als Ressource im dezentralen Netzwerk vorgehalten .
Ein Verfahren zum Vorhalten von Zertifikaten in einem dezen- tralen Netzwerk wurde in der am 29. Januar2004 beim Deutschen Patent- und Markenamt hinterlegten Anmeldung mit dem Anmeldeaktenzeichen 10 2004 004 606.9 und dem Titel »Schaltungsanordnung und Verfahren zur Kommunikationssicherheit innerhalb von Kommunikationsnetzen« vorgeschlagen, das sich unter ande- rem dadurch auszeichnet, dass in vorteilhafter Weise keine
Server zur Bereitstellung von erstellten und abgespeicherten Zertifikaten im laufenden Betrieb erforderlich sind.
Das Vorhandensein eines gültigen Zertifikates dient des weiteren als Autorisierungsnachweis , welcher von der Zertifizierungsstelle an berechtigte Netzelemente vergeben wird. Ein berechtigtes Netzelement ist beispielsweise ein von einem zahlenden Kunden benutztes Rechnersystem.
Ein Verfahren zum Widerruf von Zertifikaten wurde in der am 12. August 2004 beim Europäischen Patentamt hinterlegten An- meidung mit dem Anmeldeaktenzeichen 04019230.4 und dem Titel »Verfahren zur Sicherstellung von Authentizität und/oder Vertraulichkeit in einem P2P-Netzwerk« vorgeschlagen . Das dortige Verfahren zeichnet sich durch eine Vorhaltung von Zertifikats-Widerruflisten als Ressourcen in einem dezentralen Netz- werk aus .
Sollen Daten wie z . B . ein Anwenderprofil eines Netzelements oder Nachrichten an abwesende Netzelemente als Ressourcen in das dezentrale Netzwerk eingebracht werden, müssen sie vom erzeugenden Netzelement digital signiert werden . Das Netzelement berechnet hierzu einen Indexwert (beispielsweise Hash-Wert) dieser Daten und signiert diesen anschließend mit einem privaten Schlüssel, der zu dem öffentlichen Schlüssel aus dem Zertifikat des Netzelementes korrespondiert . Damit ist neben dem Integritätsschutz auch gewährleistet, dass nur autorisierte und authentifizierte Netzelemente Daten im dezentralen Netzwerk ablegen können .
Dieser Datensatz kann zur Vergebührung auch an eine Sammel- stelle übertragen werden . Hierzu wurde ein Verfahren zum Erfassen von Abrechnungsdaten in der am 23. August 2004 beim Deutschen Patent- und Markenamt hinterlegten Anmeldung mit dem Anmeldeaktenzeichen 10 2004 040 766.5 und dem Titel »Verfahren und Anordnung zur Vergebührung in einem dezentralen Netzwerk« vorgelegt .
Wenn ein Netzelement bestimmte Ressourcen wie beispielsweise ein fremdes Anwenderprofil, für ihn gespeicherte Nachrichten usw . von einem anderen Netzelement erhalten will, muss es eine signierte Anfrage stellen, um sich zu autorisieren und zu authentifizieren . Diese Anfrage kann ebenfalls zur Vergebüh- rung verwendet werden . Damit ist sowohl eine Zugangskontrolle zum Netzwerk als auch eine verbrauchsbezogene Vergebührung möglich .
Ein Nachteil einer solchen dezentralen Architektur ist allerdings , dass dezentrale Netzelemente manipuliert werden können . Eine Manipulation ist insbesondere bei rein softwarebasierten Peers durch eine Untersuchung und Modifikation der maschinenlesbaren Instruktionen der Software bzw . »Reverse Engineering« leicht möglich . Einige mögliche böswillige Manipulationen sind im Folgenden dargestellt .
1. Austausch eines »Root-Zertifikates« der Zertifizierungsstelle : Diese Manipulation führt dazu, dass Nutzer mit einer entsprechend manipulierten Peer-Software ein eigenes paralleles Netzwerk aufbauen . Eine Kommunikation mit dem ursprünglichen Netzwerk ist dann nicht mehr möglich . Dieses parallele Netzwerk unter Verwendung einer manipulierten Peer-Software ist bezüglich des Datenaustauschs von einem »legalen« Netzwerk kaum zu unterscheiden . Ein Anbieter legaler Peer-Software könnte ein Netzelement, auf dem bekanntermaßen eine manipulierte Peer-Software mit ausgetauschtem Root-Zertifikat zum Ablauf gebracht wird, einsetzen, um weitere Netzelemente mit manipulier- ter Peer-Software ausfindig zu machen und gegen deren
Nutzer rechtliche Schritte einleiten . Zum Auffinden weiterer Quellen manipulierter Peer-Software könnte der Anbieter einen Download-Site ausfindig machen, auf dem die manipulierte Software angeboten wird. 2. Umgehen bzw . Deaktivierung von Vergebührungsfunktionen : Der Peer stellt Dritten weiterhin seine Daten und Leis-
tungen zur Verfügung, erzeugt aber keine Vergebührungsin- formationen oder leitet diese nicht weiter .
3. Umgehen bzw . Deaktivierung von Zugangskontrollfunktionen : Ein Peer stellt Dritten ohne Überprüfung deren Berechti- gung, d. h . ohne Ausübung einer Zugangskontrolle zum Netzwerk, Leistungen zur Verfügung, obwohl diese zum Empfang der Leistungen unter Umständen nicht berechtigt sind.
4. Umgehen bzw . Deaktivierung der Protokollfunktionen : Ein Peer unterdrückt eine Meldung oder Weiterleitung von A- lärm- und Protokollierungsinformationen, wenn er ungültige Anfragen erhält oder andere Probleme auftreten . Das Ausschalten von Protokollierungsfunktionen an sich stellt keine direkte Beeinträchtigung des Netzwerks , kann aber der Vorbereitung weiterer Manipulationen dienen . Eine au- tomatische Detektierung einer in dieser Hinsicht manipulierten Peer-Software ist aufwändig, da der gesamte Datenaustausch eines Netzelements protokolliert werden müsste .
Eine Umgehung bzw . Deaktivierung von Vergebührungsfunktionen (obiger Punkt 2 ) und/oder Zugangskontrollfunktionen (Punkt 3) auf dem eigenen Netzelement bringt dem Nutzer dieses Netzelements selbst keinen eigenen Nutzen . Wenn aber immer mehr Nutzer derart manipulierte Peer-Software verwenden, werden Ver- gebührung und Zugangskontrolle nach und nach außer Kraft gesetzt . Eine Unterbindung derart manipulierter Peer-Software liegt daher im berechtigten Interesse des Peer-to-Peer- Netzwerkbetreibers . Hierzu gilt es mit beträchtlichem Aufwand, Netzelemente mit manipulierter Peer-Software im dezen- tralen Netzwerk ausfindig zu machen, ihre Zertifikate zu widerrufen sowie geeignete Maßnahmen gegen ihre Nutzer zu ergreifen .
Allen erläuterten Gegenmaßnahmen zur Abwehr manipulierter Software ist gemein, dass sie lediglich ad-hoc unter hohem
Einsatz investigativ-personeller Mittel einsetzbar sind. Automatisierbare Gegenmaßnahmen zum Einsatz von unauthorisier-
ter Peer-to-Peer-Software sind im Stand der Technik derzeit nicht bekannt .
Es ist daher eine Aufgabe der Erfindung, verbesserte Mittel zur Durchführung von Gegenmaßnahmen für einen Einsatz von manipulierter Peer-to-Peer-Software anzugeben, mit denen die aus dem Stand der Technik bekannten Nachteile vermieden werden .
Eine Lösung der Aufgabe erfolgt in einem Kommunikationssystem mit den Merkmalen des Patentanspruchs 1 hinsichtlich ihres Verfahrensaspekts durch ein Verfahren mit den Merkmalen des Patentanspruchs und hinsichtlich ihres Vorrichtungsaspekts durch ein Netzelement mit den Merkmalen des Patentanspruchs 14. Die Aufgabe wird zudem durch ein Computerprogrammprodukt mit den Merkmalen des Patentanspruchs 15 gelöst
Das erfindungsgemäße Verfahren zur Kontrolle von Netzelementen in einem dezentralen Netzwerk, bei dem zumindest ein ers- ter Teil der Netzelemente zumindest temporär einen Dienst für zumindest einen zweiten Teil von Netzelementen bereitstellt, sieht in einem ersten Schritt eine Auswahl eines zu kontrollierenden zweiten Netzelements durch ein erstes Netzelement vor . Bei dem ersten Netzelement kann es sich - im Sinne der bekannten Peer-to-Peer-Aufgabenverteilung - um einen ansonsten normal arbeitendes Netzelement, oder aber um einen dezi- dierten Kontroll-Peer handeln, dessen Aufgabe in einer z . B . zyklischen Kontrolle anderer Netzelemente bzw . Peers liegt . Das zweite Netzelement ist das zu überprüfende Netzelement . Die Auswahl des zweiten Netzelements erfolgt z . B . nach einem zyklischen Kontrollschema oder nach der Abarbeitung einer Liste, welche verdächtig arbeitende Netzelemente enthält (Black List) oder auch stichprobenartig . Im Übrigen ist die Auswahl nach j edem beliebigen Kriterium möglich . In einem zweiten Verfahrensschritt erfolgt eine Definition von einer
Anfragenachricht zuzuordnenden Parametern . Bei diesen Parametern handelt es sich um simulierte Parameter, beispielsweise
eine zum intendierten Kontrollzweck vorgegebene Absenderadresse - Alias-Adresse - des ersten Netzelements , welche nicht unbedingt mit der tatsächlichen Absenderadresse des ersten Netzelements übereinstimmen muss . Weitere Parameter umfassen z . B . ein Zertifikat, eine Anfragesignatur, einen Zeitstempel usw . In einem nächsten Verfahrensschritt erfolgt eine Übermittlung der so definierten Anfragenachricht an das zweite Netzelement und, in einem letzten Verfahrensschritt, eine A- nalyse einer die Anfragenachricht beantwortenden mindestens einen Antwortnachricht
Ein wesentlicher Vorteil des erfindungsgemäßen Verfahrens ist darin zu sehen, dass die erfindungsgemäß vorgeschlagene automatisierte Analyse anhand von Anfrage- und Antwortnachrichten bislang notwendige zeit- und personalintensive Ad-hoc-Maß- nahmen mit einer Vor-Ort-Inspektion manipulierter Peer-to- Peer-Software erübrigt .
Da es sich bei dem kontrollierenden Peer um einen ansonsten in üblicher Weise und Hierarchie arbeitenden Peer handeln kann, sind zur Umsetzung des erfindungsgemäßen Verfahrens in vorteilhafter Weise keine Änderungen in der Architektur des Netzwerks und keine weiteren Eingriffe in der Software anderer Netzelemente notwendig .
Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen angegeben .
In vorteilhafter Weise erfolgt eine Analyse anhand der zuvor im ersten Netzelement gespeicherten Parameter und der in der mindestens einen Antwortnachricht enthaltenen Parameter . Diese Speicherung ist insbesondere bei einer weiter unten erläuterten Ausgestaltung der Anfragenachricht mit gültigen Parametern angebracht, um eine Analyse basierend auf Inhalten der Antwortnachricht im Vergleich mit Inhalten der Anfragenachricht zu erstellen .
Eine vorteilhafte Ausgestaltung der Erfindung betrifft eine Ausgestaltung der Anfragenachricht mit gültigen Parametern, z . B . ordnungsgemäße Signatur, Zertifikat, Zeitstempel, etc . Das kontrollierende erste Netzelement ist berechtigt, diese Anfragen auszuführen, und erwartet eine entsprechend ordnungsgemäße Antwort . Das zu kontrollierende Netzelement sieht diese Anfragenachricht als ordnungsgemäß und veranlasst eine entsprechend ordnungsgemäße Antwort . Bei einer simulierten Anforderung eines kostenpflichtigen Dienstes ist eine Verge- bührung des Dienstes erforderlich . Das kontrollierende Netzelement prüft diese ordnungsgemäße Vergebührung, die es von einer Sammelstelle bzw . Vergebührungsstelle bestätigen lässt . Erhält das erste Netzelement keine gültige Antwortnachricht oder - im Fall einer simulierten Anforderung eines kosten- Pflichtigen Dienste - keine Bestätigung der Gebührenstelle, so wurde die Peer-to-Peer-Software des überprüften zweiten Netzelements mit hoher Wahrscheinlichkeit manipuliert . Das Ergebnis der Analyse ist in diesem Fall negativ . Falls der Datentransport im Netzwerk nicht zuverlässig ist und Nach- richten (UDP-Pakete etc . ) verloren gehen können, ist diese Überprüfung gegebenenfalls mehrfach zu wiederholen .
Eine vorteilhafte Ausgestaltung der Erfindung betrifft eine Ausgestaltung der Anfragenachricht mit ungültigen oder feh- lerhaften Parametern . Fehlerhafte Parameter sind beispielsweise ein abgelaufenes und/oder widerrufenes und/oder ungültiges , oder ein von anderen, im dezentralen Netzwerk nicht anerkannten Zertifizierungsstelle ausgestelltes Zertifikat . Fehlerhafte Parameter sind im Weiteren eine falsche Anfragen- Signatur, eine veraltete Anfrage mit abgelaufenem Zeitstempel, etc .
Eine Beantwortung derartiger ungültiger Anfragenachrichten muss ein korrekt arbeitendes Netzelement mit nicht manipu- lierter Peer-to-Peer-Software verweigern . Wird die Anfrage trotzdem beantwortet, so wurde ein Netzelement mit manipulierter Peer-to-Peer-Software gefunden . Wird die Anfrage j e-
doch nicht beantwortet, so prüft das kontrollierende erste Netzelement zusätzlich, ob eine Alarmmeldung vom getesteten Netzelement bei einer Sammelstelle, beispielsweise einem sogenannten »Logging-System« eintrifft . Das Ausbleiben einer solchen Alarmmeldung kann in gleicher Weise auf eine manipulierte Peer-to-Peer-Software hindeuten . Auch hier kann gegebenenfalls eine Widerholung der Überprüfung vorgesehen sein, falls Nachrichten verloren gehen können .
Ein Ausführungsbeispiel mit weiteren Vorteilen und Ausgestaltungen der Erfindung wird im Folgenden anhand der Zeichnung näher erläutert .
Dabei zeigt die FIG ein Strukturbild zur schematischen Dar- Stellung eines dezentralen Netzwerks .
Ein dezentrales Netzwerk P2P umfasst ein erstes Netzelement PX sowie zwei weitere Netzelemente Pl , P2. Jedes der vorgenannten Netzelemente Pl , P2 , PX hält ein Zertifikat C1 , C2 , CX vor . Das Zertifikat CX des ersten Netzelement PX ist dabei zu Kontrollzwecken einstellbar bzw . veränderbar .
Eine erste und eine zweite Sammelstelle SVl , SV2 sind entweder - wie dargestellt - außerhalb des dezentralen Netzwerks P2P angeordnet oder auch - nicht dargestellt - innerhalb des dezentralen Netzwerks P2P angeordnet .
Es wird nun davon ausgegangen, dass das zu überprüfende Netzelement Pl mit einer durch das prüfende Netzelement PX veran- lassten ordnungsgemäßen Anfragenachricht VRQ (»Valid Re- quest«) überprüft werden soll . Die simulierte Anfragenachricht wird mit einer gültigen Signatur, einem gültigen Zertifikat CX, einem aktuellen Zeitstempel, etc . versehen .
Für den hier angenommenen Fall, dass das zu überprüfende
Netzelement Pl korrekt arbeitet, trifft zu einem darauf folgenden Zeitpunkt eine gültige Antwortnachricht VRP (»Valid
Response«) am prüfenden Netzelement PX ein . Das prüfende Netzelement PX kontrolliert in einer Anfrage REQ an eine zentrale Vergebührungsstelle SVl eine korrekte Vergebührung des vom zu überprüfenden Netzelement angeforderten Dienstes . Trifft eine Antwort RSP von der Vergebührungsstelle SVl ein, welche eine korrekte Vergebührung anzeigt, ist das Ergebnis der Analyse bezüglich des zu überprüfenden Netzelements Cl positiv . Das Ergebnis der Analyse wird optional an eine - nicht dargestellte - Sammelstelle übertragen .
Es wird im Folgenden davon ausgegangen, dass ein weiteres zu überprüfendes Netzelement P2 mit einer durch das prüfende Netzelement PX veranlassten fehlerhaften oder ungültigen Anfragenachricht IRQ (»Invalid Request«) überprüft werden soll . Die simulierte Anfragenachricht IRQ enthält z . B . ein abgelaufenes und/oder widerrufenes und/oder ungültiges , oder ein von anderen, im dezentralen Netzwerk nicht anerkannten Zertifizierungsstelle ausgestelltes Zertifikat CX . Fehlerhafte Parameter sind im weiteren eine falsche Anfragensignatur, eine veraltete Anfrage mit abgelaufenem Zeitstempel, etc . Eine positive Beantwortung der ungültigen Anfragenachricht IRQ müsste ein korrekt arbeitendes Netzelement mit nicht manipulierter Peer-to-Peer-Software verweigern .
Im vorliegenden Fall sei auf dem zu überprüfenden Netzelement P2 eine manipulierte Peer-to-Peer-Software zum Ablauf gebracht, weshalb die ungültige Anfragenachricht IRQ trotzdem mit einer Antwortnachricht IRP (»Invalid Response«) beantwortet wird. Das Ergebnis der Analyse ist also negativ und wird optional an eine - nicht dargestellte - Sammelstelle übertragen .
Wäre die ungültige Antwortnachricht nicht eingetroffen, prüft das kontrollierende erste Netzelement PX zusätzlich, ob eine Alarmmeldung vom getesteten Netzelement bei einer Sammelstelle, beispielsweise einem sogenannten »Logging-System« eintrifft . Das Ausbleiben einer solchen Alarmmeldung deutet in
gleicher Weise auf eine manipulierte Peer-to-Peer-Software hin .
Mit dem erfindungsgemäßen Verfahren ist es möglich, alle Netzelemente bzw . Peers Pl , P2 im Netzwerk P2P stichprobenartig zu überprüfen . Je größer der Anteil an manipulierten Peers P2 ist, umso schneller werden solche aufgefunden . Sind nur sehr wenige manipulierte Peers P2 vorhanden, ist die Entdeckungswahrscheinlichkeit zwar sehr gering, allerdings rich- ten diese Peers P2 dann auch einen geringeren Schaden an und können - j e nach der Policy der Netzwerk-Administration - vorübergehend geduldet werden .