| |
|
Negative Datenbanken helfen gegen Datenklau |
|
|
Veröffentlicht durch XTaran am Dienstag 12. September 2006, 22:57
Aus der Nicht Abteilung
|
|
|
|
|
chickenshit schreibt: "Der Economist berichtet über negative Datenbanken als eine Möglichkeit, öffentliche Datensammlungen resistent(er) gegen Abschöpfen zu machen. Das Prinzip ist simpel: anstatt, wie gegenwärtig üblich, eine Menge von Daten zu speichern, hält die Datenbank alle Daten, die nicht zu dieser Menge gehören."
|
|
|
|
|
|
chickenshit weiter: "Voraussetzung dafür ist eine konstante Länge der Datensätze; typische Anwendungsbeispiele sind Personalien- oder Transaktionsdatenbanken.
Fernando Esponda, die treibende Kraft hinter der Idee, stellt weiterführende Artikel auf seiner Homepage zur Verfügung. So erklärt er z.B. in Kapitel 3, "Negative Databases", dieses PDFs, wie die negative Datenbank (NDB) am Besten repräsentiert wird, und welchen hübschen Nebeneffekt diese Repräsentation hat: 'An interesting property of this representation concerns the difficulty of inferring DB given NDB. For an arbitrary set of strings defined over {0, 1, *} determining which strings are not represented is an NP-hard problem.' Das bedeutet, dass es auch für einen Insider, der im Besitz der ganzen (negativen) Datenbank ist, alles andere als Trivial ist, das äquivalent von 'select * from ...' zu machen."
|
|
|
|
< Kernel Bootmeldung auf 10'000m Höhe | Druckausgabe | Flugpassagiere sicherheitshalber abhören > | |
|
Diese Diskussion wurde archiviert.
Es können keine neuen Kommentare abgegeben werden.
|
|
|
|
|
|
|
|
|
Also, wenn ich nun Fakten ueber "Milch" suche, dann wuerde in dieser Datenbank stehen, dass Milch nicht fest, kein Gas und ihre Farbe nicht schwarz ist?
Wie siehts denn aus, wenn ich sagen will, dass sie viele lebenswichtige Vitamine enthaelt? -- Hier steht etwas.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Das ganze funktioniert ja mit viel grösseren Datenmengen, du sagst also nicht, dass Milch schwar ist, sondern du sagst es gibt die Farben: grün, gelb, rot, schwarz, lila, blau. Weiss lässt du weg, und weisst somit, falls eine Anfrage kommt, dass weiss in der positive DB enthalten sein muss.
|
|
|
|
|
|
|
|
|
Von Anonymer Feigling am Wednesday 13. September 2006, 08:19 MEW (#3)
|
|
|
|
|
Das erinnert mich an Prolog.
|
|
|
|
|
|
|
|
|
Von Anonymer Feigling am Thursday 14. September 2006, 07:57 MEW (#9)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Dem Prinzip zugrunde liegt, dass es nur eine physische Datenbank gibt, die alle Informationen enthält, die nicht interessieren.
Beispiel: eine Datenbank mit allen Einwohnern; um das Beispiel einigermassen simpel zu halten gibt's nur einen Einwohner, der Hans Muster heisst.
Unsere (negative) Datenbank enthält nun alle Strings, die nicht "hans muster" sind:
aaaaaaaaaaa
aaaaaaaaaab
...
hans musteq
hans mustes
...
seppi meieq
seppi meier
seppi meies
...
zzzzzzzzzzz
Will man herausfinden, ob Seppi Meier zu den Einwohnern zählt, so ergibt eine Datenbankabfrage (a la "select name from population where name = 'seppi meier'") ein positives Resultat -> Seppi Meier ist kein Einwohner.
Auf der anderen Seite ergibt dieselbe Abfrage für Hans Muster ein negatives Resultat -> Hans Muster ist Einwohner.
So weit ist es nur die Umkehrung einer normalen Datenbank; durch die spezielle Repräsentation der "negativen Datenbank" ist eines der Hauptmerkmale jedoch, dass man vom physischen Datenbankinhalt (alle negativen Einträge, inkl. der Repräsentation von Seppi Meier) nicht so einfach auf den effektiven Datenbankinhalt (Hans Muster) schliessen kann. Somit kann der, der die ganze physische Datenbank besitzt (Intruder, Insider), die Daten nicht ohne Weiteres abschöpfen.
|
|
|
|
|
|
|
|
|
|
|
|
|
Dem Prinzip zugrunde liegt, dass es nur eine physische Datenbank gibt, die alle Informationen enthält, die nicht interessieren.
Nope. Man braucht auf jeden Fall noch eine zweite Datenbank mit allen Möglichkeiten. Ohne diese ist die Datenmenge nicht mehr zu verwalten. Alleine um einen Namen abzuspeichern mit, sagen wir, maximal 20 alphabetischen Zeichen ohne Umlaute, erhalten wir 53^20 Varianten. Das sind etwa 3*10^34.
Somit kann der, der die ganze physische Datenbank besitzt (Intruder, Insider), die Daten nicht ohne Weiteres abschöpfen.
Eben doch. Sind alle möglichen Einträge und alle tatsächlichen, negativen Einträge bekannt, so ist es trivial, die positiven Einträge zu erhalten. Schwierig wird es erst, wenn nur die tatsächlichen Einträge bekannt sind, nicht aber, was überhaupt möglich ist. Da letztere Information aber für die regulären Abfragen bekannt sein muss, existiert sie irgendwo, und kann folglich prinzipiell auch beschafft werden.
--
GPL ist der Versuch, den Ring gegen Sauron einzusetzen.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Theoretisch sind natürlich immer alle Möglichkeiten als Menge vorhanden; effektiv physisch gespeichert müssen die einzelnen Mitglieder dieser Menge jedoch nicht werden.
Falls du den im Kapitel 2 erwähnten Repräsentationsalgorithmus meinst: Der skaliert miserabel. Bei jedem neuen, positiven Eintrag wird nicht nur mindestens ein neuer Eintrag in NDB nötig, sondern es besteht für jeden, bestehenden Eintrag eine gewisse Wahrscheinlichkeit, dass er ungültig wird, und durch mindestens zwei neue Einträge ersetzt werden muss. Je mehr Einträge also existieren, desto mehr wächst NDB mit jedem neuen, positiven Eintrag an. Der vorgestellte Prefix-Algorithmus entschärft das Problem vielleicht, beseitigt es aber sicher nicht. Das Theorem 2.1.1 ist völlig unzureichend belegt, da die verwendeten Laborwerte sich eindeutig im unproblematischen Bereich befinden.
Vordergründig betrachtet ist dies der Fall. Esponda weist aber nach, dass wenn die negative Datenbank einer speziellen Repräsentation folgt, es nicht trivial, sondern NP-Schwer ist.
Seine Beweisführung geht davon aus, dass der Angreifer nicht weiss, wie NDB generiert wurde. In der Praxis darf man sich auf solche Annahmen nicht stützen. Nur schon darum, weil die meisten Angriffe von Insidern kommen. Ist der Algorithmus zur Generierung von NDB einmal bekannt, lässt sich der Vorgang problemlos umkehren. Dieses Problem wird vom Author in Kapitel 4 sogar ausdrüklich anerkannt, ohne aber eine befriedigende Lösung anzubieten. Der alternative Algorithmus ist nicht schwieriger umzukehren, sondern nur schwieriger zu erkennen.
--
GPL ist der Versuch, den Ring gegen Sauron einzusetzen.
|
|
|
|
|
|