DE602004011501T2 - Sende-empfangssystem mit nachrichtenauthentifizierungskode - Google Patents

Sende-empfangssystem mit nachrichtenauthentifizierungskode Download PDF

Info

Publication number
DE602004011501T2
DE602004011501T2 DE602004011501T DE602004011501T DE602004011501T2 DE 602004011501 T2 DE602004011501 T2 DE 602004011501T2 DE 602004011501 T DE602004011501 T DE 602004011501T DE 602004011501 T DE602004011501 T DE 602004011501T DE 602004011501 T2 DE602004011501 T2 DE 602004011501T2
Authority
DE
Germany
Prior art keywords
data
unit
crc
communication data
transmission
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE602004011501T
Other languages
English (en)
Other versions
DE602004011501D1 (de
Inventor
Hiroki Yamauchi
Natsume Matsuzaki
Yuusaku Moriguchi-shi OHTA
Yuichi Osaka-shi Futa
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of DE602004011501D1 publication Critical patent/DE602004011501D1/de
Application granted granted Critical
Publication of DE602004011501T2 publication Critical patent/DE602004011501T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/22Arrangements for preventing the taking of data from a data transmission channel without authorisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3271Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/60Digital content management, e.g. content distribution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/101Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management

Description

  • 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.

Claims (13)

  1. Übertragungsvorrichtung (10) zur Übertragung von Kommunikationsdaten entweder an eine Empfangsvorrichtung (20) oder eine Vermittlungsvorrichtung (30) mit: einer Erfassungseinheit (12) zur Erfassung der Kommunikationsdaten; und einer Halteeinheit (13) zum Halten einer geheimen Information gemeinsam mit der Empfangsvorrichtung (20); einer Code-Erzeugungseinheit (122) zur Erzeugung eines Prüfcodes; und einer Übertragungseinheit (123) zur Übertragung der Kommunikationsdaten mit dem daran angehängten erzeugten Prüfcode; dadurch gekennzeichnet, dass die Codeerzeugungseinheit (122) angepasst ist, um einen ersten Prüfcode zu erzeugen, wenn die erfassten Kommunikationsdaten an die Empfangsvorrichtung (20) übertragen werden sollen, indem eine vorbestimmte Codeumwandlung auf erste Berechnungsdaten, die die erfassten Kommunikationsdaten mit der daran angehängten geheimen Information und vorbestimmen Daten sind, angewendet wird, und um einen zweiten Prüfcode zu erzeugen, wenn die erfassten Kommunikationsdaten an die Vermittlungsvorrichtung (30) übertragen werden sollen, indem die vorbestimmte Codeumwandlung auf zweite Berechnungsdaten, die die erfassten Kommunikationsdaten mit den daran angehängten vorbestimmen Daten sind, angewendet wird.
  2. Übertragungsvorrichtung (10) gemäß Anspruch 1, wobei die Kommunikationsdaten Adressinformationen zur Angabe eines Ziels, Adressinformationen zur Angabe einer Übertragungsherkunft und zu übertragende Daten enthalten.
  3. Übertragungsvorrichtung (10) gemäß Anspruch 1, wobei die Codeerzeugungseinheit (122) gemäß der Kommunikationsdaten den ersten Prüfcode oder den zweiten Prüfcode erzeugt.
  4. Übertragungsvorrichtung (10) gemäß Anspruch 1, wobei die vorbestimmte Codeumwandlung eine Codeumwandlung einer zyklischen Redundanzprüfung oder einer Prüfsumme ist.
  5. Übertragungsvorrichtung (10) gemäß Anspruch 1, wobei die Erfassungseinheit (12), die Halteeinheit (13), die Codeerzeugungseinheit (122) und die Übertragungseinheit (123) als eine integrierte Schaltung aufgebaut sind.
  6. Empfangsvorrichtung (20), die Kommunikationsdaten entweder von einer Übertragungsvorrichtung (10) oder einer Vermittlungsvorrichtung (30) empfängt, mit: einer Halteeinheit (23) zum Halten einer geheimer Information gemeinsam mit der Übertragungsvorrichtung (10); einer Empfangseinheit (224) zum Empfangen der Kommunikationsdaten mit einem daran angehängten Prüfcode von entweder der Übertragungsvorrichtung (10) oder der Vermittlungsvorrichtung (30); einer Codeerzeugungseinheit (225) zur Erzeugung eines Prüfcodes; und einer Prüfeinheit (25) zum Prüfen, ob ein Fehler in den Kommunikationsdaten aufgetreten ist, auf Basis des von der Codeerzeugungseinheit (225) erzeugten Prüfcodes und des von der Empfangseinheit (224) empfangenen Prüfcodes; dadurch gekennzeichnet, dass die Codeerzeugungseinheit (225) angepasst ist, um einen ersten Prüfcode zu erzeugen, wenn die empfangenen Kommunikationsdaten von der Übertragungsvorrichtung (10) übertragen wurden, indem eine vorbestimme Codeumwandlung auf Berechnungsdaten angewendet wird, die die Kommunikationsdaten mit dem daran angehängten Prüfcode und der darin eingefügten geheimen Information sind, und um einen zweiten Prüfcode zu erzeugen, wenn die empfangenen Kommunikationsdaten von der Vermittlungsvorrichtung (30) übertragen wurden, indem die vorbestimmte Codeumwandlung auf die empfangenen Kommunikationsdaten mit dem daran angehängten Prüfcode angewendet wird.
  7. Empfangsvorrichtung (20) gemäß Anspruch 6, wobei die Kommunikationsdaten Adressinformationen zur Angabe eines Ziels, Adressinformationen zur Angabe einer Übertragungsherkunft und zu übertragende Daten enthalten.
  8. Empfangsvorrichtung (20) gemäß Anspruch 6, wobei die Codeerzeugungseinheit (225) gemäß der Kommunikationsdaten den ersten Prüfcode oder den zweiten Prüfcode erzeugt.
  9. Empfangsvorrichtung (20) gemäß Anspruch 6, wobei die vorbestimmte Codeumwandlung eine Codeumwandlung einer zyklischen Redundanzprüfung oder einer Prüfsumme ist.
  10. Empfangsvorrichtung (20) gemäß Anspruch 6, wobei die Halteeinheit (23), die Empfangseinheit (224), die Codeerzeugungseinheit (225) und die Prüfeinheit (25) als eine integrierte Schaltung aufgebaut sind.
  11. Übertragungs/Empfangssystem zur Übermittlung von Kommunikationsdaten von einer Übertragungsvorrichtung (10) an eine externe Vorrichtung sowie zur Übermittlung von Kommunikationsdaten von der externen Vorrichtung an eine Empfangsvorrichtung (20) mit: einer Übertragungsvorrichtung (10) gemäß einem der Ansprüche 1 bis 5, einer Empfangsvorrichtung (20) gemäß einem der Ansprüche 6 bis 10 und einer Vermittlungsvorrichtung (30), die mit der Übertragungsvorrichtung (10), der Empfangsvorrichtung (20) und einer externen Vorrichtung verbunden ist, wobei die Vermittlungsvorrichtung umfasst: eine vermittlungsseitige Empfangseinheit (31) zum Empfangen von Kommunikationsdaten mit einem daran angehängten Prüfcode, die von der Übertragungsvorrichtung (10) übertragen werden und für die externe Vorrichtung bestimmt sind, einer vermittlungsseitigen Erzeugungseinheit (30), die angepasst ist, um einen dritten Prüfcode zu erzeugen, in dem eine vorbestimmte Codeumwandlung, die identisch ist zu der durch die Übertragungsvorrichtung (10) und die Empfangsvorrichtung (20) angewendete Codeumwandlung, auf die Kommunikationsdaten mit dem daran angehängten Prüfcode, der durch die vermittlungsseitige Empfangseinheit (31) empfangen wurde, angewendet wird und; eine Beurteilungseinheit (30), die angepasst ist, um auf Basis des erzeugten dritten Prüfcodes und des von der vermittlungsseitigen Empfangseinheit (31) empfangenen Prüfcodes zu beurteilen, ob die Kommunikationsdaten mit dem daran angehängten Prüfcode verworfen werden sollen oder an die externe Vorrichtung übermittelt werden sollen.
  12. Übertragungs/Empfangssystem gemäß Anspruch 11, wobei die Kommunikationsdaten Adressinformationen zur Angabe eines Ziels, Adressinformationen zur Angabe einer Übertragungsherkunft und zu übertragende Daten enthalten.
  13. Übertragungs/Empfangssystem nach Anspruch 12, wobei die Vermittlungsvorrichtung (60) außerdem enthält: eine Adressinformations-Halteeinheit (69) zum Halten von Adressinformationen im Bezug auf eine externe Vorrichtung und eine Vermittlungseinheit (63) zur Übermittlung der durch die vermittlungsseitige Empfangseinheit (61) empfangenen Kommunikationsdaten an die von der in den Kommunikationsdaten enthalten Adressinformation angegebene externe Vorrichtung, wenn die gehaltene Adressinformation die Adressinformation zur Angabe eines Ziels ist, die in den von der Übertragungsvorrichtung (10) übertragenen Kommunikationsdaten enthalten ist.
DE602004011501T 2003-05-07 2004-04-28 Sende-empfangssystem mit nachrichtenauthentifizierungskode Expired - Fee Related DE602004011501T2 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2003129038 2003-05-07
JP2003129038 2003-05-07
PCT/JP2004/006185 WO2004100445A2 (en) 2003-05-07 2004-04-28 Transmission/reception system using message authentication code

Publications (2)

Publication Number Publication Date
DE602004011501D1 DE602004011501D1 (de) 2008-03-13
DE602004011501T2 true DE602004011501T2 (de) 2008-05-21

Family

ID=33432064

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602004011501T Expired - Fee Related DE602004011501T2 (de) 2003-05-07 2004-04-28 Sende-empfangssystem mit nachrichtenauthentifizierungskode

Country Status (7)

Country Link
US (1) US7457410B2 (de)
EP (1) EP1618702B1 (de)
KR (1) KR20060008976A (de)
CN (1) CN1836398A (de)
DE (1) DE602004011501T2 (de)
TW (1) TW200501070A (de)
WO (1) WO2004100445A2 (de)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050055722A1 (en) * 2003-09-09 2005-03-10 Sony Corporation Intelligent routing of digital content
US7937759B2 (en) * 2003-10-02 2011-05-03 Auburn University System and method for protecting communication devices from denial of service attacks
US7774841B2 (en) * 2003-10-02 2010-08-10 Aubum University System and method for protecting network resources from denial of service attacks
ATE405051T1 (de) * 2004-11-22 2008-08-15 Research In Motion Ltd Verfahren zur sicheren redundanzaddition einer elektronischen nachricht
CN100517418C (zh) * 2004-11-26 2009-07-22 索尼计算机娱乐公司 电池和用于对电池进行认证的认证系统和认证方法
CN100444188C (zh) * 2005-08-03 2008-12-17 积体数位股份有限公司 声纹密码锁系统
JP2007318247A (ja) * 2006-05-23 2007-12-06 Allied Telesis Holdings Kk バス型ネットワークにおける利用者制限方法および利用者制限装置、ならびにバス型ネットワークシステム
JP2009049642A (ja) * 2007-08-17 2009-03-05 Omron Corp 伝送システム
JP4871373B2 (ja) 2009-06-19 2012-02-08 任天堂株式会社 情報処理システムおよび情報処理装置
JP5674296B2 (ja) 2009-09-09 2015-02-25 任天堂株式会社 情報処理システムおよび情報処理装置
US8370920B2 (en) * 2009-10-28 2013-02-05 Aunigma Network Security Corp. System and method for providing unified transport and security protocols
JP2011250874A (ja) 2010-05-31 2011-12-15 Nintendo Co Ltd 情報処理プログラム、情報処理装置、情報処理システム及び情報処理方法
JP5593566B2 (ja) 2010-06-10 2014-09-24 任天堂株式会社 情報処理システム、情報処理装置、情報処理装置の制御方法および情報処理装置の制御プログラム
JP2012018657A (ja) * 2010-06-11 2012-01-26 Nintendo Co Ltd 情報処理端末、情報処理システム、情報処理プログラム
JP5677811B2 (ja) 2010-06-11 2015-02-25 任天堂株式会社 携帯型情報端末、携帯情報システム、携帯型情報端末制御プログラム
JP4999213B2 (ja) 2010-09-17 2012-08-15 任天堂株式会社 情報処理プログラム、携帯端末装置、システム、情報処理方法及び通信システム
JP4882022B1 (ja) 2010-12-28 2012-02-22 任天堂株式会社 通信システム、情報処理プログラム、情報処理方法、情報処理装置、情報処理システム
US20120226966A1 (en) * 2011-03-01 2012-09-06 Futurewei Technologies, Inc. System and Method for Device Identification in a Communications System
WO2013087771A1 (de) * 2011-12-15 2013-06-20 Siemens Aktiengesellschaft Verfahren zur bildung eines crc-wertes sowie sende- und empfangsvorrichtung hierfür
US9185652B2 (en) * 2011-12-22 2015-11-10 Broadcom Corporation Bluetooth low energy module systems and methods
US8914699B2 (en) * 2012-04-30 2014-12-16 Motorola Solutions, Inc. Method and apparatus for restricting radio access to a system
JP6007620B2 (ja) * 2012-06-29 2016-10-12 富士通株式会社 中継装置、ストレージシステムおよび中継装置の制御方法
US10021069B1 (en) 2015-04-02 2018-07-10 Aunigma Network Security Corp. Real time dynamic client access control
CN105933039B (zh) 2016-06-24 2018-06-29 飞天诚信科技股份有限公司 一种蓝牙设备及其工作方法
DE102016222599A1 (de) * 2016-11-16 2018-05-17 Continental Teves Ag & Co. Ohg Verfahren zur Absicherung der Datenübertragung in einem Datenbus
CN109474380B (zh) * 2017-09-08 2022-05-10 华为技术有限公司 编码方法及装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19924986B4 (de) * 1998-05-29 2006-03-23 Hitachi, Ltd. Verschlüsselungs-Konversionsvorrichtung, Entschlüsselungs-Konversionsvorrichtung, kryptografisches Kommunikationssystem und elektronische Gebühren-Sammelvorrichtung
US6324645B1 (en) * 1998-08-11 2001-11-27 Verisign, Inc. Risk management for public key management infrastructure using digital certificates
CN1163018C (zh) * 1999-08-09 2004-08-18 高通股份有限公司 用来产生消息鉴别码的方法和设备
JP3749817B2 (ja) 2000-03-30 2006-03-01 株式会社東芝 送信装置およびその送信方法
US6584564B2 (en) * 2000-04-25 2003-06-24 Sigaba Corporation Secure e-mail system
JP2002124952A (ja) * 2000-10-12 2002-04-26 Furukawa Electric Co Ltd:The 無線ネットワークにおける無線端末の認証方法および無線ネットワークにおける無線端末の認証システム
US6915473B2 (en) * 2001-05-14 2005-07-05 Interdigital Technology Corporation Method and system for implicit user equipment identification

Also Published As

Publication number Publication date
US20040250061A1 (en) 2004-12-09
DE602004011501D1 (de) 2008-03-13
TW200501070A (en) 2005-01-01
EP1618702A2 (de) 2006-01-25
CN1836398A (zh) 2006-09-20
WO2004100445A2 (en) 2004-11-18
KR20060008976A (ko) 2006-01-27
EP1618702B1 (de) 2008-01-23
WO2004100445A3 (en) 2005-02-24
US7457410B2 (en) 2008-11-25

Similar Documents

Publication Publication Date Title
DE602004011501T2 (de) Sende-empfangssystem mit nachrichtenauthentifizierungskode
DE102014224694B4 (de) Netzwerkgerät und Netzwerksystem
DE602005000943T2 (de) Verfahren und Vorrichtung zur sicheren Übertragung von Inhalten mit Urheberschutz
DE69833605T2 (de) Sichere virtuelle LANS
DE69433771T2 (de) Verfahren und Vorrichtung zur Geheimhaltung und Authentifizierung in einem mobilen drahtlosen Netz
DE69831974T2 (de) Verfahren zur paketauthentifizierung in gegenwart von netzwerkadressübersetzungen und protokollumwandlungen
DE60302276T2 (de) Verfahren zur ferngesteuerten Änderung eines Kommunikationspasswortes
DE69828809T2 (de) Sicherheit von datenverbindungen
EP0903026B1 (de) Verfahren zur Aushandlung einer Sicherheitspolitik zwischen einer ersten Computereinheit und einer zweiten Computereinheit
EP2494759B1 (de) Verfahren und vorrichtung zum sicheren übertragen von daten
DE102009041805A1 (de) SIP-Signalisierung ohne ständige Neu-Authentifizierung
DE602004001606T2 (de) Return-Routability-Verfahren zur sicheren Kommunikation
DE69734621T2 (de) Virtuelles Authentifizierungsnetzwerk für gesicherte Prozessoren
EP2014010B1 (de) Verfahren, vorrichtungen und computerprogrammprodukt zum ver- und entschlüsseln von mediendaten
DE60320322T2 (de) Authentifizierung in einem kommunikationsnetz
DE112008002860T5 (de) Verfahren und Vorrichtung für das Bereitstellen einer sicheren Verknüpfung mit einer Benutzeridentität in einem System für digitale Rechteverwaltung
DE10244727A1 (de) System und Verfahren zur sicheren Datenübertragung
EP1721235B1 (de) Kommunikationssystem und verfahren zur bereitstellung eines mobilen kommunikationsdienstes
DE602005004341T2 (de) Cookie-basiertes Verfahren zur Authentifizierung von MAC-Nachrichten
WO2019015860A1 (de) Verfahren, vorrichtungen und computerprogrammprodukt zur überprüfung von verbindungsparametern einer kryptographisch geschützten kommunikationsverbindung während des verbindungsaufbaus
EP1468520B1 (de) Verfahren zur datenverkehrssicherung in einer mobilen netzumgebung
WO2013174578A1 (de) Verfahren und vorrichtung zur erzeugung kryptographisch geschützter redundanter datenpakete
EP3603012A1 (de) Verfahren und vorrichtung zum schutz einer kommunikation zwischen mindestens einer ersten kommunikationseinrichtung und wenigstens einer zweiten kommunikationseinrichtung insbesondere innerhalb eines kommunikationsnetzwerkes einer industriellen fertigung und/oder automatisierung
JP2004357284A (ja) 送受信システム
EP2830277B1 (de) Verfahren und system zur manipulationssicheren übertragung von datenpaketen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: PANASONIC CORP., KADOMA, OSAKA, JP

8339 Ceased/non-payment of the annual fee