DE102009024067A1 - Method for administrating data in distributed hash table-based peer-to-peer network, involves transferring data file between nodes after expiration of time interval, where identity of nodes is derived from determined identity values - Google Patents
Method for administrating data in distributed hash table-based peer-to-peer network, involves transferring data file between nodes after expiration of time interval, where identity of nodes is derived from determined identity values Download PDFInfo
- Publication number
- DE102009024067A1 DE102009024067A1 DE200910024067 DE102009024067A DE102009024067A1 DE 102009024067 A1 DE102009024067 A1 DE 102009024067A1 DE 200910024067 DE200910024067 DE 200910024067 DE 102009024067 A DE102009024067 A DE 102009024067A DE 102009024067 A1 DE102009024067 A1 DE 102009024067A1
- Authority
- DE
- Germany
- Prior art keywords
- file
- identity
- keyword
- list
- network node
- 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.)
- Withdrawn
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/42—Loop networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3236—Cryptographic 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 cryptographic hash functions
Abstract
Description
Die Erfindung betrifft ein Verfahren zum Verwalten von Daten in einem Datennetz sowie ein entsprechendes Datennetz.The The invention relates to a method for managing data in one Data network and a corresponding data network.
Zum Schutz von sensiblen Daten sind aus dem Stand der Technik entsprechende Mechanismen zum Verschlüsseln bzw. zur Authentifizierung von die sensiblen Daten enthaltenden Dateien bekannt. Solche Sicherungsmechanismen können sowohl in über eine zentrale Instanz verwalteten Datennetzen als auch in dezentralen Datennetzen eingesetzt werden, bei denen Dateien ohne eine zentrale Instanz von den einzelnen Knoten des Datennetzes verwaltet werden. Es sind dabei jedoch keine Sicherungsverfahren bekannt, die mit Hilfe von bei der Verwaltung des Datennetzes verwendeten Mechanismen einen Schutz der gespeicherten Dateien auch ohne den Einsatz bekannter Verfahren zur Authentifizierung bzw. Verschlüsselung ermöglichen.To the Protection of sensitive data are state of the art Encrypting mechanisms or for authentication of the sensitive data containing Files known. Such security mechanisms can be used both in over one central instance managed data networks as well as in decentralized Data networks are used in which files without a central Instance can be managed by the individual nodes of the data network. However, there are no known backup methods using of mechanisms used in the management of the data network Protection of stored files even without the use of known Enable authentication or encryption procedures.
Aufgabe der Erfindung ist es, ein Verfahren zum Verwalten von Daten in einem Datennetz sowie ein entsprechendes Datennetz zu schaffen, mit denen auf einfache Weise eine effiziente Sicherung der in dem Netz gespeicherten Dateien gegenüber unbefugtem Zugriff erreicht wird.task The invention is a method for managing data in a Data network and a corresponding data network to create, with which in a simple way an efficient backup of those stored in the network Files opposite unauthorized access is achieved.
Diese Aufgabe wird durch das Verfahren gemäß Patentanspruch 1 bzw. das Datennetz gemäß Patentanspruch 21 gelöst. Weiterbildungen der Erfindung sind in den abhängigen Ansprüchen definiert.These The object is achieved by the method according to claim 1 or Data network according to claim 21 solved. Further developments of the invention are defined in the dependent claims.
Das erfindungsgemäße Verfahren wird in einem Datennetz eingesetzt, bei dem die Struktur des Datennetzes durch Netzknoten beschrieben wird, denen jeweils eine Identität aus einem Wertebereich von Identitätswerten zugeordnet ist. Die Identität eines Netzknotens entspricht somit einem Identitätswert aus dem Wertebereich. Das Verfahren wird dabei vorzugsweise für Peer-to-Peer-Netze verwendet, insbesondere für DHT-basierte Peer-to-Peer-Netze, welche an sich aus dem Stand der Technik bekannt sind und die im Prinzip eine verteilte Hash-Tabelle implementieren (DHT = Distributed Hash Table). Solche Netze nutzen zum Auffinden von Netzknoten beispielsweise die an sich bekannten Protokolle Chord bzw. Kademlia bzw. Tapestry beruhen.The inventive method is used in a data network in which the structure of the data network is described by network nodes, each having an identity of a Value range of identity values assigned. The identity of a network node thus corresponds to an identity value from the range of values. The method is preferably used for peer-to-peer networks, especially for DHT-based Peer-to-peer networks, which are known per se from the prior art are and in principle implement a distributed hash table (DHT = Distributed Hash Table). Such networks use for finding from network nodes, for example, the well-known protocols Chord or Kademlia or Tapestry.
Das erfindungsgemäße Verfahren zeichnet sich dadurch aus, dass der Speicherort einer in dem Datennetz gespeicherten Datei in zeitlichen Abständen dadurch verändert wird, dass ein jeweiliger Netzknoten, der die Datei gerade speichert, basierend auf einer im Datennetz bereitgestellten Liste umfassend eine Folge von aufeinander folgenden Schlüsselwörtern einen Identitätswert aus dem Wertebereich von Identitätswerten ermittelt, wobei nach Ablauf einer Zeitspanne seit der Speicherung der Datei auf dem jeweiligen Netzknoten die Datei an einen nächsten Netzknoten übertragen wird, dessen Identität aus dem ermittelten Identitätswert abgeleitet wird.The inventive method is characterized in that the location of one in the data network stored file is temporally changed thereby that a respective network node, which is currently saving the file, based on a list provided in the data network a sequence of consecutive keywords will provide an identity value determines the range of values of identity values, after expiration of a period of time since the file was saved on the respective network node transfer the file to a next network node becomes, whose identity derived from the identified identity value becomes.
Das erfindungsgemäße Verfahren beruht auf der Erkenntnis, dass durch eine geeignete Liste an Schlüsselwörtern, auf welche insbesondere nur Netzknoten aus dem Datennetz Zugriff haben, eine geeignete Variation des Speicherorts einer Datei in dem Datennetz erreicht werden kann, so dass einem Angreifer der Speicherort der Datei in geeigneter Weise verschleiert wird. Hierdurch wird ein guter Schutz vor unbefugtem Zugriff auf die Datei erreicht.The inventive method is based on the knowledge that through an appropriate list of keywords, based on which in particular only network nodes from the data network have access, an appropriate variation of the location of a file in the data network can be achieved, allowing an attacker the location of the File is appropriately obfuscated. This will be a Good protection against unauthorized access to the file.
Die in der Liste in aufeinander folgender Reihenfolge enthaltenen Schlüsselwörter können erfindungsgemäß beliebig ausgestaltet sein. Beispielsweise kann die Liste auf einer Textdatei aus aufeinander folgenden, über Leerzeichen voneinander getrennten Zeichenketten, insbesondere in der Form von Wörtern, basieren. In diesem Fall entspricht die Liste der Textdatei, wobei entsprechende Regeln zur Zuweisung von einem oder mehreren Zeichen aus der Textdatei zu Schlüsselwörtern festgelegt sind. Vorzugsweise entspricht dabei eine jeweilige Zeichenkette in der Textdatei einem Schlüsselwort der Liste. In einer einfachen Realisierung können die einzelnen Schlüsselwörter gegebenenfalls jedoch auch bereits einen Identitätswert aus dem Wertebereich darstellen. Das heißt, ein Schlüsselwort entspricht einem Identitätswert und die Ermittlung des Identitätswerts aus der Liste besteht darin, den Identitätswert aus der Liste auszulesen.The According to the invention, any keywords contained in the list in successive order can be arbitrary be designed. For example, the list may be on a text file out of successive, over Spaces separated strings, especially in the form of words, based. In this case, the list corresponds to the text file, where appropriate rules for assigning one or more characters from the text file to keywords are. Preferably, a respective character string corresponds to this in the text file a keyword the list. In a simple realization, the individual keywords may be appropriate but also already represent an identity value from the range of values. This means, a keyword corresponds to an identity value and determining the identity value the list consists of reading out the identity value from the list.
In einer weiteren Variante des erfindungsgemäßen Verfahrens, in dem die Schlüsselwörter auf einer entsprechenden Textdatei basieren, wird ein Schlüsselwort in der Liste durch eine vorbestimmte Anzahl von aufeinander folgenden Zeichen in der Textdatei gebildet. Auf diese Weise wird die Verwendung von gleichen, häufig in einem Text vorkommenden Schlüsselwörtern vermieden. Vorzugsweise sind dabei die Anfangszeichen von zwei benachbarten Schlüsselwörtern benachbarte Zeichen in der Textdatei. Auf diese Weise kann aus einer Textdatei eine große Anzahl von Schlüsselwörtern generiert werden. Es besteht dabei die Möglichkeit, dass die vorbestimmte Anzahl von aufeinander folgenden Zeichen zur Bildung eines jeweiligen Schlüsselworts innerhalb der Textdatei zumindest abschnittsweise konstant bleibt bzw. gegebenenfalls auch variiert. Die Variation kann dabei auf beliebige Weise erreicht werden, beispielsweise durch eine entsprechende Abbildung eines für die Schlüsselwörter verwendeten Index auf eine Schlüsselwortlänge. Durch die Verwendung von Schlüsselwörtern mit einer festen und gegebenenfalls auch variierenden Anzahl von aufeinander folgenden Zeichen wird die Ermittlung des Speicherorts einer Datei für einen Angreifer erschwert, da der Angreifer neben der Textdatei auch die Schlüsselwortlänge bzw. die Funktion zur Bestimmung der Schlüsselwortlänge kennen muss.In a further variant of the method according to the invention, in which the keywords are based on a corresponding text file, a keyword in the list is formed by a predetermined number of consecutive characters in the text file. This avoids the use of common keywords that are common in a text. Preferably, the starting characters of two adjacent keywords are adjacent characters in the text file. In this way, a large number of keywords can be generated from a text file. There is the possibility that the predetermined number of consecutive characters to form a respective key selworts within the text file at least in sections remains constant or possibly also varies. The variation can be achieved in any desired manner, for example by a corresponding mapping of an index used for the keywords to a keyword length. The use of keywords with a fixed and possibly also varying number of consecutive characters makes it difficult for an attacker to determine the location of a file since the attacker must be aware of the keyword length in addition to the text file or the function for determining the keyword length.
In einer besonders bevorzugten Ausführungsform wird das erfindungsgemäße Verfahren in einem Datennetz eingesetzt, bei dem jeder Netzknoten in dem Datennetz für ein die Identität des jeweiligen Netzknotens umfassendes Intervall von Identitätswerten aus dem Wertebereich zuständig ist. Ein DHT-basiertes Peer-to-Peer-Netz stellt beispielsweise ein solches Datennetz dar. In Datennetzen, bei denen ein jeweiliger Netzknoten für ein Intervall von Identitätswerten zuständig ist, wird in einer bevorzugten Variante die Erfindung als Identität des nächsten Netzknotens die Identität desjenigen Netzknotens abgeleitet, der für dasjenige Intervall zuständig ist, das den über die Liste ermittelten Identitätswert umfasst. Die Identität dieses Netzknotens kann dabei basierend auf dem Identitätswert mit entsprechend aus Peer-to-Peer-Protokollen bekannten Suchverfahren bestimmt werden.In a particularly preferred embodiment becomes the method according to the invention used in a data network in which each network node in the data network for a the identity of the respective network node's comprehensive interval of identity values responsible for the value range is. A DHT-based peer-to-peer network represents, for example, such a data network. In data networks, in which a respective network node for an interval of identity values responsible is, in a preferred variant, the invention as the identity of the next network node the identity derived from the network node responsible for that interval, that the over the list determined identity value includes. The identity this network node can be based on the identity value with according to peer-to-peer protocols known search methods are determined.
In einer besonders bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens verwendet ein jeweiliger Netzknoten zur Ermittlung des Identitätswerts dasjenige Schlüsselwort, welches in der Liste auf das Schlüsselwort folgt, das zur Ermittlung des Identitätswerts von dem Netzknoten verwendet wurde, von dem die Datei an den jeweiligen Netzknoten übertragen wurde. Hierdurch wird besonders einfach durch sukzessives Durchlaufen der Liste ein neuer Speicherort für eine Datei bestimmt. Vorzugsweise bestimmt dabei ein jeweiliger Netzknoten das von ihm zu verwendende Schlüsselwort dadurch, dass der jeweilige Netzknoten aufeinander folgend aus den Schlüsselwörtern der Liste entsprechende Identitätswerte ermittelt, bis der jeweilige Netzknoten ein Schlüsselwort findet, aus dessen ermitteltem Identitätswert seine Identität abgeleitet ist, wobei das auf das gefundene Schlüsselwort folgende Schlüsselwort das zu verwendende Schlüsselwort ist. In dieser Variante kann somit ein Netzknoten selbsttätig durch sukzessives Ausprobieren von Schlüsselwörtern aus der Liste bestimmen, welches Schlüsselwort als nächstes zu verwenden ist.In a particularly preferred embodiment the method according to the invention uses a respective network node to determine the identity value that keyword, which follows in the list on the keyword, which for the determination the identity value was used by the network node from which the file to the respective Transfer network node has been. This is particularly easy to go through successively The list determines a new location for a file. Preferably A respective network node determines the one to be used by it keyword in that the respective network node successively from the Keywords List corresponding identity values determined until the respective network node finds a keyword from whose determined identity value his identity is derived, with the keyword following the keyword found the keyword to use is. In this variant, thus, a network node automatically by successively trying out keywords from the list which keyword next to use.
Alternativ oder zusätzlich zu der gerade beschriebenen Variante der Bestimmung des zu verwendenden Schlüsselworts kann gegebenenfalls bei der Übertragung einer Datei an den nächs ten Netzknoten die Position desjenigen Schlüsselworts in der Liste übertragen werden, auf dessen Basis die Identität des nächsten Netzknotens abgeleitet wurde. Das heißt, es wird die Position desjenigen Schlüsselworts übertragen, aus welchem derjenige Identitätswert ermittelt wurde, aus dem die Identität des nächsten Netzknotens abgeleitet wurde. In diesem Fall wird dann von dem nächsten Netzknoten das auf der nächsten Position in der Liste liegende Schlüsselwort zur Ermittlung des Identitätswerts verwendet. Die Position des Schlüsselworts gibt dabei wieder, an wievielter Stelle sich das entsprechende Schlüsselwort in der Folge der aufeinander folgenden Schlüsselwörter befindet.alternative or additionally to the just described variant of the determination of the one to be used keyword may be during transmission one file to the next Network node to transfer the position of that keyword in the list based on which the identity of the next network node is derived has been. This means, it will transfer the position of the keyword from which the one identity value from which the identity of the next network node was derived has been. In this case, then from the next network node on the next Position in the list lying keyword to identify the identity value used. The position of the keyword indicates how many times the corresponding keyword appears is located in the sequence of consecutive keywords.
Ein Identitätswert kann aus einem Schlüsselwort in beliebiger Art und Weise ermittelt werden. In der bereits oben erwähnten sehr einfachen Variante kann das Schlüsselwort gegebenenfalls den Identitätswert selbst darstellen, wobei die Ermittlung dann in dem Auslesen des Identitätswerts aus der Liste besteht. Vorzugsweise ermittelt ein jeweiliger Netzknoten jedoch einen Identitätswert aus einem Schlüsselwort durch Anwenden einer ersten Hash-Funktion auf das Schlüsselwort. Es können dabei bekannte Hash-Funktionen, z. B. SHA1, verwendet werden. Zur Erhöhung der Sicherheit des Verfahrens wird in einer besonders bevorzugten Variante bei Anwenden der ersten Hash-Funktion ferner zumindest ein Teil des der Datei zugeordneten Namens verwendet.One identity value can be from a keyword be determined in any way. In the already above mentioned very simple variant, the keyword may be the Identity value itself the determination then being in the readout of the identity value from the list. Preferably, a respective network node determines but an identity value from a keyword by applying a first hash function to the keyword. It can known hash functions, z. B. SHA1 used. to increase The safety of the method is in a particularly preferred variant further, when applying the first hash function, at least a part of the name assigned to the file.
In einer weiteren, besonders bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens wird die Sicherheit gegenüber Angriffen von Dritten noch weiter dadurch erhöht, dass nicht nur der Speicherort, sondern auch die Zeitspanne der Speicherung einer Datei auf einem Netzknoten verändert wird. Hierzu ermittelt ein jeweiliger Netzknoten basierend auf der Liste ferner die Zeitspanne, die eine an ihn übertragene Datei bis zur Übertragung an den nächsten Netzknoten bei ihm gespeichert bleibt. Vorzugsweise verwendet der jeweilige Netzknoten dabei dasjenige Schlüsselwort, auf dessen Basis er als nächs ter Netzknoten bestimmt wurde. Das heißt, es wird dasjenige Schlüsselwort zur Ermittlung der Zeitspanne verwendet, aus dem derjenige Identitätswert ermittelt wurde, aus dem die Identität des jeweiligen Netzknotens als nächster Netzknoten abgeleitet wurde.In a further, particularly preferred embodiment of the method according to the invention will be the safety opposite Attacks from third parties further increased by the fact that not only the location, but also the time span of saving a file on a network node changed becomes. For this purpose, determines a respective network node based on the List also the amount of time that a file transferred to it will be up to transmission to the next Network node remains stored with him. Preferably, the respective network nodes doing that keyword on the basis thereof he next Network node was determined. That is, it becomes the keyword used to determine the period of time from which identifies that identity value became, out of which the identity of the respective network node next Network node was derived.
In einer bevorzugten Variante des erfindungsgemäßen Verfahrens ermittelt der jeweilige Netzknoten eine Zeitspanne aus einem Schlüsselwort durch Anwenden einer zweiten Hash-Funktion auf das Schlüsselwort, wobei die zweite Hash-Funktion vorzugsweise eine andere als die erste Hash-Funktion ist. Die zweite Hash-Funktion ist dabei derart konstruiert, dass der entsprechende Wertebereich von Identitätswerten auf Werte aus einem Zeitintervall abgebildet wird. Analog zu der ersten Hash-Funktion kann gegebenenfalls auch bei Anwenden der zweiten Hash-Funktion ferner zumindest ein Teil des Namens der in dem Datennetz gespeicherten Datei berücksichtigt werden.In a preferred variant of the method according to the invention, the respective network node determines a period of time from a keyword by applying a second hash function to the keyword, wherein the second hash function is preferably other than the first hash function. The second hash function is constructed such that the corresponding value range of identity values is mapped to values from a time interval. If necessary, analogous to the first hash function, at least a part of the name of the file stored in the data network may also be taken into account when applying the second hash function.
In einer bevorzugten Ausführungsform des erfindungsgemäßen Verfahrens ist die verwendete Liste derart ausgestaltet, dass sie eine Folge von sich unterscheidenden Schlüsselwörtern enthält. Auf diese Weise wird sichergestellt, dass in der Variante der Erfindung, bei der das zu verwendende Schlüsselwort durch den jeweiligen Netzknoten über Ausprobieren bestimmt wird, alle Schlüsselwörter in der Liste durchlaufen werden. Dies kann gegebenenfalls auch dadurch erreicht werden, dass bei der Verwendung der Liste durch einen jeweiligen Netzknoten solche Schlüsselwörter ignoriert werden, welche zum zweiten oder mehrten Mal in der Liste auftreten.In a preferred embodiment the method according to the invention the list used is designed to be a sequence contains differing keywords. On this way it is ensured that in the variant of the invention, at which the keyword to use through the respective network node via Trying out is determined to go through all the keywords in the list become. If appropriate, this can also be achieved by when using the list by a respective network node such Keywords ignored which appear for the second or the second time in the list.
Die Liste aus Schlüsselwörtern kann auf beliebige Weise in dem Datennetz bereitgestellt werden. Beispielsweise kann die Liste oder eine Referenz auf einen Speicherort der Liste bei der Übertragung einer Datei an den nächsten Netzknoten mit übertragen werden.The List of keywords can be provided in any way in the data network. For example can list the list or a reference to a location in the transmission one file to the next Network node with transferred become.
Um in geeigneter Weise einen (berechtigten) Zugriff auf eine gespeicherte Datei zu ermöglichen, wird in einer weiteren Variante des erfindungsgemäßen Verfahrens für eine in dem Datennetz gespeicherte Datei der Speicherzeitpunkt erfasst, auf den ein berechtigter Nutzer Zugriff hat. Dabei wird der Speicherort der Datei zu einem aktuellen Zeitpunkt, d. h. zu dem Zeitpunkt des gewünschten Zugriffs auf die gespeicherte Datei, basierend auf der Liste und der Differenz zwischen dem aktuellen Zeitpunkt und dem Speicherzeitpunkt ermittelt. In der detaillierten Beschreibung wird an einem Beispiel dargelegt, wie aus diesen Informationen der Speicherort der Datei extrahiert werden kann.Around as appropriate, a (legitimate) access to a stored Enable file is in a further variant of the method according to the invention for one recorded in the data network file the storage time recorded to which an authorized user has access. This will be the location the file at a current time, d. H. at the time of desired Access to the saved file based on the list and the difference between the current time and the storage time determined. The detailed description will become an example explained how from this information the location of the file can be extracted.
Neben dem oben beschriebenen Verfahren betrifft die Erfindung ferner ein Datennetz, insbesondere ein Peer-to-Peer-Netz, umfassend mehrere Netzknoten, denen jeweils eine Identität aus einem Wertebereich von Identitätswerten zugeordnet ist, wobei das Datennetz derart ausgestaltet ist, dass jede Variante des oben beschriebenen Verfahrens in dem Datennetz durchführbar ist.Next In the method described above, the invention further relates to Data network, in particular a peer-to-peer network, comprising several Network nodes, each having an identity from a range of values of identity values is assigned, wherein the data network is designed such that any variant of the method described above in the data network feasible is.
Ein
Ausführungsbeispiel
der Erfindung wird nachfolgend basierend auf der beigefügten
Im
Folgenden wird ein Beispiel des erfindungsgemäßen Verfahrens anhand eines
Peer-to-Peer-Netzes basierend auf dem Protokoll Chord erläutert. Dieses
Protokoll stellt ein ringförmiges
Overlay-Netz aus einer Mehrzahl von einzelnen Netzknoten bzw. Peers
dar, wobei in
In
dem Szenario gemäß
In
dem Peer-to-Peer-Netz der
Die
Liste L wird in geeigneter Weise den einzelnen Peers zur Verfügung gestellt,
was durch die Anordnung der Liste als ein Rechteck innerhalb des
Rings in der
In
dem Beispiel der
In einer Abwandlung des hier beschriebenen Verfahrens müssen die Schlüsselwörter jedoch nicht durch die einzelnen Worte in dem Textdokument spezifiziert sein. Es besteht auch die Möglichkeit, dass ein Schlüsselwort durch eine vorbestimmte Anzahl von aufeinander folgenden Zeichen in dem Textdokument charakterisiert ist. Ein Schlüsselwort wird somit zum einen durch einen Index i, der das i-te Schlüsselwort definiert, als auch durch einen Parameter L charakterisiert, der die Länge des Schlüsselworts festlegt. Der Vorteil dieser Variante besteht darin, dass sich eine große Anzahl von Schlüsselwörtern aus dem Text des Textdokuments generieren lassen. Darüber hinaus wird eine Wiederholung von primitiven Schlüsselwörtern in der Liste, wie etwa „der”, „die”, „das” und „und”, vermieden. Ferner kann ein Angreifer durch Ausprobieren von häufig vorkommenden Wörtern in Wortfolgen keine Folge von Peers ermitteln, auf denen die Datei D aufeinander folgend gespeichert wird. Darüber hinaus muss ein Angreifer, dem das Textdokument bekannt ist, ferner die Schlüsselwortlänge kennen, um hieraus die entsprechenden Schlüsselwörter der Liste abzuleiten.In a modification of the method described here have the Keywords, however not specified by the individual words in the text document be. There is also the possibility that a keyword by a predetermined number of consecutive characters is characterized in the text document. A keyword is thus on the one hand by an index i, which is the ith keyword defined as also characterized by a parameter L, the the length of the keyword sets. The advantage of this variant is that a size Number of keywords generate the text of the text document. Furthermore a repetition of primitive keywords in the list, such as "the", "the", "the" and "and", is avoided. Furthermore, an attacker can by trial and error of frequently occurring words in phrases determine no sequence of peers on which the file D is stored consecutively. In addition, an attacker, the text document is known, and the keyword length, to derive the corresponding keywords from the list.
Wird
die Schlüsselwortlänge L beispielsweise
auf zehn Zeichen festgelegt, so lauten die ersten zehn Schlüsselwörter basierend
auf dem obigen Text „Ganz
Gallien ist von den Roemern besetzt. ...” wie folgt:
Gegebenenfalls besteht auch die Möglichkeit, dass die Länge L der Schlüsselwörter nicht konstant bleibt, sondern eine Folge L(i) von natürlichen Zahlen in einem Intervall [m, M] ist, wobei i den Index der Folge der Schlüsselwörter bezeichnet.Possibly there is also the possibility that the length L of keywords not remains constant, but a sequence L (i) of natural numbers in one interval [m, M], where i denotes the index of the sequence of keywords.
Gegebenfalls kann diese Variante auch mit der zuvor beschriebenen Variante kombiniert werden, so dass in einem bestimmten Textabschnitt des Textdokuments Schlüsselwörter mit konstanter Länge verwendet werden und in einem anderen Textabschnitt des Textdokuments dann die Länge der Schlüsselwörter variiert wird.possibly This variant can also be combined with the variant described above so that in a certain text section of the text document Keywords with constant length be used and in another section of the text document then the length the keywords is varied.
Geht
man von dem Beispiel des obigen Textes „Ganz Gallien ist von den
Roemern besetzt.” aus
und bildet die Funktion L(i) den Schlüsselwort-Index in den Bereich
[10, 20] von Schlüsselwortlängen gemäß der Rechenvorschrift
L(i) = 10 + 7i mod 11 ab, so ergeben sich folgende erste zehn Schlüsselwörter für i = 0,
..., 9, wenn von Schlüsselwort
zu Schlüsselwort
das nächste
Zeichen in dem Textdokument als Anfangszeichen verwendet wird:
Anstatt einer solch einfachen Rechenvorschrift können auch komplexere Funktionen für L(i) verwendet werden.Instead of such a simple calculation rule can also be more complex functions for L (i) be used.
In der hier beschriebenen Ausführungsform wird in zeitlichen Abständen der Speicherort der Datei D mit Hilfe der Schlüsselwörter aus der Liste L verändert, wobei basierend auf den Schlüsselwörtern festgelegt wird, bei welchem nächsten Netz knoten eine Datei gespeichert werden soll und wie lange diese Datei bei dem nächsten Netzknoten gespeichert bleiben soll. Um dies zu erreichen, wird eine erste Hash-Funktion H1 und eine zweite Hash-Funktion H2 verwendet. Die erste Hash-Funktion H1 bildet dabei die Schlüsselwörter auf den Hashwertebereich des Chord-Rings ab, wohingegen die zweite Hash-Funktion H2 die Schlüsselwörter auf Werte aus einem vorbestimmten Zeitbereich abbildet.In the embodiment described here is at intervals the location of the file D using the keywords from the list L changed, where is set based on the keywords, at which next Net knot a file should be saved and how long this File at the next Network node should remain stored. To achieve this, will uses a first hash function H1 and a second hash function H2. The first hash function H1 forms the keywords the hash value range of the chord ring, whereas the second hash function H2 sets the keywords to values from a predetermined time range maps.
Um den Speicherort für die Datei kontinuierlich zu wechseln, wird die Liste L der Schlüsselwörter der Reihe nach durchlaufen, wobei nach Erreichen des Endes die Liste wieder mit dem ersten Schlüsselwort begonnen wird. Zu Beginn des Verfahrens, wenn zum ersten Mal der Speicherort der Datei hin zu einem neuen Peer wechselt, wird als neuer Peer ein Peer ermittelt, der aus dem ersten Schlüsselwort der Liste abgeleitet ist. Ebenso wird mit Hilfe des ersten Schlüsselworts aus der Liste die Speicherzeit der Datei bei dem nächsten Peer bestimmt. Ist die Speicherzeit beim nächsten Peer abgelaufen, wird das zweite Schlüsselwort der Liste verwendet, um wiederum den nächsten Peer zur Speicherung der Datei sowie die Speicherzeit bei diesem Peer zu bestimmen. Auf diese Weise setzt sich das Verfahren dann über die einzelnen Schlüsselwörter in der Liste hinweg fort.Around the location for To change the file continuously, the list L becomes the keywords of the series after going through, and after reaching the end the list again with the first keyword is started. At the beginning of the procedure, when the first time the The location of the file changes to a new peer is called new peer determines a peer that is from the first keyword derived from the list. Likewise, using the first keyword from the list the storage time of the file at the next peer certainly. If the storage time at the next peer has expired, the second keyword the list used to turn the next peer for storage the file and the storage time for this peer. On In this way, the method then sets itself over the individual keywords away from the list.
Im
Folgenden wird erläutert,
wie in der Ausführungsform
der
Hieraus
ergibt sich der Identitätswert
ID, der in dem Intervall I3 des Hashwertebereichs liegt. Das heißt, es gilt:
Mit
Hilfe an sich bekannter Mechanismen aus dem Chord-Protokoll, welche
analog auch in anderen DHT-basierten Peer-to-Peer-Protokollen verwendet werden,
insbesondere durch die Suche nach der entsprechenden Adresse eines
Peers, wird nunmehr die Identität
desjenigen Peers ermittelt, der für den Identitätswert I3
zuständig
ist. Dies ist in dem Szenario der
Nach Ablauf des Zeitintervalls T führt der Peer P3 nunmehr die analogen Schritte durch, die bereits der Peer P6 zur Ermittlung des nächsten Speicherorts für die Datei D durchgeführt hat, wobei der Peer P3 nunmehr jedoch anstatt des Schlüsselworts K10 das Schlüsselwort K11 zur Bestimmung des nächsten Peers basierend auf der Hash-Funktion H1 verwendet. Ebenso wird im nächsten Peer die Speicherdauer nicht mehr basierend auf dem Schlüsselwort K10, sondern auf dem Schlüsselwort K11 mittels der Hash-Funktion H2 bestimmt.To Expiration of the time interval T leads the peer P3 now the analogous steps through, already the Peer P6 to determine the next Storage locations for the file D performed However, the peer P3 now but instead of the keyword K10 the keyword K11 to determine the next Peers based on the hash function H1 used. Likewise will in the next Do not peer the retention time based on the keyword K10, but on the keyword K11 determined by the hash function H2.
Wie sich aus den obigen Ausführungen ergibt, wird der Name der Datei D bei der Berechnung der Identität des nächsten Peers in der Hash-Funktion H1 mit berücksichtigt. Auf diese Weise wird die Sicherheit des Verfahrens erhöht, da die Iden tität des nächsten Peers nicht nur von den Schlüsselwörtern der Folge, sondern auch von dem Dateinamen abhängt. Somit benötigt ein Angreifer, der spezifische Dateiinhalte sucht, nicht nur die Liste L, sondern auch den Namen der Datei. Gegebenenfalls kann zur Erhöhung der Sicherheit auch beim Anwenden der Hash-Funktion H2 der Dateiname mit einfließen, und zwar indem die Hash-Funktion H2 analog zu H1 auf eine Kombination aus dem Dateinamen und dem Schlüsselwort angewendet wird.As from the above results, the name of the file D is used in calculating the identity of the next peer in the hash function H1. In this way the safety of the procedure is increased, as the Identity the next Peers not only from the keywords of the Sequence, but also depends on the filename. Thus, one needed An attacker looking for specific file content, not just the list L, but also the name of the file. Optionally, to increase the Security also when applying the hash function H2 of the file name with, namely by the hash function H2 analogous to H1 on a combination from the file name and the keyword is applied.
Wie
bereits oben erwähnt,
ist die Hash-Funktion H2 derart ausgestaltet, dass sie die Schlüsselwörter auf
einen Zeitbereich abbildet. Beispielsweise könnte die Hash-Funktion H2 mit
Hilfe der Hash-Funktion H1 wie folgt definiert sein:
Die sich hieraus ergebenden Funktionswerte können dabei beispielsweise als Aufenthaltsdauern von 1 bis 24 Stunden interpretiert werden. Es sind jedoch auch beliebige andere Definitionen von Hash-Funktionen möglich. Insbesondere können für die Hash-Funktionen beliebige aus dem Stand der Technik bekannte Funktionen, wie z. B. SHA1, verwendet werden, wobei lediglich durch entsprechende Skalierung sichergestellt werden muss, dass die Hash-Funktionen auf den gewünschten Wertebereich abbilden.The Resulting functional values can be used, for example, as Duration of stay can be interpreted from 1 to 24 hours. It however, any other definitions of hash functions are also possible. Especially can for the Hash functions have any functions known from the prior art, such as B. SHA1, are used, only by appropriate Scaling must ensure that the hash functions to the desired Map value range.
Wie bereits oben erwähnt, kann in einer einfachen Realisierung des erfindungsgemäßen Verfahrens die Liste L auch aus einzelnen Identitätswerten aus dem Hashwertebereich des Chord-Rings bestehen. In diesem Fall kann auf die Verwendung der Hash-Funktionen zur Ermittlung eines Identitätswerts verzichtet werden, vielmehr besteht die Ermittlung des Identitätswerts darin, den entsprechenden Identitätswert aus der Liste auszulesen. In diesem Fall wird für die Ermittlung der Speicherdauer einer Datei lediglich eine Skalierungsfunktion benötigt, welche den Identitätswert aus der Liste auf einen entsprechenden Zeitwert abbildet. In einer nochmals vereinfachten Variante kann jedoch auch auf die Variation der Speicherdauern verzichtet werden und eine feste Zeitdauer für die Speicherung der Datei auf einem Peer festgelegt werden, wobei diese feste Zeitdauer jedem Peer im Netz bekannt ist bzw. bei der Übertragung einer Datei mit übermittelt wird.As already mentioned above, can in a simple implementation of the method according to the invention List L also from individual identity values from the hash value range of the Chord-Ring. In this case, it is possible to use the hash functions are omitted to determine an identity value, rather, the determination of the identity value consists therein, the corresponding one identity value to read from the list. In this case, for the determination of the storage duration a file only needs a scaling function which the identity value from the list to a corresponding time value. In one more time However, simplified variant can also be based on the variation of the storage periods be waived and a fixed period of time for saving the file be set on a peer, this fixed period of time each Peer is known in the network or when transmitting a file with transmitted becomes.
Bei
der Implementierung des soeben anhand von
Um
in dem Netz gemäß
Es wird somit über die Summation der einzelnen Speicherzeiten der Datei auf den Peers und durch entsprechende Ermittlung des Maximalwerts der aufsummierten Speicherzeiten, der kleiner gleich der Zeitspanne zwischen aktuellem Zeitpunkt t und ursprünglicher Speicherzeit t0 ist, das entsprechende Schlüsselwort Kn ermittelt. Aus dem Schlüsselwort kann dann mittels der Hash-Funktion H1 auch ein Identitätswert und hieraus die Identität des speichernden Peers ermittelt werden, so dass auf die dort gespeicherte Datei zugegriffen werden kann.It is thus on the summation of the individual storage times of the file on the peers and by appropriate determination of the maximum value of the accumulated storage times, which is less than the time span between current time t and original storage time t 0 , the corresponding keyword Kn determined. From the keyword can then by means of the hash function H1 also an identity value and from this the identity of the storing peer are determined, so that the file stored there can be accessed.
Die im Vorangegangenen beschriebene Ausführungsform des erfindungsgemäßen Verfahrens ermöglicht einen sehr guten Schutz von in einem Peer-to-Peer-Netz gespeicherten Dateien vor dem Zugriff durch unbefugte Dritte. Dies wird durch eine geheime Liste aus Schlüsselwörtern erreicht, aus denen variabel sowohl die Speicherorte als auch die Zeiträume, wie lange eine Datei auf einem Peer gespeichert ist, variiert werden. In der hier beschriebenen Variante müssen dem Angreifer neben der Liste L ferner der Dateiname und der Speicherzeitpunkt bekannt sein, um Zugriff auf die Datei zu erhalten. Gegebenenfalls kann das beschriebene Verfahren auch noch mit weiteren, an sich bekannten Sicherungsverfahren, wie etwa Authentifi zierung, verschlüsselte Dateiübertragung und dergleichen, kombiniert werden, wodurch der Schutz gegen Angreifer noch weiter erhöht werden kann.The in the foregoing described embodiment of the method according to the invention allows a very good protection of stored in a peer-to-peer network Files against access by unauthorized third parties. This is going through reaches a secret list of keywords, from which variable both the storage locations as well as the periods, such as long a file is stored on a peer can be varied. In The variant described here must be next to the attacker List L furthermore the file name and the storage time be known to get access to the file. Optionally, the described method even with other, known backup procedures, such as about authentication, encrypted file transfer and the like, combined, providing protection against attackers even further increased can be.
Claims (22)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE200910024067 DE102009024067A1 (en) | 2009-06-05 | 2009-06-05 | Method for administrating data in distributed hash table-based peer-to-peer network, involves transferring data file between nodes after expiration of time interval, where identity of nodes is derived from determined identity values |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE200910024067 DE102009024067A1 (en) | 2009-06-05 | 2009-06-05 | Method for administrating data in distributed hash table-based peer-to-peer network, involves transferring data file between nodes after expiration of time interval, where identity of nodes is derived from determined identity values |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102009024067A1 true DE102009024067A1 (en) | 2010-12-30 |
Family
ID=43217563
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE200910024067 Withdrawn DE102009024067A1 (en) | 2009-06-05 | 2009-06-05 | Method for administrating data in distributed hash table-based peer-to-peer network, involves transferring data file between nodes after expiration of time interval, where identity of nodes is derived from determined identity values |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102009024067A1 (en) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080072037A1 (en) * | 2006-09-05 | 2008-03-20 | Sathya Narayanan | Robust peer-to-peer networks and methods of use thereof |
-
2009
- 2009-06-05 DE DE200910024067 patent/DE102009024067A1/en not_active Withdrawn
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080072037A1 (en) * | 2006-09-05 | 2008-03-20 | Sathya Narayanan | Robust peer-to-peer networks and methods of use thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2004015952A2 (en) | Device for carrying out the copy-protected distribution of electronic documents | |
DE112020000767T5 (en) | HYBRID BLOCKCHAINS AND STREAMCHAINS WITH NON-CRYPTOGRAPHIC HASHES FOR SECURING AUDIO, VIDEO, IMAGE AND VOICE-BASED TRANSACTIONS AND CONTRACTS | |
EP0440914A2 (en) | Method for allocating information data to a certain sender | |
EP2735991B1 (en) | Computer implemented method for replacing a data string | |
EP3637345A1 (en) | Linking of identities in a distributed database | |
EP2095611B1 (en) | Method for the load distribution in a peer-to-peer-overlay network | |
EP3602387B1 (en) | Identifiers for integrity protection of digitally coded copies | |
DE102007013014A1 (en) | Method for the online distribution of DRM user content | |
EP3480724A1 (en) | Computer implemented method for replacing a data string with a placeholder | |
EP2253097A1 (en) | Communication method for multisubscriber networks, which is protected from deception, eavesdropping and hacking | |
DE102009024067A1 (en) | Method for administrating data in distributed hash table-based peer-to-peer network, involves transferring data file between nodes after expiration of time interval, where identity of nodes is derived from determined identity values | |
EP3602386B1 (en) | Integrity assurance for digital copies | |
WO2005074189A1 (en) | Circuit arrangement and method for securing communication within communication networks | |
DE102019101195A1 (en) | Procedure for securely delivering a file | |
WO2015074745A1 (en) | Method, apparatuses and system for online data backup | |
WO2021099627A1 (en) | Method and associated computer system for generating data in a data structure | |
EP3747151B1 (en) | Method for generating metadata-free trees | |
EP3909217A1 (en) | Method and system for information transmission | |
EP2027690A2 (en) | Method for generation of a user-specific transmission exclusion list and method for forwarding messages in a decentralised communication system | |
EP3821558B1 (en) | Method for establishing a secure hierarchical referencing system | |
DE102007027019A1 (en) | Electronic document protected access system, has server sided auxiliary data evaluated and worked together with output functional unit such that output of documents is changed in output or playback unit using output mode | |
DE102006044859B4 (en) | Method for operating a decentralized data network | |
EP2030129A1 (en) | Peer-to-peer communication device, method for forming a peer-to-peer identification indication, and method for operating a peer-to-peer communication network | |
DE102019113485A1 (en) | Method for encrypting files for security storage and computing facility | |
DE102018004693A1 (en) | Block chain network |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
R016 | Response to examination communication | ||
R016 | Response to examination communication | ||
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |
Effective date: 20130101 |