-
Technischer Bereich
-
Die
vorliegende Erfindung bezieht sich auf ein Übertragungs-/Empfangssystem,
und insbesondere auf eine Technik zur Verhinderung unautorisierter
Verwendung von Inhalten in Inhaltsverteilungen.
-
Stand der Technik
-
In
den letzten Jahren sind Heimnetzwerke zur Realität geworden. In derartigen Netzwerken
teilen Geräte
in einem Haus, die über
das Netzwerk verbunden sind, Inhalte. In einer Form eines derartigen Heimnetzwerkes
sind Geräte
wie ein Server, Fernseher und Audiogeräte sternförmig mit einem zentralen Hub
verbunden. Der Hub ist mit einem Router verbunden, der das einzige
Gerät des
Hauses ist, das mit einem externen Netzwerk verbunden ist. Der Server
speichert verschiedene Inhalte, die er von dem externen Netzwerk über den
Hub und den Router erhält,
und verteilt dann die Inhalte an die Geräte als Reaktion auf Anforderungen
von diesen Geräten. Dies
erlaubt es den Geräten,
die verschiedenen Inhalte miteinander zu teilen.
-
Unbegrenztes
Miteinanderteilen von Inhalten ist jedoch vom Standpunkt der Sicherung
des Urheberrechts unakzeptabel. Demzufolge müssen Inhalte, die nur von Geräten in dem
Haus verwendet werden dürfen,
so beschränkt
werden, dass sie nicht an externe Geräte verteilt werden. (Im Folgenden
wird der Begriff "autorisierte
Domäne" (AD) verwendet, um
den begrenzten Bereich zu bezeichnen, innerhalb dessen die Inhalte
geteilt werden dürfen).
Wenn daher der Server eine Anforderung für die Verteilung von Inhalten
von einem Gerät
empfängt,
ist es für
den Server erforderlich, sicherzustellen, dass das Gerät sich innerhalb
der AD befindet, bevor der Inhalt an das Gerät verteilt wird.
-
Die
ungeprüfte
japanische Offenlegungsschrift
Nr. 2001-285284 offenbart ein Verfahren, das IP (Internetprotokoll)
Netzwerkadressen in den Vordergrund stellt. In diesem Verfahren
beurteilt ein Server ob die Netzwerkadresse eines Geräts, das
die Verteilung von Inhalten angefordert hat, die gleiche ist, wie
die Netzwerkadresse des Servers, und erkennt das Gerät als in
der AD befindlich, wenn die Netzwerkadressen die gleichen sind.
-
Da
die Einstellungen in der Netzwerkadresse jedoch leicht über die
Benutzerschnittstelle geändert werden
können,
kann ein böswilliger
Benutzer die AD-Netzwerkadresse in einem externen Gerät einspeichern.
Wenn eine Verteilungsanforderung von einem derartigen externen Gerät empfangen
wird, erkennt der Server das externe Gerät als innerhalb der AD befindlich
und verteilt die Inhalte an das externe Gerät. Demzufolge kann die Verteilung
von Inhalten an Geräte
außerhalb
der AD nicht beschränkt
werden.
-
Menezes
A.J. et al.: "Handbook
of Applied Cryptography",
CRC press, US, Boca Raton, 1997, Seite 352–368, offenbart die Verwendung
von CRC-basierten MAC zur Nachrichtenauthentifizierung.
-
US 2002/0170013 offenbart
ein Kommunikationsverfahren zwischen zwei Einheiten, wobei eine zyklische
Redundanzprüfung
auf Daten und Benutzergeräte-IDs
beruht.
-
Offenbarung der Erfindung
-
Das
Ziel der vorliegenden Erfindung besteht darin, ein Empfangs-/Übertragungssystem
zur Verfügung
zu stellen, in dem die Verteilung von Inhalten an Geräte außerhalb
der AD beschränkt
ist, und in dem die Einstellungen nicht einfach geändert werden
können.
-
Dies
wird mit den Merkmalen der unabhängigen
Ansprüche
erreicht. Bevorzugte Ausführungsformen
sind Gegenstand der abhängigen
Ansprüche.
-
Gemäß eines
Aspekts der vorliegenden Erfindung halten eine Übertragungsvorrichtung und eine
Empfangsvorrichtung eine gemeinsame geheime Information und wenden
jeweils unter Verwendung der geheimen Information eine vorbestimmte Codeumwandlung
auf die Kommunikationsdaten an, wodurch entsprechende Prüfcodes erzeugt
werden. Demgemäß wird der
Prüfcode,
der von der Übertragungsvorrichtung
an die Kommunikationsdaten angehängt übertragen
wurde, und der Prüfcode,
der durch die Empfangsvorrichtung erzeugt wird, übereinstimmen, wenn kein Fehler
in den Kommunikationsdaten auf dem Übertragungsweg aufgetreten
ist.
-
Wenn
die Übertragungsvorrichtung
Inhaltedaten als Kommunikationsdaten überträgt, erhält die Empfangsvorrichtung
die Inhaltedaten, wenn der an die Inhaltedaten angehängte Prüfcode und
der von der Empfangsvorrichtung aus den Inhaltdaten erzeugte Prüfcode übereinstimmen.
Wenn die beiden Prüfcodes
nicht übereinstimmen,
bedeutet dies, dass ein Fehler in den Inhaltedaten auf dem Übertragungspfad
aufgetreten ist, und die Empfangsvorrichtung schließt deshalb
daraus, dass die Inhaltedaten nicht korrekt verwendet werden können, und
verwirft die Inhaltedaten. Die Empfangsvorrichtung stellt dann eine
erneute Übertragungsanforderung
an die Übertragungsvorrichtung
und erhält
schließlich
Inhaltedaten, in denen der Fehler nicht aufgetreten ist.
-
In
einer anderen Empfangsvorrichtung, die die geheime Information gemeinsam
mit der Übertragungsvorrichtung
nicht hält,
wird der Prüfcode,
der an die Inhaltedaten angehängt
ist, und ein Prüfcode,
der durch die andere Empfangsvorrichtung erzeugt wird, nicht übereinstimmen
und von daher wird die andere Empfangsvorrichtung schließen, dass
die Inhaltedaten nicht korrekt verwendet werden können, und
die Inhaltedaten verwerfen. Selbst wenn die andere Empfangsvorrichtung
anschließend
eine erneute Übertragungsanforderung
an die Übertragungsvorrichtung
stellt, werden die Prüfcodes
nicht übereinstimmen.
-
Auf
diese Weise wird die unbeschränkte
Verteilung von Inhaltedaten dadurch beschränkt, dass die Übertragungsvorrichtung
und die Empfangsvorrichtung eine gemeinsame geheime Information
halten und Prüfcodes
verwenden, die erzeugt werden, indem eine vorbestimmte Codeumwandlung
unter Verwendung der geheimen Information angewendet wird.
-
Man
beachte, dass ein möglicher
Aufbau darin besteht, dass die Übertragungsvorrichtung
Authentifizierungsdaten als Kommunikationsdaten überträgt, bevor Inhalte verteilt
werden. Dabei wird nur eine Empfangsvorrichtung, die die gemeinsame geheime
Information hält
und in der Lage ist, eine vorbestimmte Codeumwandlung unter Verwendung der
geheimen Information anzuwenden, die Authentifizierungsdaten erhalten
können.
Die Empfangsvorrichtung überträgt Antwortdaten,
die eine Antwort auf die Authentifizierungsdaten sind, an die Übertragungsvorrichtung.
-
Gemäß eines
anderen Aspekts der vorliegenden Erfindung wird der Prüfcode entweder
in einem ersten Modus oder einem zweiten Modus erzeugt, und die Übertragungsvorrichtung
und die Empfangsvorrichtung wählen
einen Modus aus, der für
die Kommunikationsdaten vorbestimmt ist, und erzeugen den Prüfcode. Der
von der Übertragungsvorrichtung
in dem ersten Modus erzeugte Prüfcode stimmt
nur dann mit dem von der Empfangsvorrichtung erzeugten Prüfcode überein,
wenn der von der Empfangsvorrichtung erzeugte Prüfcode im ersten Modus erzeugt
wurde. In anderen Worten, nur eine bestimmte Empfangsvorrichtung,
die die mit der Übertragungsvorrichtung
gemeinsame geheime Information hält,
ist in der Lage, die Kommunikationsdaten zu erhalten.
-
Da
andererseits die geheime Information zur Erzeugung des Prüfcodes im
zweiten Modus nicht verwendet wird, sind die Kommunikationsdaten
nicht darauf beschränkt,
nur durch eine bestimmte Empfangsvorrichtung empfangen zu werden,
wenn der zweite Modus verwendet wird.
-
Wenn
demzufolge vorbestimmt ist, dass die Inhaltedaten nur beschränkt verteilt
werden dürfen, wird
der Prüfcode
im ersten Modus erzeugt, wohingegen für Inhaltedaten, die nicht beschränkt werden müssen, der
Prüfcode
in dem zweiten Modus erzeugt wird, so dass es möglich ist, die Verteilung nur
für die Inhaltedaten
zu beschränken,
für die
die Verteilung beschränkt
werden muss.
-
Gemäß eines
anderen Aspekts der vorliegenden Erfindung übermittelt eine Übermittlungsvorrichtung
beim Empfangen von Kommunikationsdaten, die für eine externe Vorrichtung
bestimmt sind, die Kommunikationsdaten, wenn der an die Kommunikationsdaten
angehängte
Prüfcode
und der von der Übermittlungsvorrichtung
aus den Kommunikationsdaten erzeugte Prüfcode übereinstimmen, und übermittelt
die Kommunikationsdaten nicht, wenn die beiden Prüfcodes nicht übereinstimmen.
Da hier die Übermittlungsvorrichtung
nur in dem zweiten Modus arbeitet, der die vorbestimmte Codeumwandlung
auf die Kommunikationsdaten anwendet, übermittelt die Vermittlungsvorrichtung
die Kommunikationsdaten, die einen in dem ersten Modus erzeugten
Prüfcode haben,
nicht.
-
Demzufolge
kann verhindert werden, dass Inhaltedaten, für die bestimmt wurde, dass
der Prüfcode
in dem ersten Modus erzeugt wird, an eine externe Vorrichtung übermittelt
werden.
-
Gemäß eines
anderen Aspekts der vorliegenden Erfindung wird der erste Modus
oder der zweite Modus individuell für die jeweiligen Kommunikationsdaten
ausgewählt.
-
Wenn
demzufolge bestimmt wurde, dass für Inhaltedaten, deren Verteilung
beschränkt
werden muss, der Prüfcode
in dem ersten Modus erzeugt werden muss, und dass für Inhaltedaten,
die nicht beschränkt
werden müssen,
der Prüfcode
in dem zweiten Modus erzeugt wird, ist es möglich, nur die Verteilung von
den Inhaltedaten zu beschränken,
für die die
Verteilung beschränkt
werden muss.
-
Gemäß eines
anderen Aspekts der vorliegenden Erfindung hält eine integrierte Schaltung
die mit der Empfangsvorrichtung gemeinsame geheime Information und
wendet eine vorbestimmte Codeumwandlung auf die Kommunikationsdaten
unter Verwendung der geheimen Information an, um so einen Prüfcode zu
erzeugen. Wenn die Empfangsvorrichtung einen ähnlichen Aufbau zur Erzeugung
eines Prüfcodes
durch Anwendung einer vorbestimmten Codeumwandlung auf die Kommunikationsdaten
unter Verwendung der geheimen Information hat, werden der Prüfcode, der
angehängt
an die Kommunikationsdaten durch die integrierte Schaltung übertragen wird,
und der Prüfcode,
der durch die Empfangsvorrichtung erzeugt wird, übereinstimmen, wenn kein Fehler
in den Kommunikationsdaten auf dem Kommunikationspfad aufgetreten
ist.
-
Wenn
die integrierte Schaltung Inhaltedaten als Kommunikationsdaten überträgt, erhält die Empfangsvorrichtung
die Inhaltedaten, wenn der an die Inhaltedaten angehängte Prüfcode und
der Prüfcode, der
von der Empfangsvorrichtung aus den Inhaltedaten erzeugt wurde, übereinstimmen.
Wenn die beiden Prüfcodes
nicht übereinstimmen,
bedeutet dies, dass ein Fehler in den Inhaltedaten auf dem Übertragungspfad
aufgetreten ist, und die Empfangsvorrichtung daher davon ausgeht,
dass die Inhaltedaten nicht korrekt verwendet werden können, und
die Inhaltedaten verwirft. Die Empfangsvorrichtung stellt sodann
eine erneute Übertragungsanforderung
an die integrierte Schaltung und erhält schließlich Inhaltedaten, in denen
kein Fehler aufgetreten ist.
-
In
einer anderen Empfangsvorrichtung, die die geheime Information gemeinsam
mit der integrierten Schaltung nicht hält, werden andererseits der
Prüfcode,
der an die Inhaltedaten angehängt
ist, und ein Prüfcode,
der durch die andere Empfangsvorrichtung erzeugt wird, nicht übereinstimmen
und deshalb wird die andere Empfangsvorrichtung schließen, dass
die Inhaltedaten nicht korrekt verwendet werden können, und
die Inhaltedaten verwerfen. Selbst wenn die andere Empfangsvorrichtung
im Anschluss eine erneute Übertragungsanforderung
an die integrierte Schaltung stellt, werden die Prüfcodes nicht übereinstimmen.
-
Auf
diese Weise kann die unbegrenzte Verteilung der Inhaltedaten durch
die integrierte Schaltung, die eine mit der Empfangsvorrichtung
gemeinsame geheime Information hält,
und durch die Verwendung eine Prüfcodes,
der durch die Anwendung einer vorbestimmten Codeumwandlung unter
Verwendung der geheimen Information erzeugt wird, beschränkt werden.
-
Man
beachte, dass ein möglicher
Aufbau darin besteht, dass die integrierte Schaltung Authentifizierungsdaten
als Kommunikationsdaten überträgt, bevor
Inhalte verteilt wer den. Dieser Aufbau entspricht dem Aufbau, wie
er für
die Übertragung
von Inhaltedaten als Kommunikationsdaten beschrieben wurde.
-
Gemäß eines
anderen Aspektes der vorliegenden Erfindung hält eine integrierte Schaltung
eine mit der Übertragungsvorrichtung
gemeinsame geheime Information und wendet eine vorbestimmte Codeumwandlung
auf die Kommunikationsdaten unter Verwendung der geheimen Information
an, um so einen Prüfcode
zu erzeugen. Wenn die Übertragungsvorrichtung
einen ähnlichen
Aufbau zur Erzeugung eines Prüfcodes
durch Anwendung einer vorbestimmten Codeumwandlung auf die Kommunikationsdaten
unter Verwendung der geheimen Information hat, werden der Prüfcode, der
an die Kommunikationsdaten angehängt
durch die Übertragungsvorrichtung übertragen
wurde, und der Prüfcode,
der durch die integrierte Schaltung erzeugt wird, übereinstimmen,
wenn kein Fehler in den Kommunikationsdaten auf dem Kommunikationspfad
aufgetreten ist.
-
Wenn
die Übertragungsvorrichtung
Inhaltedaten als Kommunikationsdaten überträgt, erhält die integrierte Schaltung
die Inhaltedaten, wenn der an die Inhaltedaten angehängte Prüfcode und
der Prüfcode,
der von der integrierten Schaltung aus den Inhaltedaten erzeugt
wird, übereinstimmen.
Wenn die beiden Prüfcodes
nicht übereinstimmen,
bedeutet dies, dass ein Fehler in den Inhaltedaten auf dem Kommunikationspfad
aufgetreten ist, und die integrierte Schaltung schließt daher,
dass die Inhaltedaten nicht korrekt verwendet werden können, und
verwirft die Inhaltedaten. Die integrierte Schaltung stellt sodann
eine erneute Übertragungsanforderung
an die Übertragungsvorrichtung
und erhält
schließlich die
Inhaltedaten, in denen kein Fehler aufgetreten ist.
-
In
einer anderen integrierten Schaltung, die keine mit der Übertragungsvorrichtung
gemeinsame geheime Information hält,
wird andererseits der an die Inhaltedaten angehängte Prüfcode und ein von der anderen
integrierten Schaltung erzeugter Prüfcode nicht übereinstimmen
und die andere integrierte Schaltung wird daher schließen, dass
die Inhaltedaten nicht korrekt verwendet werden können, und
verwirft die Inhaltedaten. Selbst wenn die andere integrierte Schaltung
anschließend
eine erneute Übertragungsanforderung
an die Übertragungsvorrichtung stellt,
werden die Prüfcodes
nicht übereinstimmen.
-
Auf
diese Weise wird die unbegrenzte Verteilung von Inhaltedaten durch
die integrierte Schaltung, die die von der Übertragungsvorrichtung gemeinsame
geheime Information hält,
und durch die Verwendung eines Prüfcodes, der durch Anwendung einer
vorbe stimmten Codeumwandlung unter Verwendung der geheimen Information
erzeugt wird, beschränkt.
-
Man
beachte, dass ein möglicher
Aufbau darin besteht, dass die Übertragungsvorrichtung
Authentifizierungsdaten als Kommunikationsdaten überträgt, bevor Inhalte verteilt
werden. Dieser Aufbau entspricht dem Aufbau, der für die Übertragung von
Inhaltedaten als Kommunikationsdaten beschrieben wurde.
-
Gemäß eines
anderen Aspekts der vorliegenden Erfindung hält eine Inhalteverteilungsvorrichtung
gemeinsam mit einer Inhalteverwendungsvorrichtung eine geheime Information
und wendet eine vorbestimmte Codeumwandlung auf die Anforderungsdaten
unter Verwendung der geheimen Information an, um so einen Prüfcode zu
erzeugen.
-
Außerdem hält die Inhalteverwendungsvorrichtung
eine mit der Inhalteverteilungsvorrichtung gemeinsame geheime Information
und wendet eine vorbestimmte Codeumwandlung auf die Anforderungsdaten
unter Verwendung der geheimen Information an, um so einen Prüfcode zu
erzeugen.
-
Demzufolge
werden der Prüfcode,
der an die Anforderungsdaten angehängt durch die Inhalteverteilungsvorrichtung übertragen
wird, und der Prüfcode,
der durch die Inhalteverwendungsvorrichtung auf Basis der Anforderungsdaten
erzeugt wird, übereinstimmen,
wenn kein Fehler in den Anforderungsdaten auf dem Kommunikationspfad
aufgetreten ist.
-
Wenn
die Inhalteverwendungsvorrichtung feststellt, dass kein Fehler in
den Anforderungsdaten aufgetreten ist, decodiert sie die Anforderungsdaten und überträgt Antwortdaten
an die Inhalteverteilungsvorrichtung. Wenn die Inhalteverteilungsvorrichtung Antwortdaten
empfängt,
verteilt sie die Inhalte an die Inhalteverwendungsvorrichtung. Auf
diese Weise ist die Inhalteverwendungsvorrichtung in der Lage, die Verteilung
der Inhalte von der Inhalteverteilungsvorrichtung zu empfangen.
-
In
einer anderen Inhalteverwendungsvorrichtung, die die mit der Inhalteverteilungsvorrichtung
gemeinsame geheime Information nicht hält, werden andererseits der
an die Inhaltedaten angehängte Prüfcode und
ein von der anderen Inhalteverwendungsvorrichtung erzeugter Prüfcode nicht übereinstimmen
und die andere Inhalteverwendungsvorrichtung wird daher schließen, dass
die Inhaltedaten nicht korrekt verwendet werden können, und
die Inhaltedaten verwerfen. Selbst wenn die andere Inhalteverwendungs vorrichtung
anschließend
eine erneute Übertragungsanforderung
an die Inhalteverteilungsvorrichtung stellt, werden die Prüfcodes nicht übereinstimmen.
-
Auf
diese Weise wird die unbegrenzte Verteilung von Inhaltedaten durch
die Inhalteverteilungsvorrichtung und die Inhalteverwendungsvorrichtung, die
eine gemeinsame geheime Information halten, und die Verwendung von
Prüfcodes,
die durch Anwendung einer vorbestimmten Codeumwandlung unter Verwendung
der geheimen Information erzeugt werden, beschränkt.
-
Gemäß eines
anderen Aspekts der vorliegenden Erfindung wird ein Prüfcode, der
durch Anwendung der gleichen Codeumwandlung wie für die Anforderungsdaten
erzeugt wurde, an die Antwortdaten angehängt, und die Inhalteverteilungsvorrichtung entscheidet,
ob der an die Antwortdaten angehängte Prüfcode dem
Prüfcode
entspricht, der durch die Inhalteverteilungsvorrichtung für die Anforderungsdaten
erzeugt wurde.
-
Auf
diese Weise werden Prüfcodes,
die unter Verwendung der geheimen Information erzeugt wurden, zweimal
verwendet, d.h. für
die Anforderungsdaten und die Antwortdaten, und demzufolge ist die Authentifizierungsverarbeitung
zuverlässiger.
-
Kurze Beschreibung der Zeichnungen
-
1 zeigt
einen Überblick
einer AD der ersten Ausführungsform;
-
2 zeigt
den Aufbau eines Servers beim Ausführung der Authentifizierungsverarbeitung;
-
3 zeigt
den Aufbau eines Clients beim Ausführen der Authentifizierungsverarbeitung;
-
4 zeigt
den Aufbau einer Übertragungs-CRC-Einheit;
-
5 zeigt die Datenkonfiguration von (a) bis
(f) in 4;
-
6 zeigt
den Aufbau der Empfangs-CRC-Einheit;
-
7 zeigt die Datenkonfiguration von (g) bis
(j) in 6;
-
8 zeigt
den Betrieb des Servers und des Clients bei der Authentifizierungsverarbeitung;
-
9 zeigt
den Betrieb des Servers und eines Clients außerhalb der AD bei der Authentifizierungsverarbeitung;
-
10 zeigt
einen Überblick
einer AD in der zweiten Ausführungsform;
-
11 zeigt
den Aufbau eines Routers 50 beim Übertragen eines Frames von
einem Server 10 an einen Client 20;
-
12 zeigt
ein Beispiel einer externen Verteilungserlaubnisliste;
-
13 zeigt
den Betrieb des Routers 50, wenn ein Frame empfangen wurde;
-
14 zeigt
einen Überblick
einer AD der dritten Ausführungsform;
-
15 zeigt
den Aufbau des Routers 60 beim Übertragen eines Inhalte-Frames
vom Server 10 an den Client 20;
-
16 zeigt
ein Beispiel einer Liste authentifizierter Geräte; und
-
17 zeigt
den Betrieb des Routers 60 zur Weiterleitungsverarbeitung.
-
Beste Art und Weise zur Ausführung der
Erfindung
-
Im
Folgenden werden Ausführungsformen der
vorliegenden Erfindung unter Verwendung der Zeichnungen im Detail
erläutert.
-
Erste Ausführungsform
-
<Überblick>
-
1 zeigt
einen Überblick
der AD der ersten Ausführungsform.
-
Die
AD enthält
einen Server 10, einen Client 20, einen Router 30 und
einen Hub 40, wobei der Server 10 und der Client 20 sternförmig mit
den Hub 40 verbunden sind. Man beachte, dass andere Clients
als der Client 20 ebenfalls an den Hub 40 angeschlossen
sind, aber in der Zeichnung weggelassen wurden. Außerdem wird
angenommen, dass der Hub 40 keine CRC-Code-Fehlererkennung
durchführt.
-
Der
Router 30 ist das einzige Gerät in dem AD-Netzwerk, das mit
einem Netzwerk außerhalb
der AD (im Folgenden auch als externes Netzwerk bezeichnet) verbunden
ist. Der Server 10 erhält
Inhalte von dem externen Netzwerk über den Router 30 und spei chert
die Inhalte in einer Inhaltespeicherverteilungseinheit 11.
Wenn eine Inhalteverteilungsanforderung von dem Client 20 empfangen
wird, bestätigt der
Server 10 zunächst
gemäß der Authentifizierungsverarbeitung,
dass der Client 20 ein Gerät in der AD ist, und verteilt
sodann die Inhalte an den Client 20. Der verteilte Inhalt
wird dem Anwender über eine
Inhalteverfügungseinheit 21 des
Clients 20 zur Verfügung
gestellt.
-
Die
vorliegende Ausführungsform
ist dadurch charakterisiert, dass ein CRC (cyclic redundancy check,
zyklische Redundanzprüfung)
Code in der Authentifizierungsverarbeitung verwendet wird. Ein CRC-Code
ist Information, die sich am Ende eines Pakets der Datenverbindungsschicht
(im Folgenden Frame genannt) befindet, um zu erkennen, ob ein Fehler
in den eigentlich zu übertragenden
Daten (im Folgenden Kommunikationsdaten genannt) auf dem Kommunikationspfad
zwischen zwei aufeinanderfolgenden Endgeräten aufgetreten ist. In anderen
Worten, ein Frame besteht aus Kommunikationsdaten mit einem daran
angehängten
CRC-Code. Gewöhnlicherweise
wird eine Fehlererkennung mit einem CRC-Code wie folgt durchgeführt.
-
- (1) Das Übertragungsendgerät teilt
die Kommunikationsdaten, die der Fehlererkennung unterworfen werden
sollen, durch ein Erzeugerpolynom und verwendet den Rest als CRC-Code.
Das Übertragungsendgerät hängt den
berechneten CRC-Code an die Kommunikationsdaten an und überträgt die Kommunikationsdaten
mit dem CRC-Code an ein Empfangsendgerät.
- (2) Das Empfangsendgerät
teilt die Kommunikationsdaten mit dem daran angehängten CRC-Code mit
einem Erzeugerpolynom und stellt den Rest fest. Der Rest hat die
Eigenschaft, dass er den Wert Null hat, wenn kein Fehler auf dem Übertragungspfad
in einem Frame bestehend aus Kommunikationsdaten und einem CRC-Code
aufgetreten ist, und einem Wert verschieden von Null hat, wenn ein
Fehler aufgetreten ist.
- (3) Wenn der Wert des Rests Null ist, schließt das Empfangsendgerät, das kein
Fehler auf dem Kommunikationspfad aufgetreten ist, und erhält die Kommunikationsdaten.
Wenn sich der Wert des Rests von Null unterscheidet, schließt das Empfangsendgerät, dass
ein Fehler auf dem Kommunikationspfad aufgetreten ist, und verwirft die
Kommunikationsdaten.
-
In
der vorliegenden Ausführungsform
teilen das Übertragungsendgerät und das
Empfangsendgerät
vor (1) eine geheime Information, und das Übertragungsendgerät addiert
die geheime Information zu den Kommunikationsdaten um den CRC-Code
in (1) zu be rechnen. Das Empfangsendgerät fügt die geheime Information
ein, um den Rest in (2) zu berechnen.
-
Das
folgende ist ein konkretes Beispiel der Authentifizierungsverarbeitung
in 1.
-
Der
Server 10 und der Client 20 teilen eine geheime
Information Ks in einer geheimen Informationsspeichereinheit 13 und
einer geheimen Informationsspeichereinheit 23. In einer
Server-CRC-Einheit 14 berechnet der Server 10 einen
CRC-Code, nachdem die geheime Information Ks zu den Authentifizierungsdaten
addiert wurde, und überträgt den berechneten
CRC-Code angehängt
an das Ende der Authentifizierungsdaten an den Client 20.
-
Der
Client 20 empfängt
die Authentifizierungsdaten mit dem daran angehängten CRC-Code, fügt die geheime Information
Ks darin ein und berechnet den Wert des Rests. Wenn kein Fehler
auf dem Übertragungspfad
aufgetreten ist, wird der Wert des auf diese Weise berechneten Rests
Null sein, und der Client 20 ist daher in der Lage, die
Authentifizierungsdaten zu empfangen.
-
Nachdem
Empfangen der Authentifizierungsdaten überträgt der Client 20 Antwortdaten
an den Server 10, die anzeigen, dass die Authentifizierungsdaten
korrekt empfangen wurden.
-
Nachdem
die Antwortdaten empfangen wurden, erkennt der Server 10,
dass der Client 20 ein Gerät in der AD ist, und beendet
die Authentifizierungsverarbeitung.
-
Da
sowohl eine Kommunikationsschnittstelle 12 des Servers 10 und
eine Kommunikationsschnittstelle 22 des Clients 20 eine
spezielle CRC-Verarbeitung verwenden, die eine geheime Information
Ks addiert, um den CRC-Code zu berechnen, können auf diese Weise die Authentifizierungsdaten
gesendet und empfangen werden.
-
Andererseits
hat der Router 30 nicht die Funktion des Teilens der geheimen
Information in den Kommunikationsschnittstellen 31 und 32 und des
Ausführens
der speziellen CRC-Verarbeitung. Selbst
wenn der Router 30 die Authentifizierungsdaten mit dem
speziellen daran angehängten
CRC-Code empfängt,
führt er
die normale CRC-Verarbeitung aus. Der Router 30 erhält daher
einen von Null verschiedenen Wert als Rest und schließt, dass
ein Fehler in den Authentifizierungsdaten auf dem Übertragungspfad
aufgetreten ist, und verwirft die Daten.
-
Das
bedeutet, dass Clients außerhalb
der AD durch den Server 10 nicht authentifiziert werden, da
vom Server 10 übertragene
Authentifizierungsdaten durch den Router 30 verworfen werden,
wenn sie durch ihn durchgeleitet werden.
-
Außerdem wird
der CRC-Code durch eine Codierungsschaltung berechnet, die aus Exklusiv-Oder-Elementen
und Schieberegistern aufgebaut ist. Da die Codierungsschaltung normalerweise
in einer integrierten Schaltung in der Kommunikationsschnittstelle
vorgesehen ist, kann sie nicht leicht durch den Benutzer manipuliert
werden.
-
Demzufolge
verhindert die vorliegende Ausführungsform
eine Situation, in der der Server 10 oder der Router 30 durch
den Benutzer verändert werden
und Inhalte an Clients außerhalb
der AD verteilt werden.
-
<Aufbau>
-
Im
Folgenden wird der Aufbau des Servers und des Clients der vorliegenden
Ausführungsform beschrieben.
-
2 zeigt
den Aufbau des Servers beim Ausführung
der Authentifizierungsverarbeitung.
-
Außerdem zeigt 3 den
Aufbau des Clients beim Ausführen
der Authentifizierungsverarbeitung.
-
Der
Server 10 hat eine Server-Authentifizierungsverarbeitungseinheit 15 und
eine Kommunikationsschnittstelle 12. Die Kommunikationsschnittstelle 12 enthält die Halteeinheit 13 für die geheime
Information, einen Datenpuffer 121, eine Übertragungs-CRC-Einheit 122,
eine Übertragungseinheit 123,
eine Empfangseinheit 124, eine Empfangs-CRC-Einheit 125 und
eine Einstellungsempfangseinheit 126.
-
Der
Client 20 hat eine Client-Authentifizierungsverarbeitungseinheit 25 und
eine Kommunikationsschnittstelle 22, die einen internen
Aufbau identisch zu dem der Kommunikationsschnittstelle 12 des Servers 10 hat.
Man beachte, dass die Übertragungs-CRC-Einheit 122 und
die Empfangs-CRC-Einheit 125 der Server-CRC-Einheit 14 aus 1 entsprechen,
und die Übertragungs-CRC-Einheit 222 und
die Empfangs-CRC-Einheit 225 der Client-CRC-Einheit 24 aus 1 entsprechen.
-
Die
Kommunikationsschnittstelle 12 ist entweder auf den speziellen
CRC-Modus oder den normalen CRC-Modus beim Übertragen von Kommunikationsdaten
eingestellt. Der spezielle CRC-Modus ist ein Modus, in dem die Übertragungs-CRC-Einheit 122 und
die Empfangs-CRC-Einheit 125 die CRC-Verarbeitung ausführen, nachdem
die geheime Information Ks an die Kommunikationsdaten angehängt wurde.
Der normale CRC-Modus
ist ein Modus, in dem die Übertragungs-CRC-Einheit 122 und die
Empfangs-CRC-Einheit 125 die
CRC-Verarbeitung ausführen,
ohne die geheime Information Ks an die Übertragungsdaten anzuhängen. Die
Kommunikationsschnittstelle 12 schaltet zwischen den Moden um,
in dem die Einstellungsempfangseinheit 126 eine Anweisung
von der Server-Authentifizierungsverarbeitungseinheit 15 empfängt. Insbesondere
ist diese Anweisung entweder ein spezieller CRC-Befehl zum Einstellen
des spezielle CRC-Modus
oder ein normaler CRC-Befehl zum Einstellen des normalen CRC-Modus.
-
Man
beachte, dass in der Inhalteverteilungsverarbeitung die Inhaltespeicherverteilungseinheit 11 die
Kommunikationsschnittstelle 12 anweist, in einen für die speziellen
Inhalte bestimmten Modus umzuschalten.
-
Im
Folgenden wird ein einfaches Beispiel jeweils für den normalen CRC-Modus und
den speziellen CRC-Modus beschrieben.
-
<Voraussetzung>
-
Die
Bitseriennotation der Kommunikationsdaten (5 Bits), die der CRC-Verarbeitung
unterworfen wird, ist (10110).
-
Das
Erzeugerpolynom, das in diesem Beispiel verwendet wird, ist G(X)
= X3 + X2 + 1. In
diesem Fall ist die Bitseriennotation des Erzeugerpolynoms (1101).
Der CRC-Code besteht aus drei Bits, wenn dieses Erzeugerpolynom
verwendet wird.
-
Die
Bitseriennotation der geheimen Information (drei Bits) ist (110).
-
<Übertragungsverarbeitung
im normalen CRC-Modus>
-
- (1) Nulldaten (000), die die gleiche Zahl von
Bits haben wie der CRC-Code (d.h. 3 Bits), werden an das Ende der
Kommunikationsdaten (10110) angehängt, um so Berechnungsdaten
(10110000) zu erzeugen.
- (2) Die Berechnungsdaten (10110000) werden durch das Erzeugerpolynom
(1101) geteilt und der Rest festgestellt. Dieser Rest (101) wird
als CRC-Code verwendet. Hierbei wird die Teilung unter Verwendung
eines Exklusiv-Oders auf jedem Bit durchgeführt, was gleichbedeutend ist
mit einer Modulo-2-Operation.
- (3) Der CRC-Code wird an das Ende der Kommunikationsdaten (10110)
angehängt,
wodurch die Übertragungsdaten
(10110101) erzeugt werden.
-
<Empfangsverarbeitung
im normalen CRC-Modus>
-
- (1) Die Übertragungsdaten
(10110101) werden durch das Erzeugerpolynom (1101) geteilt und der Rest
festgestellt und es wird überprüft, ob der Wert
des Rests 0 ist. Die Division wird durchgeführt unter Verwendung der Modulo-2-Operation.
- (2) Wenn der Wert des Rests 0 ist, wird daraus geschlossen,
dass kein Fehler auf dem Kommunikationspfad aufgetreten ist, und
die Kommunikationsdaten (10110) werden gewonnen, indem der CRC-Code
von den Übertragungsdaten (10110101)
entfernt wird.
- (3) Wenn der Wert des Rests nicht 0 ist, wird daraus geschlossen,
dass ein Fehler auf dem Kommunikationspfad aufgetreten ist, und
die Übertragungsdaten
(10110101) werden verworfen.
-
Im
Folgenden wird der spezielle CRC-Modus beschrieben.
-
<Übertragungsverarbeitung
im speziellen CRC-Modus>
-
- (1) Die geheime Information (110) wird an das Ende
der Kommunikationsdaten (10110) angehängt und Nulldaten (000) mit
der gleichen Zahl von Bits wie der CRC-Code (d.h. 3 Bits) werden ebenfalls
an das Ende der sich ergebenden Daten angehängt, wodurch die Berechnungsdaten (10110110000)
erzeugt werden.
- (2) Die Berechnungsdaten (10110110000) werden durch das Erzeugerpolynom
(1101) geteilt und der Wert des Rests festgestellt. Der Wert des Rests
(010) wird als CRC-Code verwendet.
- (3) Der CRC-Code wird an das Ende der Kommunikationsdaten (10110)
angehängt,
wodurch die Übertragungsdaten
(10110010) erzeugt werden.
-
<Empfangsverarbeitung
im speziellen CRC-Modus>
-
- (1) Die Übertragungsdaten
(10110010) werden durch das Erzeugerpolynom (1101) geteilt und der Wert
des Rests festgestellt und es wird überprüft, ob der Wert des Rests 0
ist.
- (2) Wenn der Wert des Rests 0 ist, wird daraus geschlossen,
dass kein Fehler auf dem Kommunikationspfad aufgetreten ist, und
die Kommunikationsdaten (10110) werden gewonnen, indem der CRC-Code
von den Übertragungsdaten (10110010)
entfernt wird.
- (3) Wenn der Wert des Rest nicht 0 ist, wird daraus geschlossen,
dass ein Fehler auf dem Kommunikationspfad aufgetreten ist, und
die Übertragungsdaten
(10110010) werden verworfen.
-
Wenn
die Kommunikationsschnittstelle auf der Empfangsseite den speziellen
CRC-Modus nicht unterstützt, werden
die Übertragungsdaten (10110010),
die im speziellen CRC-Modus übertragen
wurden, im normalen CRC-Modus verarbeitet und der Wert des Rests
wird (111) sein und nicht 0. Demzufolge wird daraus geschlossen,
dass ein Fehler aufgetreten ist, und die Kommunikationsdaten (10110010)
werden verworfen.
-
Man
beachte, dass aus Gründen
der Einfachheit des Beispiels hier für die Kommunikationsdaten nur
fünf Bits
und für
die geheime Information drei Bits verwendet wurden, wohingegen in
der Realität
die Kommunikationsdaten ungefähr
60 Bytes bis 1500 Bytes (im Fall von IEEE 802.3) betragen und die
geheime Information z.B. 16 Bytes lang ist. Außerdem wird ein 33 Bit CRC-32
als Erzeugerpolynom verwendet, wie von ITU-T spezifiziert.
-
Die
Server-Authentifizierungsverarbeitungseinheit 15 führt eine
Authentifizierungsverarbeitung durch, indem sie mit dem Client 20 über die
Kommunikationsschnittstelle 12 kommuniziert.
-
Die
Authentifizierungsverarbeitung, die durch die Server-Authentifizierungsverarbeitungseinheit 15 in 2 durchgeführt wird,
besteht aus drei Stufen: (1) Teilen der geheimen Information Ks
mit der Client-Authentifizierungsverarbeitungseinheit 25, (2) Übertragung
eines Authentifizierungs-Frames an die Client-Authentifizierungsverarbeitungseinheit 25, und
(3) Feststellen, ob der Client 20 ein Gerät in der AD
ist, gemäß des Antwort-Frames
von der Client-Authentifizierungsverarbeitungseinheit 25.
-
Die
geheime Information Ks wird z.B. über eine Challenge-Response-Authentifizierung
zwischen der Server-Authentifizierungsverarbeitungseinheit 15 und
der Client- Authentifizierungsverarbeitungseinheit 25 geteilt,
wobei die resultierenden Sitzungsschlüssel als geheime Information
Ks verwendet werden. Man beachte, dass die Kommunikationsschnittstellen 12 und 22 während des
Teilens im normalen CRC-Modus sind.
-
Nach
dem Teilen der geheimen Information Ks instruiert die Server-Authentifizierungsverarbeitungseinheit 15 die
Einstellungsempfangseinheit 126, in den speziellen CRC-Modus zu wechseln,
und gibt die Authentifizierungsdaten in den Datenpuffer 121 ein.
Die Übertragungs-CRC-Einheit 121 empfängt die
Authentifizierungsdaten von dem Datenpuffer 121 und erzeugt
einen CRC-Code im speziellen CRC-Modus. Die Übertragungs-CRC-Einheit 121 überträgt dann
einen Authentifizierungsframe, der aus den Authentifizierungsdaten
mit dem daran angehängten
CRC-Code besteht, an die Übertragungseinheit 123.
Die Übertragungseinheit 132 überträgt den Authentifizierungsframe
an den Client 20.
-
Wenn
der Client 20 den Authentifizierungsframe empfängt, berechnet
die Empfangs-CRC-Einheit 225 des
Clients 20 den Wert des Rests im speziellen CRC-Modus.
Da der Client 20 die geheime Information Ks vorab mit dem
Server 10 geteilt hat, wird der Wert des Rests 0 sein,
wenn kein Fehler auf dem Kommunikationspfad aufgetreten ist. Demzufolge werden
die Authentifizierungsdaten durch die Client-Authentifizierungsverarbeitungseinheit 25 über den
Datenpuffer 22 erhalten ohne verworfen zu werden. Wenn
die Client-Authentifizierungsverarbeitungseinheit 25 die
Authentifizierungsdaten korrekt erhält, gibt sie Antwortdaten in
den Datenpuffer 221 ein. Die Übertragungs-CRC-Einheit 222 empfängt die
Antwortdaten von dem Datenpuffer 221, erzeugt den CRC-Code
im speziellen CRC-Modus und überträgt einen
Antwortframe, der aus den Antwortdaten mit den daran angehängten CRC-Daten
besteht, an die Übertragungseinheit 223.
Die Übertragungseinheit 223 überträgt den Antwortframe
an den Server 10.
-
Beim
Empfangen des Antwort-Frames stellt die Server-Authentifizierungsverarbeitungseinheit 15 fest,
dass der Client 20 ein Gerät in der AD ist. Man beachte,
dass die Empfangs-CRC-Einheit 125 des Servers 10 den
Wert des Rests im speziellen CRC-Modus berechnet und überprüft, dass
der Wert des Rests 0 ist, da der Antwortframe ebenfalls im speziellen
CRC-Modus erzeugt wurde.
-
Im
Folgenden wird der Aufbau der Übertragungs-CRC-Einheit
und des Empfangs-CRC, die den beschriebenen speziellen CRC-Modus
realisieren, beschrieben. Man beachte, dass im Folgenden nur die Übertragungs-CRC-Einheit 122 beschrieben wird,
da der Aufbau der Übertragungs-CRC-Einheit 122 des
Servers 10 und der Übertragungs-CRC- Einheit 222 des
Clients 20 gleich sind. Dies gilt auch für die Empfangs-CRC-Einheiten,
bei denen nur die Empfangs-CRC-Einheit 125 des Servers 10 beschrieben
wird.
-
4 zeigt
den Aufbau der Übertragungs-CRC-Einheit.
-
Die Übertragungs-CRC-Einheit 122 hat
eine Modus-Schaltschaltung 131, eine Übertragungs-CRC-Steuerschaltung 132 und
eine Codierungsschaltung 133.
-
Die
Modus-Schaltschaltung 131 schaltet zwischen dem speziellen
CRC-Modus und dem normalen CRC-Modus gemäß einer Anweisung von der Einstellungsempfangseinheit 126 um,
wodurch der Modus der Übertragungs-CRC-Steuerschaltung 132 festgelegt
wird.
-
Die Übertragungs-CRC-Steuerschaltung 132 steuert
MUX 1, MUX 2 und MUX 3 als Antwort auf die Modusfestlegung von der
Modus-Schaltschaltung 131. Hierbei hat MUX 1 zwei Eingänge (0 und
1) und einen Ausgang und gibt ein "0-seitiges" Eingangssignal aus, wenn das Steuersignal
von der Übertragungs-CRC-Schaltung 132 0
ist und ein "1-seitiges" Eingangssignal,
wenn das Steuersignal von der Übertragungs-CRC-Schaltung 132 1
ist.
-
Die
Codierungsschaltung 133 teilt die Eingangsberechnungsdaten
mit dem Erzeugerpolynom CRC-32 und gibt den 32 Bit-Restwert als
CRC-Code aus. In der Zeichnung sind "x0", "x1" usw. Exklusiv-Oder-Elemente
und "r0", "r1" usw. Schieberegister,
die bei jedem Taktzyklus ein Bit an das nächste Schieberegister weiterschieben.
-
Im
speziellen CRC-Modus hängt
die Übertragungs-CRC-Schaltung 122 im
MUX 1 die geheime Information (b) am Ende der Kommunikationsdaten (a),
die von dem Datenpuffer 121 ausgegeben werden, an und erzeugt
so Zwischendaten (c). Die Übertragungs-CRC-Schaltung 122 fügt dann
32 Bit-Nulldaten (000...0) am Ende der Zwischendaten, die von MUX
1 ausgegeben werden, an und erzeugt so Berechnungsdaten (d). Die
Codierungsschaltung 133 empfängt die Berechnungsdaten (d)
und gibt einen CRC-Code (e) aus, der der Wert des Rests der Division
der Berechnungsdaten (d) mit dem Erzeugerpolynom CRC-32 ist. Die Übertragungs-CRC-Einheit 122 hängt den
CRC-Code (e) im MUX 3 an die Kommunikationsdaten (a) an und erzeugt
so Übertragungsdaten
(f) und überträgt die Übertragungsdaten (f)
an die Übertragungseinheit 123 als
Kommunikations-Frame.
-
Im
normalen CRC-Modus hängt
die Übertragungs-CRC-Einheit 122 die
geheime Information (b) nicht an die Kommunikationsdaten an, die
von dem Datenpuffer 121 in MUX 1 ausgegeben werden. Ansonsten
ist die Verarbeitung die gleiche wie im speziellen CRC-Modus.
-
5 zeigt die Datenkonfiguration von (a) bis
(f) in 4.
-
Dabei
bezeichnet (a) Kommunikationsdaten. Die Kommunikationsdaten bestehen
aus einem Zieladressbereich, einem Herkunftsadressbereich, einem
Typbereich und einem Nutzlastbereich. Der Zieladressbereich und
der Herkunftsadressbereich enthalten jeweils 6 Byte MAC (Media Access
Control) Adressen. Der Typ der Daten ist in dem Typbereich gesetzt,
und die eigentlich zu übertragenden
Daten werden in dem Nutzlastbereich gesetzt.
-
Wenn
z.B. der Server 10 Authentifizierungsdaten an den Client 20 überträgt, wird
die MAC-Adresse des Clients 20 in dem Zieladressbereich
gesetzt, die MAC-Adresse des Severs 10 in dem Quelladressbereich
gesetzt, und die Authentifizierungsdaten in dem Nutzlastbereich
gesetzt.
-
Wenn
darüber
hinaus der Client 20 Antwortdaten an den Server 10 überträgt, wird
die MAC-Adresse des Servers 10 in dem Zieladressbereich,
die MAC-Adresse des Clients 20 in dem Quelladressbereich,
und Antwortdaten in dem Nutzlastbereich gesetzt.
-
(b)
Bezeichnet 16 Byte geheime Information Ks.
-
(c)
Bezeichnet Zwischendaten. Die Zwischendaten bestehen aus den Kommunikationsdaten
(a), an die die geheime Information am Ende angehängt ist.
-
(d)
Bezeichnet Berechnungsdaten. Die Berechnungsdaten bestehen aus den
Zwischendaten (c) mit den 32 Bit Nulldaten (000...0), die an ihrem Ende
angehängt
sind.
-
(e)
Bezeichnet den 32 Bit CRC-Code, der in der Codierungsschaltung 133 berechnet
wurde.
-
(f)
Bezeichnet Übertragungsdaten.
Die Übertragungsdaten
bestehen aus den Kommunikationsdaten (a) mit dem an ihrem Ende angehängten CRC-Code
(e).
-
6 zeigt
den Aufbau der Empfangs-CRC-Einheit.
-
Die
Empfangs-CRC-Einheit 125 enthält eine Modus-Schaltschaltung 131,
eine Empfangs-CRC-Steuerschaltung 136, eine Codierungsschaltung 133,
eine Restwertfeststelleinheit 134 und eine Trenneinheit 135.
-
Die
Empfangs-CRC-Einheit 125 hat einen ähnlichen Aufbau wie die beschriebene
Empfangs-CRC-Einheit 122 und demzufolge werden nur die
Unterschiede beschrieben.
-
Im
speziellen CRC-Modus fügt
die Empfangs-CRC-Einheit 125 in MUX 4 die geheime Information
(h) in die Übertragungsdaten
(g) von der Empfangseinheit 124 ein und erzeugt so Berechnungsdaten
(i). Die Codierungsschaltung 133 empfängt die Berechnungsdaten (i)
und gibt einen Restwert (j) aus, der durch Division der Berechnungsdaten
(i) durch das Generatorpolynom CRC-32 erhalten wurde. Der Restwert
(j) wird dann in die Restwertfeststelleinheit 134 eingegeben.
-
Die
Restwertfeststelleinheit 134 stellt fest, ob der Wert des
Rests, der durch die Codierungsschaltung 133 berechnet
wurde, 0 ist, und benachrichtigt die Trenneinheit 135 vom
Ergebnis der Feststellung.
-
Wenn
das Ergebnis der Feststellung 0 ist, trennt die Trenneinheit 135 den
CRC-Code von den Übertragungsdaten
(g) und überträgt nur die
Kommunikationsdaten an den Datenpuffer 121. Wenn das Ergebnis
der Feststellung nicht 0 ist, verwirft die Trenneinheit 135 die Übertragungsdaten
(g).
-
Im
normalen CRC-Modus hängt
die Empfangs-CRC-Einheit 125 die geheime Information (h) nicht
an die Übertragungsdaten
(g) von der Empfangseinheit 124 in MUX 4 an. Die andere
Verarbeitung ist die gleiche wie im speziellen CRC-Modus.
-
7 zeigt die Datenkonfiguration von (g) bis
(j) in 6.
-
(g)
Bezeichnet Übertragungsdaten,
die die gleichen sind wie (f) in 5.
-
(h)
Bezeichnet 16 Byte geheime Information Ks, die die gleiche ist wie
(b) in 5.
-
(i)
Bezeichnet Berechnungsdaten. Die Berechnungsdaten bestehen aus den Übertragungsdaten
(g) mit der geheimen Information (h), die zwischen dem Nutzlastbereich
und dem CRC-Code-Bereich eingefügt
sind.
-
(j)
Bezeichnet einen 32 Bit Restwert, der in der Codierungsschaltung 133 berechnet
wurde.
-
Man
beachte, dass, wie oben beschrieben, die Übertragungs-CRC-Einheit 122 und
die Empfangs-CRC-Einheit 125 entweder in den speziellen CRC-Modus
oder den normalen CRC-Modus durch die Server-Authentifizierungsverarbeitungseinheit 15 versetzt
werden. Ein mögliches
Verfahren besteht darin, die Übertragungs-CRC-Einheit 122 und
die Empfangs-CRC-Einheit 125 in den normalen CRC-Modus
während
des normalen Betriebs zu versetzen und in den speziellen CRC-Modus
nur während
der Authentifizierungsverarbeitung.
-
In
diesem Fall kann die Übertragungs-CRC-Einheit 122 in
den speziellen CRC-Modus versetzt werden, wenn CRC-Verarbeitung
im speziellen CRC-Modus erforderlich ist, da die Server-Authentifizierungseinheit 15 die
Zeitabstimmung erkennt, mit der die Authentifizierungsdaten nach
der Spezifizierung des Protokolls übertragen werden. Außerdem kann
die Server-Authentifizierungsverarbeitungseinheit 15 die Übertragungs-CRC-Einheit 122 in
den normalen CRC-Modus versetzen, wenn die CRC-Verarbeitung im speziellen
CRC-Modus nicht länger
erforderlich ist.
-
Während der
Authentifizierungsverarbeitung ist die Empfangs-CRC-Einheit 125 aber
nicht darauf beschränkt
nur Frames zu empfangen, die im speziellen CRC-Modus übertragen
wurden. Dies ist der Fall, da der Server 10 eine Inhalteverteilungsanforderung
von einem anderen Client als dem Client 20 empfangen kann,
wenn z.B. der Server 10 auf die Übertragung von einem Antwort-Frame
während
der Authentifizierungsverarbeitung des Clients 20 wartet.
-
Demzufolge
ist es für
den Server 10 erforderlich, in der Lage zu sein, Frames
korrekt zu empfangen, die im normalen CRC-Modus gesendet wurden, selbst
wenn der Server 10 in den speziellen CRC-Modus versetzt
ist.
-
Zu
diesem Zweck kann die Empfangs-CRC-Einheit 125 während des
speziellen CRC-Modus
den Wert des Rests für
einen empfangenen Frame berechnen und dann, wenn der Wert des Rests
von 0 verschieden ist, den Wert des Rest im normalen CRC-Modus berechnen,
und wenn der Wert des Rests immer noch von 0 verschieden ist, feststellen,
dass ein Fehler auf dem Übertragungspfad
aufgetreten ist.
-
Außerdem kann
der Server 10 mit einer CRC-Einheit zum Zwecke der speziellen
CRC-Verarbeitung
und einer CRC-Einheit zum Zwecke der normalen CRC-Verarbeitung versehen
sein und die Verarbeitung parallel ausführen.
-
<Betriebsablauf>
-
Im
Folgenden wird die Funktion des Servers und des Clients der vorliegenden
Ausführungsform beschrieben.
-
8 zeigt
den Betrieb des Servers und des Clients während der Authentifizierungsverarbeitung.
-
Der
Server 10 empfängt
eine Inhalteverteilungsanforderung von dem Client 20 und
beginnt die Authentifizierungsverarbeitung, um festzustellen, ob der
Client 20 ein Gerät
in der AD ist (S11).
-
Zunächst teilen
der Server 10 und der Client 20 die geheime Information
Ks (S12). Das Teilen der geheimen Information Ks wird z.B. durch
Challenge/Response-Authentifizierung zwischen der Server-Authentifizierungsverarbeitungseinheit 15 und der
Client-Authentifizierungsverarbeitungseinheit 25 durchgeführt, wobei
der dadurch als Ergebnis erhaltene Sitzungsschlüssel als geheime Information
Ks verwendet wird. Man beachte, dass zu dieser Zeit die Kommunikationsschnittstellen 12 und 22 im
normalen CRC-Modus
sind.
-
Konkret
wird die geheime Information Ks wie folgt geteilt.
-
Der
Server 10 und der Client 20 halten jeweilige Schlüsselpaare
(einen öffentlichen
Schlüssel
und einen geheimen Schlüssel)
für eine
public key Verschlüsselung
und Zertifikate. Der Server 10 erzeugt eine Zufallszahl
An, die er an den Client 20 als Challenge überträgt. Der
Server 10 empfängt
dann Antwortdaten, die eine durch den Client 20 unter Verwendung
des geheimen Schlüssels
des Clients 20 auf die Zufallszahl An erzeugte Signatur
sind, und das Zertifikat.
-
Der
Server 10 bestätigt
die Authentizität
des öffentlichen
Schlüssels
des Clients 20 mit dem Zertifikat und überprüft dann die Antwortdaten unter
Verwendung des öffentlichen
Schlüssels.
Der Client 20 führt
die gleiche Art von Vorgang aus und überprüft die Antwortdaten von dem
Server 10.
-
Außerdem teilen
der Server 10 und der Client 20 den Sitzungsschlüssel als
geheime Information Ks unter Verwendung eines Diffie-Hellman (DH) Schlüsselteilungssystems.
-
Nachdem
die geheime Information Ks auf diese Weise geteilt wurde, erzeugt
der Server 10 Authentifizierungsdaten (S13), wendet die
CRC-Verarbeitung im speziellen CRC-Modus an (S14), und überträgt einen Authentifizierungs-Frame
an den Client 20 (S15).
-
Der
Client 20 empfängt
den Authentifizierungs-Frame und wendet die CRC-Verarbeitung im speziellen
CRC-Modus an, um den Wert des Rests zu berechnen (S16).
-
Als
nächstes
bestimmt der Client 20, ob der Wert des Rests 0 ist (S17).
Da der Client 20 die geheime Information Ks mit dem Server 10 teilt,
wird der Wert des Rests 0 sein, wenn kein Fehler auf dem Kommunikationspfad
aufgetreten ist.
-
Wenn
der Wert des Rests 0 ist, erzeugt der Client 20 Antwortdaten
(S18), wendet die CRC-Verarbeitung im speziellen CRC-Modus an (S19)
und überträgt den Antwort-Frame
an den Server 10 (S20).
-
Wenn
der Wert des Rest nicht 0 ist, stellt der Client 20 fest,
dass ein Fehler auf dem Kommunikationspfad aufgetreten ist, und
verwirft die Authentifizierungsdaten.
-
Der
Server 10 empfängt
den Antwortframe, wendet die CRC-Verarbeitung im speziellen CRC-Modus
an und berechnet den Wert des Rests (S21).
-
Der
Server 10 stellt dann fest, ob der Wert des Rests 0 ist
(S22). Da der Server 10 die geheime Information Ks mit
dem Client 20 teilt, wird der Wert des Rests 0 sein, wenn
kein Fehler auf dem Kommunikationspfad aufgetreten ist.
-
Wenn
der Wert des Rests 0 ist, erkennt der Server 10, dass der
Client 20 ein Gerät
in der AD ist, und beendet die Authentifizierungsverarbeitung (S23).
-
Wenn
der Wert des Rests nicht 0 ist, stellt der Server 10 fest,
dass ein Fehler auf dem Kommunikationspfad aufgetreten ist, und
verwirft die Antwortdaten.
-
Im
Folgenden wird der Betrieb des Servers 10 und eines Clients
außerhalb
der AD (im Folgenden als externer Client bezeichnet) beschrieben, wenn
der externe Client eine Inhalteverteilungsanforderung an den Server 10 stellt.
-
9 zeigt
den Betrieb des Servers und des externen Clients bei der Authentifizierungsverarbeitung.
-
Der
Server 10 empfängt
eine Inhalteverteilungsanforderung von dem externen Client und beginnt
die Authentifizierungsverarbeitung um festzustellen, ob der Client
ein Gerät
in der AD ist (S31).
-
Zunächst führen der
Server 10 und der Client das Teilen der geheimen Information
Ks durch (S32). Man beachte, dass die übertragenen Frames den Router 30 passieren,
da die Übertragung
hier im normalen CRC-Modus ausgeführt wird.
-
Nachdem
die geheime Information Ks geteilt wurde, erzeugt der Server 10 Authentifizierungsdaten
(S33), wendet die CRC-Verarbeitung im speziellen CRC-Modus an (S34)
und überträgt einen
Authentifizierungs-Frame an den externen Client (S35).
-
Da
jedoch der Router 30 den speziellen CRC-Modus nicht unterstützt, stellt
er fest, dass ein Fehler auf dem Kommunikationspfad aufgetreten
ist, und verwirft den empfangenen Authentifizierungs-Frame.
-
Der
externe Client wartet darauf, den Authentifizierungs-Frame zu empfangen,
aber da der Authentifizierungs-Frame durch den Router 30 verworfen
wurde, läuft
im externen Client die Zeitbegrenzung aus, ohne dass er den Frame
empfangen hat. Nachdem er den Authentifizierungs-Frame übertragen
hat, wartet in der Zwischenzeit der Server 10 darauf, einen
Antwort-Frame von dem Client zu empfangen, erreicht aber die Zeitbegrenzung,
ohne den Antwort-Frame zu empfangen, und die Authentifizierungsverarbeitung
endet (S36).
-
Man
beachte, dass der Router 30 einen Aufbau haben kann, mit
dem er vom Server 10 die erneute Übertragung eines Authentifizierungs-Frames anfordert,
nachdem er den Authentifizierungs-Frame verworfen hat. In diesem
Fall überträgt der Server 10 den
Authentifizierungs-Frame erneut, aber der Router 30 verwirft
abermals den erneut übertragenen Frame.
Dieser Ablauf wiederholt sich. Dabei kann der Server 10 die
Anzahl der erneuten Übertragungen mitzählen und
die Authentifizierungsverarbeitung nach einer bestimmten Anzahl
erneuter Übertragungen
beenden.
-
Auf
diese Weise unterstützen
in der vorliegenden Ausführungsform
der Server 10 und der Client 20 den speziellen
CRC-Modus und der Server 10 ist in der Lage, den Client 20 als
ein Gerät
in der AD zu authentifizieren. Andererseits unterstützt der
Router 30 den speziellen CRC-Modus nicht und verwirft deshalb
jeden von dem Server 10 empfangenen Authentifizierungs-Frame.
Das bedeutet, dass Authentifizierungs-Frames vom Server den externen
Client nicht erreichen und der externe Client nicht in der Lage
ist, die Authentifizierung zu empfangen.
-
Nach
der beschriebenen Verarbeitung verteilt der Server 10 Inhalte,
und der Client in der AD ist daher in der Lage die Inhalte verteilt
zu bekommen, wohingegen der externe Client nicht in der Lage ist, die
Inhalte verteilt zu bekommen. Demzufolge kann eine unbegrenzte Verteilung
verhindert werden.
-
Damit
ist die Beschreibung der ersten Ausführungsform abgeschlossen.
-
Man
beachte, dass die funktionalen Blöcke in dem Server 10,
d.h. die Server-Authentifizierungsverarbeitungseinheit 15,
die Halteeinheit 13 für
die geheime Information, der Datenpuffer 121, die Übertragungs-CRC-Einheit 122,
die Übertragungseinheit 123,
die Empfangseinheit 124, die Empfangs-CRC-Einheit 125 und
die Einstellungsempfangseinheit 126 typischerweise als
integrierte Schaltung implementiert werden, insbesondere als LSI (Large-Scale
Integrated Circuit).
-
In ähnlicher
Weise werden die funktionalen Blöcke
in dem Client 20, d.h. die Client-Authentifizierungsverarbeitungseinheit 25,
die geheime Informationshalteeinheit 23, der Datenpuffer 221,
die Übertragungs-CRC-Einheit 222,
die Übertragungseinheit 223,
die Empfangseinheit 224, die Empfangs-CRC-Einheit 225 und
die Einstellungsempfangseinheit 226 typischerweise als
integrierte Schaltung implementiert, insbesondere als LSI.
-
Jeder
der hier beschriebenen LSIs kann als IC, als System-LSI, als Super-LSI,
oder als Ultra-LSI in Abhängigkeit
vom Grad der Integration bezeichnet werden.
-
Außerdem sind
die integrierten Schaltungen nicht auf LSI beschränkt, sondern
können
auch als Schaltung für
Sonderzwecke oder als Schaltung für allgemeine Aufgaben implementiert
werden. Ein FPGA (Field Programmable Gate Array), der nach der Herstellung
der LSI programmierbar ist, oder ein rekonfigurierbarer Prozessor,
in dem die Verbindung der Schaltungszellen und die Einstellungen
in dem LSI rekonfigurierbar sind, können verwendet werden.
-
Wenn
außerdem
aufgrund von Fortschritten oder Abweichungen von der Halbleitertechnologie eine
Technologie für
integrierte Schaltungen erscheint, die LSIs ersetzt, so kann auch
diese Technologie für
die Integration der funktionalen Blöcke verwendet werden. Biotechnologie
ist eine mögliche
Anwendung.
-
Zweite Ausführungsform
-
<Überblick>
-
In
der beschriebenen ersten Ausführungsform
wird der Authentifizierungs-Frame daran gehindert, andere Netzwerke über den
Router 30 in der Authentifizierungsverarbeitung zu erreichen.
Das bedeutet, dass Inhalte, die auf dem Server 10 gespeichert
sind, nur in einem Teilnetzwerk unterhalb des Routers 30 geteilt
werden. Aus einem anderen Blickwinkel kann gesagt werden, dass die
Reichweite der AD auf ein Teilnetzwerk begrenzt ist.
-
Wenn
jedoch die Reichweite der AD auf ein Teilnetzwerk beschränkt ist,
ergibt sich das Problem, dass z.B. ein Anwender, der zwei verschiedene
Netzwerke im unteren und im oberen Stockwerk seines Hauses betreibt,
nicht in der Lage sein wird, die auf dem unteren Server gespeicherten
Inhalte auf einem oberen Gerät
zu verwenden.
-
Aus
diesem Grund werden in der vorliegenden Ausführungsform die MAC-Adressen
des Servers und des Clients vorab im Router registriert, und wenn
ein Frame für
eine der registrierten MAC-Adressen empfangen wird, wird der Frame ohne
Fehlererkennung mittels CRC-Code übermittelt. Das bedeutet, dass,
wenn ein Authentifizierungs-Frame durch den Server über den
Router zum Client übertragen
wird, der Authentifizierungs-Frame durch
den Router nicht verworfen wird und die Authentifizierung über den
Router ausgeführt
wird.
-
10 zeigt
einen Überblick
der AD der zweiten Ausführungsform.
-
Die
AD enthält
den Server 10, den Client 20, einen Router 50 und
Hubs 40 und 41.
-
Der
Server 10 und der Client 20 unterscheiden sich
von der ersten Ausführungsform
darin, dass sie über
den Router 50 verbunden sind und zu jeweils unterschiedlichen
Netzwerkadressen gehören,
ihr interner Aufbau ist aber der gleiche wie in der ersten Ausführungsform.
-
Demzufolge
gleicht die vorliegende Ausführungsform
der ersten Ausführungsform
darin, dass der Server 10 und der Client 20 vorab
eine geheime Information Ks teilen und der Server 10 die
CRC-Verarbeitung im speziellen CRC-Modus auf die Authentifizierungsdaten
in der Server-CRC-Einheit 14 anwendet und einen Authentifizierungs-Frame
erzeugt, den er an den Client 20 überträgt.
-
Wenn
außerdem
der Client 20 einen Authentifizierungs-Frame empfängt, wendet
er die CRC-Verarbeitung im speziellen CRC-Modus an und berechnet
den Wert des Rests und beurteilt, ob der Wert des Rests 0 ist. Die
anschließende
Verarbeitung zur Übertragung
des Antwort-Frames ist die gleiche.
-
Der
Router 50 der vorliegenden Ausführungsform enthält eine
darin vorab registrierte externe Verteilungserlaubnisliste von MAC-Adressen
von Geräten,
an die die Verteilung von Inhalten erlaubt ist. Wenn die Ziel-MAC-Adresse,
die in einem empfangenen Frame enthalten ist, in der externen Verteilungserlaubnisliste
registriert ist, übermittelt
der Router 50 den Frame, ohne eine Fehlererkennung durchzuführen. Das
bedeutet, dass, wenn die MAC-Adresse des Servers 10 und
die MAC-Adresse des Clients 20 registriert sind, die Authentifizierungs-Frames
von dem Server 10 an den Client 20 und Antwort-Frames vom
Client 20 an den Server 10 ohne Fehlererkennung
mittels des CRC-Codes übermittelt
werden. Man beachte, dass dies nicht nur für Authentifizierungs-Frames
und Antwort-Frames gilt sondern auch für Inhalte-Frames, in denen
Inhalte gespeichert sind.
-
<Aufbau>
-
11 zeigt
den Aufbau des Routers 50, wenn ein Frame vom Server 10 an
den Client 20 übermittelt
wird.
-
Der
Router 50 enthält
zwei Kommunikationsschnittstellen 51 und 52, eine
Speichereinheit 55 für die
externe Verteilungserlaubnisliste, eine Weiterleitungsverarbeitungseinheit 58,
und eine Registrierungseinheit 59. Man beachte, dass aus
Gründen
der Einfachheit die Kommunikationsschnittstelle 51 nur mit
einer Empfangsfunktion und die Kommunikationsschnittstelle 52 nur
mit einer Sendefunktion dargestellt ist, wenngleich in der Realität die Kommunikationsschnittstelle 51 auch
eine Sendefunktion und die Kommunikationsschnittstelle 52 auch
eine Empfangsfunktion hat. Außerdem
ist die Anzahl der Kommunikationsschnittstellen nicht auf zwei begrenzt.
-
Die
Empfangseinheit 56 empfängt
einen Frame von dem Server 10 und gibt den Frame an die Adressprüfungseinheit 511 weiter.
-
Die
Adressprüfungseinheit 511 detektiert
die in dem Frame enthaltene Ziel-MAC-Adresse und Quell-MAC-Adresse und entscheidet,
ob die MAC-Adressen und die zugehörige Kommunikationsschnittstelle
in der externen Verteilungserlaubnisliste registriert sind. Wenn
sie registriert sind, übermittel
die Adressprüfungseinheit 511 den
Frame an die Übertragungseinheit
der entsprechenden Kommunikationsschnittstelle (die Sendeeinheit 57 der Kommunikationsschnittstelle 52 in 11).
Wenn eine oder mehr der MAC-Adressen und die zugehörigen Kommunikationsschnittstelle
in der externen Verteilungserlaubnisliste nicht registriert sind,
gibt die Adressprüfungseinheit 511 den
Frame an die CRC-Einheit 53 weiter.
-
Die
CRC-Einheit 53 führt
eine Fehlererkennung des Frames mittels des CRC-Codes aus und entscheidet,
ob der Wert des Rests 0 ist. Wenn der Wert des Rests 0 ist, erhält die CRC-Einheit 53 die
in dem Frame enthaltenen Kommunikationsdaten, da kein Fehler auf
dem Kommunikationspfad aufgetreten ist. Wenn der Wert des Rest von
0 verschieden ist, verwirft die CRC-Einheit 53 den Frame,
da angenommen wird, dass ein Fehler auf dem Kommunikationspfad aufgetreten
ist. Man beachte, dass die CRC-Einheit 53 nur den normalen
CRC-Modus unterstütz.
-
Die
Weiterleitungsverarbeitungseinheit 58 hat eine interne
Weiterleitungstabelle und übermittelt die
erhaltenen Kommunikationsdaten an die Kommunikationsschnittstelle,
die der Zielnetzwerkadresse (die Kommunikationsschnittstelle 52 in 11)
entspricht.
-
Die
CRC-Einheit 54 wendet die CRC-Verarbeitung auf die Kommunikationsdaten
an, die von der Weiterleitungsverarbeitungseinheit 58 übermittelt wurden,
und gibt die Kommunikationsdaten an die Übertragungseinheit 57 weiter.
Man beachte, dass die CRC-Einheit 54 nur
den normalen CRC-Modus unterstützt.
-
Wenn
der empfangene Frame ein Adressregistrierungs-Frame ist, registriert
die Registrierungseinheit 59 die Gerätenetzwerkadresse, die Geräte-MAC-Adresse
und den Gerätenamen,
der in dem Registrierungs-Frame angegeben ist, und die Kommunikationsschnittstelle,
die den Adressregistrierungs-Frame empfangen hat, jeweils in einer
Netzwerkadressspalte 550, einer MAC-Adressspalte 51, einer
Gerätespalte 52,
und einer Port-Spalte 553 der externen Verteilungserlaubnisliste.
-
Dies
ermöglicht
es dem Server 10 seine eigene Netzwerkadresse, MAC-Adresse,
Gerätename und
die Kommunikationsschnittstelle des Routers 50, an die
der Server 10 angeschlossen ist, aus dem Adressregistrierungs-Frame
zu registrieren. Für
den Client 20 gilt dies genauso.
-
12 zeigt
ein Beispiel der externen Verteilungserlaubnisliste.
-
Diese
zeigt, dass ein Server mit einer MAC-Adresse (08-00-16-21-5A-63)
die Netzwerkadresse (133.1.144.0) hat, und dass eine Kommunikationsschnittstelle,
die einen Adressregistrierungs-Frame empfangen hat, den Port 1 hat.
Der Router 50 erkennt das Netzwerk, in dem der Server ist,
als innerhalb der AD befindlich und andere Netzwerke als außerhalb
der AD befindlich.
-
In
anderen Worten, der Fernseher und das Spielegerät der Netzwerkadresse (133.1.145.0)
sind Geräte
außerhalb
der AD. Normalerweise können Geräte außerhalb
der AD keine Authentifizierung empfangen, aber wenn sie in der externen
Verteilungserlaubnisliste registriert sind, können sie die Authentifizierung
von dem Server empfangen.
-
Da
die Registrierungseinstellungen der Netzwerkadressen durch einen
böswilligen
Benutzer modifiziert werden können,
ist es möglich,
dass externe Geräte
so eingestellt werden, als ob sie Geräte in der AD wären. So
ist z.B. der HDD-Rekorder fälschlicherweise
unter der Netzwerkadresse (133.1.144.0) registriert.
-
Da
jedoch der Router 50 die Kommunikationsschnittstelle, die
den Adressregistrierungs-Frame empfangen
hat, in der Spalte 553 registriert, ist der Router 50 in
der Lage, zu erkennen, dass der HDD-Rekorder fälschlicherweise registriert
wurde, da die Netzwerkadressspalte 550 und die Port-Spalte 553 nicht übereinstimmen.
-
Auf
diese Weise verhindert der Router 50 die Übermittlung
von Frames an fälschlich
registrierte externe Geräte.
-
Man
beachte, dass die Verhinderung der Frame-Übermittlung an externe Geräte aufgehoben sein
kann, wenn die Netzwerkadresse und der Port in der externen Verteilungserlaubnisliste
korrigiert wurden oder sogar bestehen bleiben kann, wenn die Netzwerkadresse
und der Port korrigiert wurden.
-
Gemäß des beschriebenen
Aufbaus kann der Frame ohne Fehlererkennung in der CRC-Einheit übermittelt
werden, selbst wenn der Router 50 ein Frame empfängt, an
dem ein spezieller CRC-Code angehängt wurde, wenn die durch den
Frame angezeigte Zielnetzwerkadresse in der externen Verteilungserlaubnisliste
registriert ist.
-
<Funktion>
-
Im
Folgenden wird die Funktion des Routers 50 beschrieben.
Man beachte, dass die Authentifizierungsverarbeitung des Servers 10 und
des Clients 20 die gleiche ist, wie in der ersten Ausführungsform
beschrieben, und in der folgenden Beschreibung daher übersprungen
wird.
-
13 zeigt
den Betrieb des Routers 50, wenn ein Frame empfangen wird.
-
Der
Router 50 empfängt
den Frame (S31).
-
Beim
Empfangen des Frames detektiert der Router 50 die in dem
Frame enthaltene Ziel-MAC-Adresse
(S32).
-
Wenn
die detektierte MAC-Adresse in der externen Verteilungserlaubnisliste
registriert ist (S33: JA), übermittelt
der Router 50 den empfangenen Frame über die Kommunikationsschnittstelle,
die der registrierten MAC-Adresse entspricht (S39).
-
Wenn
die detektierte MAC-Adresse nicht in der externen Verteilungserlaubnisliste
registriert ist (S33: NEIN), führt
der Router 50 eine Fehlererkennung unter Verwendung des
CRC-Codes durch (S34).
-
Wenn
der Wert des Rests nicht 0 ist (S35: NEIN), geht der Router 50 davon
aus, dass ein Fehler auf dem Kommunikationspfad aufgetreten ist,
und verwirft den Frame (S36).
-
Wenn
der Wert des Rests 0 ist (S35: JA), geht der Router 50 davon
aus, dass kein Fehler auf dem Kommunikationspfad aufgetreten ist,
und führt die
Weiterleitung aus (S37).
-
Gemäß der Weiterleitungsverarbeitung
gibt der Router 50 die Zielkommunikationsschnittstelle an,
berechnet einen CRC-Code, den er an den Frame anhängt (S38),
und übermittelt
den Frame mit dem daran angehängten
CRC-Code (S39).
-
Auf
diese Weise registriert die vorliegende Ausführungsform vorab die MAC-Adresse
des Servers 10 und die MAC-Adresse des Clients 20,
und ein Frame vom Server 10 an den Client 20 oder
vom Client 20 an den Server 10 wird ohne Fehlererkennung unter
Verwendung des CRC-Codes übermittelt.
Das bedeutet, dass der Server 10 in der Lage ist, die Inhalte
verteilt zu bekommen, selbst wenn der Client 20 in einem
anderen Netzwerk ist.
-
Damit
ist die Beschreibung der zweiten Ausführungsform abgeschlossen.
-
Man
beachte, dass die funktionalen Blöcke, d.h. die CRC-Einheiten 53 und 54,
die Speichereinheit 55 für die externe Verteilungserlaubnisliste,
die Empfangseinheit 56, die Ü bertragungseinheit 57,
die Weiterleitungsverarbeitungseinheit 58, die Registrierungseinheit 59 und
die Adressüberprüfungseinheit 511 typischerweise
als integrierte Schaltung implementiert werden, insbesondere als
LSI.
-
Die
hier beschriebene LSI kann als IC, als System-LSI, als Super-LSI
oder als Ultra-LSI bezeichnet werden, in Abhängigkeit vom Grad der Integration.
-
Außerdem ist
die integrierte Schaltung nicht darauf begrenzt eine LSI zu sein,
sondern kann auch als Schaltung für spezielle Zwecke oder als
Schaltung für
allgemeine Aufgaben implementiert werden. Ein FPGA (Field Programmable
Gate Array), der nach Herstellung der LSI programmierbar ist, oder ein
rekonfigurierbarer Prozessor, in dem die Verbindung der Schaltungszellen
und die Einstellungen in der LSI rekonfigurierbar sind, können verwendet
werden.
-
Wenn
außerdem
aufgrund von Fortschritten oder Abweichungen von der Halbleitertechnologie eine
Technologie für
integrierte Schaltungen, die LSIs ersetzt, erscheint, so kann auch
diese Technologie für
die Integration der funktionalen Blöcke verwendet werden. Biotechnologie
ist eine mögliche
Anwendung.
-
Dritte Ausführungsform
-
<Überblick>
-
In
der zweiten Ausführungsform
registriert der Router vorab die MAC-Adresse des Severs und des
Clients und wenn er einen Frame für eine der registrierten MAC-Adressen
empfängt, übermittelt
er den Frame ohne Durchführung
einer Fehlerprüfung mit
dem CRC-Code. Dadurch wird verhindert, dass Frames, die vom Server über den
Router an den Client übertragen
werden, durch den Router verworfen werden, selbst wenn die Kommunikationsschnittstelle
des Routers den speziellen CRC-Modus nicht unterstützt.
-
Mit
diesem Verfahren übermittelt
der Router jedoch Frames von dem Server an den Router ohne Durchführung einer
Fehlererkennung, selbst wenn ein Fehler auf dem Kommunikationspfad
auftritt. Dies ist insbesondere problematisch in einer Umgebung, in
der das Netzwerk oft belegt ist.
-
Angesichts
dieses Problems ermöglicht
die vorliegende Ausführungsform
Fehlererkennung mit dem speziellen CRC-Modus im Router, indem eine Kommunikationsschnittstelle
zur Verfügung
gestellt wird, die den speziellen CRC-Modus im Router unterstützt. Da durch
wird verhindert, dass der Router einen Frame übermittelt, in dem ein Fehler
aufgetreten ist. Wie in der ersten Ausführungsform unterstützt in der
vorliegenden Ausführungsform
die Kommunikationsschnittstelle, die an das externe Netzwerk angeschlossen
ist, nur den normalen CRC-Modus. Dies verhindert das unbeschränkte Teilen
von Inhalten.
-
14 zeigt
einen Überblick
der AD der dritten Ausführungsform.
-
Die
AD enthält
den Server 10, den Client 20, einen Router 60 und
Hubs 40 und 41.
-
Der
Server 10 und der Client 20 sind wie in der zweiten
Ausführungsform über den
Router 60 verbunden und gehören zu verschiedenen Netzwerkadressen.
-
Der
Router 60 enthält
Kommunikationsschnittstellen 61, 62 und 63 und
eine Liste authentifizierter Geräte 69.
Die Kommunikationsschnittstellen 61 und 62 unterstützen die
CRC-Verarbeitung im speziellen CRC-Modus. Die Kommunikationsschnittstelle 63 unterstützt nur
die CRC-Verarbeitung im normalen CRC-Modus.
-
Der
Server 10 und der Client 20 sind jeweils mit den
Kommunikationsschnittstellen 61 und 62 verbunden,
und das Internet 70, das außerhalb der AD liegt, ist mit
der Kommunikationsschnittstelle 63 verbunden.
-
Inhalte
werden in der vorliegenden Ausführungsform
nach dem folgenden Verfahren verteilt.
-
- (1) Vor der Inhalteverteilung führt der
Server 10 eine Authentifizierungsverarbeitung durch, um
zu überprüfen, dass
der Router 60 ein Gerät
in der AD ist. Die Authentifizierungsverarbeitung wird durchgeführt, wie
in der ersten Ausführungsform beschrieben
wurde.
- (2) In ähnlicher
Weise führt
der Client 20 vor der Inhalteverteilung eine Authentifizierungsverarbeitung
durch, um zu überprüfen, dass
der Router 60 ein Gerät
in der AD ist.
- (3) Wenn die Authentifizierungsverarbeitung zwischen dem Server 10 und
dem Client 20 normal beendet wurde, registriert der Router 60 die MAC-Adressen
des Servers 10 und des Clients 20 in einer Liste
authentifizierter Geräte.
- (4) Beim Empfangen eines Inhalte-Frames, der Inhalte vom Server 10 gespeichert
hat, die für
den Client 20 bestimmt sind, führt der Router 60 eine Fehlererkennung
im speziellen CRC-Modus aus und entscheidet, ob ein Fehler aufgetreten
ist.
- (5) Wenn entschieden wurde, dass kein Fehler aufgetreten ist,
sieht der Router 60 in der Liste der authentifizierten
Geräte
nach und wenn der Server 10 und der Client 20 in
der Liste der authentifizierten Geräte registriert sind, führt der
Router die CRC-Verarbeitung des Inhalte-Frames im speziellen CRC-Modus
aus und überträgt den Inhalte-Frame
an den Client 20.
-
Auf
diese Weise wird in der vorliegenden Ausführungsform die Übermittlung
eines Frames, in dem ein Fehler aufgetreten ist, verhindert, da
der Router 60 eine Fehlererkennung ausführt, wenn er einen Frame weiterleitet.
Demzufolge können
die Netzwerkressourcen effizienter verwendet werden.
-
Außerdem unterstützt die
Kommunikationsschnittstelle, die mit dem Internet 70 verbunden
ist, welches ein externes Netzwerk ist, nur den normalen CRC-Modus
und Clients außerhalb
der AD können daher
keine Authentifizierungsverarbeitung mit dem Router 60 durchführen. Demzufolge
werden Clients außerhalb
der AD nicht in der Liste der authentifizierten Geräte registriert
und sind nicht in der Lage, die Verteilung der Inhalte von dem Server 10 zu
empfangen. Dies verhindert eine unbegrenzte Verwendung der Inhalte.
-
<Aufbau>
-
15 zeigt
den Aufbau des Routers 60, wenn ein Inhalte-Frame vom Server 10 an
den Client 20 übertragen
wird.
-
Der
Router 60 enthält
Kommunikationsschnittstellen 61 und 62 und eine
Weiterleitungsverarbeitungseinheit 80. Die Kommunikationsschnittstellen 61 und 62 sind
die gleichen wie die Kommunikationsschnittstelle 12 in 2,
aber hier sind nur die Empfangsfunktion der Kommunikationsschnittstelle 61 und
die Sendefunktion der Kommunikationsschnittstelle 62 gezeigt.
-
Die
Weiterleitungsverarbeitungseinheit 80 enthält eine
Weiterleitungstabelle 81, die Liste der authentifizierten
Geräte 69 und
eine Einstelleinheit 82.
-
Die
Kommunikationsschnittstellen des Routers 60 und die daran
angeschlossenen Netzwerkadressen sind miteinander korrespondierend
in der Weiterleitungstabelle 81 registriert.
-
Geräte, die
in der Authentifizierungsverarbeitung mit dem Router 60 als
Geräte
in der AD authentifiziert wurden, sind zusammen mit ihren MAC-Adressen
in der Liste der authentifizierten Geräte 69 registriert.
-
Beim
Empfangen eines Frames, der der CRC-Verarbeitung im normalen CRC-Modus
unterworfen wurde, sieht die Weiterleitungsverarbeitungseinheit 80 in
der Weiterleitungstabelle 81 nach und übermittelt den empfangenen
Frame an die zugehörige
Kommunikationsschnittstelle. Beim Empfangen eines Frames, der der
CRC-Verarbeitung im speziellen CRC-Modus unterworfen wurde, sieht
die Weiterleitungsverarbeitungseinheit 80 in der Liste
der authentifizierten Geräte 69 nach
und übermittelt
den empfangenen Frame an die entsprechende Kommunikationsschnittstelle.
-
Die
Einstellungseinheit 82 empfängt von der Empfangs-CRC-Einheit 84 eine
Nachricht darüber, ob
der empfangene Frame dem normalen CRC-Modus oder dem speziellen
CRC-Modus unterworfen wurde, und setzt die Übertragungs-CRC-Einheit 85.
-
In
anderen Worten, ein Frame, der im Server 10 der CRC-Verarbeitung
im speziellen CRC-Modus unterworfen wurde, wird auch im Router 60 der CRC-Verarbeitung
im speziellen Modus unterworfen, bevor er weitergeleitet wird. Außerdem wird
ein Frame, der im Server 10 der CRC-Verarbeitung im normalen
CRC-Modus unterworfen wurde, auch im Router 60 der CRC-Verarbeitung
im normalen Modus unterworfen, bevor er weitergeleitet wird.
-
Weil
die Kommunikationsschnittstelle 63 den speziellen CRC-Modus
nicht unterstützt,
verhindert dieser Aufbau die Weiterleitung von Inhalten an einen externen
Client, wenn der Server 10 irrtümlicherweise versucht, Inhalte-Frames
an einen externen Client zu übertragen,
die der CRC-Verarbeitung im speziellen CRC-Modus unterworfen wurden.
Dies verhindert die Verteilung von Inhalten an Clients außerhalb
der AD.
-
16 zeigt
ein Beispiel der Liste der authentifizierten Geräte.
-
Diese
zeigt, dass z.B. ein Server mit der MAC-Adresse (08-00-16-21-5A-63)
die Netzwerkadresse (133.1.144.0) hat, und dass die Kommunikationsschnittstelle,
die mit dieser Netzwerkadresse verbunden ist, Port 1 ist.
-
Die
in den Authentifizierungsdaten enthaltene Information wird aufgeteilt
in eine Netzwerkadressspalte 690, eine MAC-Adressspalte 691,
eine Gerätespalte 692 und
eine Portspalte 693 durch den Router 60 registriert,
nachdem die Authentifizierung korrekt abgeschlossen wurde. Mit anderen
Worten, da die Authentifizierungsregistrierungsliste nicht durch
den Benutzer registriert wird, ist es nicht erforderlich, eine Benutzerschnittstelle
zur Verfügung
zu stellen, und es ist für
den Benutzer schwierig, die Einstellung zu ändern.
-
<Funktionen>
-
Im
Folgenden wird die Funktionsweise des Routers 60 beschrieben.
Man beachte, dass die Authentifizierungsverarbeitung zwischen dem
Router 60 und dem Server 10 und die Authentifizierungsverarbeitung
zwischen dem Router 60 und dem Client 20 die gleiche
sind wie in der ersten Ausführungsform und
in der folgenden Beschreibung übersprungen werden.
-
17 zeigt
den Funktionsablauf der Weiterleitungsverarbeitung durch den Router 60.
-
Der
Router 60 beginn die Weiterleitungsverarbeitung, wenn ein
empfangener Frame nicht für den
Router 60 selbst bestimmt ist, sondern übermittelt werden soll.
-
Die
Weiterleitungsverarbeitungseinheit 80 empfängt von
der Kommunikationsschnittstelle, die den Frame empfangen hat, eine
Nachricht darüber, ob
der Frame gemäß des speziellen
CRC-Modus oder des normalen CRC-Modus fehlerfrei übertragen wurde.
Wenn der benachrichtigte Modus der normale CRC-Modus ist (S71: JA),
sieht die Weiterleitungsverarbeitungseinheit 80 in der
Weiterleitungstabelle nach (S72), gibt die Kommunikationsschnittstelle,
die der Zielnetzwerkadresse der Kommunikationsdaten entspricht,
an und sendet eine Anweisung zur Einstellung des normalen CRC-Modus
an die Übertragungs-CRC-Einheit
der angegebenen Kommunikationsschnittstelle (S73). Die Weiterleitungsverarbeitungseinheit 80 überträgt dann
die Übertragungsdaten
(S74).
-
Wenn
im Schritt S71 der spezielle CRC-Modus übermittelt wurde (S71: NEIN),
sieht die Weiterleitungsverarbeitungseinheit 80 in der
Liste der authentifizierten Geräte
nach (S75), und entscheidet, ob der Server 10 und der Client 20 registriert
sind (S76).
-
Wenn
der Server 10 und der Client 20 registriert sind
(S76: JA), gibt die Weiterleitungsverarbeitungseinheit 80 die
Kommunikationsschnittstelle an, die der Ziel-MAC-Adresse der Kommunikationsdaten entspricht,
sendet eine Anweisung zur Einstellung des spe ziellen CRC-Modus an
die CRC-Einheit der angegebenen Kommunikationsschnittstelle (S77) und übermittelt
die Daten (S74).
-
Wenn
die Weiterleitungsverarbeitungseinheit 80 im Schritt S76
feststellt, dass der Server 10 oder der Client 20 oder
beide nicht registriert sind (S76: NEIN), werden die Daten verworfen
(S78).
-
Auf
diese Weise führt
in der vorliegenden Ausführungsform
der Router 60 eine Fehlererkennung beim Weiterleiten von
Frames durch und ist in der Lage, die Übermittlung von Frames zu verhindern,
in denen ein Fehler aufgetreten ist. Demzufolge können Netzwerkressourcen
effizienter verwendet werden. Dies ist besonders wirksam für ein drahtloses
LAN, in dem leicht Fehler auf dem Kommunikationspfad auftreten,
und in dem das Netzwerk oft belegt ist.
-
Da
außerdem
die Kommunikationsschnittstelle, die mit dem außerhalb der AD gelegenen Internet 70 verbunden
ist, nur den normalen AD-Modus unterstützt, ist ein externer Client
nicht in der Lage, die Authentifizierungsverarbeitung mit dem Router 60 durchzuführen. Demzufolge
wird der externe Client nicht in der Liste der authentifizierten
Geräte
registriert und kann die Inhalte vom Server 10 nicht verteilt
bekommen. Dies verhindert unbegrenzte Verwendung der Inhalte.
-
Damit
ist die Beschreibung der dritten Ausführungsform abgeschlossen.
-
Man
beachte, dass die Weiterleitungsverarbeitungseinheit 80 und
ihre interne Weiterleitungstabelle 81, die Liste der authentifizierten
Geräte 69 und die
Einstelleinheit 82 sowie die funktionalen Blöcke, d.h.
die Speichereinheiten 64 und 66 für die geheime Information,
die Übertragungs-CRC-Einheit 84 und 85,
und die Übertragungseinheiten 83 und 86 typischerweise
als integrierte Schaltung implementiert werden, insbesondere als
LSI.
-
Die
hier beschriebene LSI kann als IC, als System-LSI, als Super-LSI,
oder als Ultra-LSI bezeichnet werden, abhängig vom Grad der Integration.
-
Außerdem ist
die integrierte Schaltung nicht darauf begrenzt, eine LSI zu sein,
sondern kann auch als Schaltung für spezielle Zwecke oder als
Schaltung für
allgemeine Aufgaben implementiert sein. Ein FPGA (Field Programmable
Gate Array), der programmierbar ist, nachdem die LSI hergestellt
wurde, oder ein rekonfigurierbarer Prozessor, in dem die Verbindungen
der Schaltungszellen und die Einstellungen in der LSI rekonfigurierbar
sind, kann verwendet werden.
-
Wenn
außerdem
aufgrund von Fortschritten oder Abweichungen von der Halbleitertechnologie eine
Technologie für
integrierte Schaltungen entwickelt wird, die LSIs ersetzt, kann
auch diese Technologie für
die Integration der funktionalen Blöcke eingesetzt werden. Biotechnologie
ist eine mögliche
Anwendung.
-
Abänderungsbeispiele
-
Obwohl
die Ausführungsformen
auf der Voraussetzung aufbauen, dass der CRC-Code im speziellen
CRC-Modus und der CRC-Code im normalen CRC-Modus unterschiedlich
sind, besteht eine gewisse Wahrscheinlichkeit, dass diese CRC-Codes gleich
sind. Wenn die CRC-Codes gleich sind, wird sogar ein Client oder
ein Router, der nur den normalen Modus unterstützt, in der Lage sein, die
Kommunikationsdaten korrekt zu erhalten, an die ein spezieller CRC-Modus
CRC-Code angehängt
ist.
-
Angesichts
dieses Problems kann der folgende Ansatz verwendet werden, so dass
ein Client oder ein Router, der nur den normalen CRC-Modus unterstützt, nicht
in der Lage ist, Kommunikationsdaten zu erhalten, selbst wenn der
CRC-Code im speziellen CRC-Modus
und der CRC-Code im normalen CRC-Modus gleich sind.
-
<Übertragungsverarbeitung>
-
- (1) Ein CRC-Code wird dafür berechnet, wenn die geheime
Information an die Kommunikationsdaten angehängt ist und ein normaler CRC-Code wird
berechnet.
- (2) Der CRC-Code, für
den die geheime Information angehängt wurde, und der normale
CRC-Code werden verglichen.
- (3) Wenn die beiden CRC-Codes gleich sind, werden die Bits in
dem CRC-Code für
den Fall mit angehängter
geheimer Information invertiert, und der invertierte CRC-Code wird an die
Kommunikationsdaten angehängt.
Wenn z.B. der CRC-Code für
den Fall mit angehängter
geheimer Information (101) ist, ist der bit-invertierte Code (010).
- (4) Wenn der CRC-Code, der mit an die Kommunikationsdaten angehängter geheimer
Information berechnet wurde, und der normale CRC-Code unterschiedlich
sind, wird die geheime Information mit dem daran angefügten CRC-Code
an die Kommunikationsdaten angehängt.
-
<Empfangsverarbeitung>
-
- (1) Ein CRC-Code wird berechnet, wenn die geheime
Information an die Kommunikationsdaten angehängt ist, und ein normaler CRC-Code
wird berechnet.
- (2) Der CRC-Code, der mit der angehängten geheimen Information
berechnet wurde, und der normale CRC-Code werden verglichen.
- (3) Wenn die beiden CRC-Codes gleich sind, werden die Bits in
dem an die Kommunikationsdaten angehängten CRC-Code invertiert und
der invertierte CRC-Code und der CRC-Code, der mit angehängter geheimer
Information berechnet wurde, werden verglichen. Wenn die beiden
CRC-Codes gleich sind, werden die Kommunikationsdaten erhalten.
- (4) Wenn der CRC-Code, der mit der angefügten geheimen Information berechnet
wurde, und der normale CRC-Code gleich sind, wird der an die Kommunikationsdaten
angehängte
CRC-Code invertiert und der invertierte CRC-Code und der CRC-Code, der mit angehängter geheimer
Information berechnet wurde, werden verglichen. Die Kommunikationsdaten
werden verworfen, wenn die CRC-Codes nicht übereinstimmen.
- (5) Wenn der CRC-Code, der mit angehängter geheimer Information
berechnet wurde, und der normale CRC-Code unterschiedlich sind,
wird der CRC-Code, der an die Kommunikationsdaten angehängt ist,
und der CRC-Code, der mit angefügter
geheimer Information berechnet wurde, verglichen. Die Kommunikationsdaten
werden erhalten, wenn die beiden gleich sind.
- (6) Wenn der CRC-Code, der mit angefügter geheimer Information berechnet
wurde, und der normale CRC-Code unterschiedlich sind, wird der CRC-Code,
der an die Kommunikationsdaten angehängt ist, und der CRC-Code,
der mit der angehängten
geheimen Information berechnet wurde, verglichen. Die Kommunikationsdaten
werden verworfen, wenn die beiden verschieden sind.
-
Gemäß der beschriebenen
Struktur kann bei einem CRC-Code erkannt werden, dass er berechnet wurde,
nachdem die geheime Information angefügt wurde, selbst wenn ein CRC-Code,
der berechnet wurde, nachdem die geheime Information an die Kommunikationsdaten
angehängt
wurde, und eine CRC-Code, der ohne Anhängen der geheimen Information
berechnet wurde, gleich sind.
-
Man
beachte, dass das Authentifizierungsverfahren der vorliegenden Erfindung
als Authentifizierungsverarbeitung für andere Zwecke als die Verteilung
von Inhalten verwendet werden kann.
-
Außerdem kann
das Authentifizierungsverfahren angewendet werden, unabhängig davon,
ob die Spezifikation der Datenverbindungsschicht Ethernet ist (TM),
ein drahtloses LAN, Bluetooth oder eine andere Spezifikation der
Datenverbindungsschicht.
-
Der
CRC-Code kann ein Verschlüsselungs-Hashwert
(32 Bits) anstelle einer Prüfsumme sein,
um die Entschlüsselung
der geheimen Information zu erschweren.
-
Außerdem kann
zur Erhöhung
der Sicherheit der CRC-Code ein Verschlüsselungs-Hashwert von z.B. 160 Bits sein anstelle
der 32 Bits.
-
Darüber kann
das Nutzlastsegment verschlüsselt
werden, um die Sicherheit zu verbessern.
-
Man
beachte, dass obwohl die Ausführungsformen
eine Phase enthalten, in der die geheime Information der Verschlüsselungsverarbeitung
geteilt wird, die geheime Information in den Geräten auch vorab gespeichert
werden kann, um die Zeit zu reduzieren, die für die Authentifizierungsverarbeitung
erforderlich ist.
-
Außerdem ist
das zum Teilen der geheimen Information verwendete Verfahren nicht
auf das in der ersten Ausführungsform
beschriebene beschränkt,
sondern kann jedes Verfahren sein, dass es dem Server und dem Client
ermöglicht,
die geheime Information zu teilen.
-
Die
Authentifizierungsverarbeitung kann in den Ausführungsformen mehrfach ausgeführt werden,
da die Möglichkeit
besteht, dass ein Fehler auf dem Kommunikationspfad auftritt. Wenn
die Authentifizierungsverarbeitung mehrfach ausgeführt wird, kann
die geheime Information jedes Mal geändert werden, um die Sicherheit
zu erhöhen.
-
Um
außerdem
die Anonymität
gegenüber
einer dritten Partei sicherzustellen, können die Empfangs- und Sendeendgeräte sich
gegenseitig über falsche
Adressen verständigen
und die falschen Adressen in der nachfolgenden Authentifizierungsverarbeitung
verwenden, wodurch es für
die dritte Partei schwierig wird, die Sende- und Empfangsendgeräte zu identifizieren.
-
Ein
möglicher
Aufbau besteht darin, einen Test zu machen, um zu überprüfen, ob
ein zu authentifizierendes Gerät
zurückgezogen
wurde aufgrund der Durchführung
einer unerlaubten Handlung in der Vergangenheit. Dies verhindert
die Verteilung von Inhalten an illegitime Geräte.
-
Um
außerdem
zu verhindern, dass sich ein illegales Gerät als legales Gerät ausgibt,
kann zumindest der Initiator und der Antworter Informationen über sich
selbst (z.B. ein Zertifikat, eine IP-Adresse oder eine Geräte-ID) in
der Nutzlast einfügen.
-
Um
zu verhindern, dass die Information von einem Hacker manipuliert
wird, kann zumindest der Initiator oder der Antworter einen Hashwert
des Zieladressensegments, des Quelladressensegments, des Typsegments
oder des Nutzlastsegments oder einen Hashwert einer Kombination
dieser Segmente in die Nutzlast einfügen. Außerdem kann eine digitale Unterschrift
auf die Hashwerte angewendet werden.
-
Die
Nutzlast von zumindest dem Initiator oder dem Antworter kann Informationen
enthalten (Port-Nummer, Inhalteinformation, Inhalteattribute, usw.),
die für
die Kommunikation nach der Authentifizierung erforderlich sind,
und die Durchführung
der Authentifizierung in Abhängigkeit
vom Rang der kopiergeschützten
Information zu ermöglichen.
-
Man
beachte, dass die Nutzlast von zumindest dem Initiator oder dem
Antworter Informationen über
die Verarbeitungsmöglichkeiten
des Geräts
enthalten kann (z.B. ob das Gerät
ein Decoder ist, ein Encoder oder eine Kommunikationsschnittstelle),
um im Vorhinein Informationen über
die nach der Authentifizierung zu beginnende Inhalteverteilung zu übermitteln.
-
Um
zuverlässig
zu entscheiden, ob die Sende- und Empfangsendgeräte im gleichen Router sind,
kann die Nutzlast von zumindest dem Initiator oder dem Antworter
Informationen über
den Router enthalten, mit dem das Gerät verbunden ist (z.B. IP-Adresse,
oder MAC-Adresse).
-
Obwohl
in den Ausführungsformen
ein Router zur Verfügung
gestellt wurde, der die Verarbeitung von einer ersten Schicht (physikalische
Schicht) zu einer dritten Schicht (Netzwerkschicht) eines OSI-Referenzmodells
von Vorrichtungen, die an verschiedene Netzwerke angeschlossen sind,
durchführt,
kann auch eine Brücke
(Bridge) zur Verfügung gestellt
werden, die die Verarbeitung von einer ersten Schicht (physikalische
Schicht) zu einer zweiten Schicht (Datenverbindungsschicht) durchführt.
-
Die
Ausführungsformen
sind aufgebaut, um einen CRC-Code im speziellen CRC-Modus zu berechnen,
nachdem die geheime Information an das Ende der Kommunikationsdaten
angehängt
wurde, so dass irrtümlicherweise
stets ein Fehler im normalen CRC-Modus
erkannt wird. Solange jedoch ein Fehler irrtümlicherweise identifiziert
wird, ist die geheime Information nicht darauf beschränkt, an
das Ende der Kommunikationsdaten angehängt zu werden. Zum Beispiel
kann die geheime Information auch an den Anfang der Kommunikationsdaten
angehängt
werden, oder eine vorbestimmte Zahl von Bits vom Anfang der Kommunikationsdaten
entfernt eingefügt
werden. Außerdem
kann anstelle der Berechnung des CRC-Codes nachdem die geheime Information
an die Kommunikationsdaten angehängt wurde,
der gleiche Effekt erzielt werden, indem der CRC-Code aus den Kommunikationsdaten im
normalen Modus berechnet wird, und ein konvertierter CRC-Code verwendet
wird, der durch eine Umwandlung unter Verwendung der geheimen Information
erhalten wird.
-
Industrielle Anwendbarkeit
-
Die
vorliegende Erfindung kann in einem Inhaltesende/Verteilungssystem
in einem Heimnetzwerk verwendet werden.