it-swarm-eu.dev

Online-Backup: Wie können Verschlüsselung und Deduplizierung kompatibel sein?

Bitcasa, ein Online-Sicherungsdienst für die baldige Beta-Version, behauptet, sowohl eine Deduplizierung (Sie sichern noch nichts in der Cloud) als auch eine clientseitige Verschlüsselung durchzuführen.

http://techcrunch.com/2011/09/12/with-bitcasa-the-entire-cloud-is-your-hard-drive-for-only-10-per-month/

Eine Patentrecherche ergibt nichts mit ihrem Firmennamen, aber die Patente sind möglicherweise in Vorbereitung und noch nicht erteilt.

Ich finde die Behauptung ziemlich zweifelhaft in Bezug auf den Informationsstand, den ich jetzt habe. Weiß jemand mehr darüber, wie er behauptet, dies zu erreichen? Hätten die Gründer des Unternehmens keinen ernsthaften geschäftlichen Hintergrund (Verisign, Mastercard ...), hätte ich das Produkt sofort als Schlangenöl eingestuft, aber vielleicht steckt noch mehr dahinter.

Bearbeiten: fand einen besorgniserregenden Tweet: https://Twitter.com/#!/csoghoian/status/113753932400041984 , Verschlüsselungsschlüssel pro Datei würde von seinem Hash abgeleitet, so dass definitiv nicht der richtige Ort dafür ist Speichern Sie Ihre Torrent-Filmsammlung, nicht dass ich das jemals tun würde.

Edit2: Wir haben es tatsächlich richtig erraten, sie haben die sogenannte konvergente Verschlüsselung verwendet und daher kann jemand, der dieselbe Datei besitzt wie Sie, wissen, ob Ihre dieselbe ist, da er den Schlüssel hat. Dies macht Bitcasa zu einer sehr schlechten Wahl, wenn die Dateien, die Sie vertraulich behandeln möchten, nicht original sind. http://techcrunch.com/2011/09/18/bitcasa-explains-encryption/

Edit3: https://crypto.stackexchange.com/questions/729/is-convergent-encryption-really-secure haben dieselbe Frage und unterschiedliche Antworten

58
Bruno Rohée

Ich habe die Details nicht durchdacht, aber wenn ein sicherer Hash des Dateiinhalts als Schlüssel verwendet würde, könnten alle (und einzigen) Clients, die den Hash "kannten", auf den Inhalt zugreifen.

Im Wesentlichen würde der Cloud-Speicher als kollektive partielle (tatsächlich sehr spärliche) Regenbogentabelle für die Hashing-Funktion fungieren, wodurch sie "umgekehrt" werden könnte.

Aus dem Artikel: "Selbst wenn die RIAA und die MPAA mit den Vorladungen in der Hand an die Türen von Bitcasa klopfen würden, hätte Bitcasa nur eine Sammlung verschlüsselter Bits, ohne dass sie entschlüsselt werden könnten." - true, da Bitcasa die Zuordnung von Objekt-ID/Dateiname zu Hash/Schlüssel nicht enthält. Nur ihre Kunden tun dies (clientseitig). Wenn die RIAA/MPAA die Hashes der fraglichen Dateien kennen würde (bekannt für z. B. bestimmte Song-MP3s), könnten sie entschlüsseln und beweisen, dass Sie eine Kopie haben, aber zuerst müssten sie wissen, welches Cloud-Speicherobjekt/Datei hielt welches Lied.

Clients müssten den Hash für jedes in der Cloud gespeicherte Objekt und natürlich ihren lokalen Namen dafür behalten, um darauf zugreifen und es entschlüsseln zu können.

In Bezug auf einige der anderen im Artikel beanspruchten Funktionen:

  • "Komprimierung" - funktioniert nicht serverseitig (der verschlüsselte Inhalt wird nicht gut komprimiert), kann jedoch vor der Verschlüsselung clientseitig angewendet werden
  • "überall zugänglich" - Wenn die Zuordnung von Objekt zu Dateiname und Hash/Schlüssel nur auf dem Client erfolgt, sind die Dateien von anderen Geräten unbrauchbar, was die Nützlichkeit des Cloud-Speichers einschränkt. Könnte z.B. Speichern Sie auch die Sammlung von Tupeln für Objid-zu-Dateinamen und Hash/Schlüssel, die clientseitig mit einer Passphrase verschlüsselt sind.
  • "Patentierte Deduplizierungsalgorithmen" - es muss mehr als die oben genannten geschehen, um ein Patent zu rechtfertigen - möglicherweise Deduplizierung auf Block- und nicht auf Dateiebene?
  • die RIAA/MPAA könnte mit einer Vorladung und einer mit ihrem eigenen Hash verschlüsselten Kopie des Songs/Films kommen, von dem sie vermuten, dass die Leute Kopien davon haben. Bitcasa kann dann bestätigen, ob diese Datei gespeichert wurde oder nicht. Sie könnten es nicht entschlüsseln (ohne dass RIAA/MPAA ihnen den Hash/Schlüssel gibt), und (insbesondere wenn sie keine Benutzerkontingente erzwingen, weil sie "unendlichen Speicher" anbieten) haben sie möglicherweise keine Protokolle von gespeichert welche Benutzer es hochgeladen/heruntergeladen haben. Ich vermute jedoch, dass sie möglicherweise aufgefordert werden, die Datei zu entfernen (gemäß den DMCA-Safe-Harbor-Regeln) oder möglicherweise den Inhalt beizubehalten, aber dann alle Konten zu protokollieren, die ihn in Zukunft hochladen/herunterladen.
26
Misha

Die kommerzielle Anzeige, auf die Sie verlinken, und die Website des Unternehmens enthalten nur sehr wenige Informationen. und "20 Patente" als Kompetenznachweis zu winken ist seltsam: Patente beweisen nicht, dass die Technologie gut ist , nur dass es einige Leute gibt, die sich einsetzen ein paar tausend Dollar für die Idee, dass sich die Technologie gut verkaufen wird .

Mal sehen, ob es einen Weg gibt, diese Versprechen zu erfüllen.

Wenn Daten clientseitig verschlüsselt sind, muss ein geheimer Schlüssel K vorhanden seinf für diese Datei. Der Punkt der Sache ist, dass Bitcasa nicht weiß K.f. Um die Deduplizierung und das Caching sowie, was noch wichtiger ist, die Freigabe zu implementieren, muss jeder Benutzer eine bestimmte Datei verschlüsseln ) f wird am Ende dasselbe K verwendenf. Es gibt einen raffinierten Trick, der darin besteht, den Hash der Datei selbst mit einer richtigen Hash-Funktion (z. B. SHA-256) als K zu verwendenf. Mit diesem Trick erhält dieselbe Datei immer dasselbe verschlüsselte Format, das dann nach Belieben hochgeladen und dupliziert werden kann.

Dann hätte ein Benutzer einen lokalen Speicher (auf seinem Computer) aller K.f für alle seine Dateien zusammen mit einer Datei-ID. Wenn Benutzer A die Datei für Benutzer B freigeben möchte, klickt Benutzer A "mit der rechten Maustaste, um die Freigabe-URL abzurufen" und sendet sie an B. Vermutlich enthält die URL die Datei-ID und K.f. Der Text besagt, dass sowohl Benutzer A als auch B registrierte Benutzer sein müssen, damit die Freigabe funktioniert. Daher wird die "URL" wahrscheinlich auf dem Computer von B von einer Software abgefangen, die die ID und K extrahiertf von dieser "URL", lädt die Datei vom Server herunter und entschlüsselt sie lokal mit dem neu erworbenen Wissen von K.f.

Für zusätzliche Ausfallsicherheit und Benutzerfreundlichkeit ist der Satz bekannter Schlüssel K.f für einige Benutzer könnte auch auf den Servern gespeichert sein - Sie müssen sich also nur an ein einzelnes K "erinnern"f Schlüssel, den Sie von einem Computer auf einen anderen übertragen können.

Ich sage also, dass das, was Bitcasa verspricht, möglich ist - da ich wissen würde, wie es geht, und hier gibt es nichts wirklich Neues oder technologisch Fortgeschrittenes. Ich kann nicht behaupten, dass Bitcasa dies tut , nur dass ich es so machen würde. Der "schwierige" Teil besteht darin, dies in vorhandene Betriebssysteme zu integrieren (so dass das "Speichern einer Datei" den Verschlüsselungs-/Upload-Prozess auslöst): Einige Arbeiten, aber kaum ein Patent wert, geschweige denn 20 Patente.

Beachten Sie, dass mit K.f = h (f) bedeutet, dass Sie eine umfassende Suche nach dem Inhalt der Datei durchführen können. Dies ist in einem Dienst mit Deduplizierung ohnehin unvermeidbar: Wenn Sie eine neue Datei "hochladen" und nur den Vorgang zeitlich festlegen, können Sie feststellen, ob die Datei bereits serverseitig bekannt war oder nicht.

22
Thomas Pornin

Bruce Schneier ging im Mai auf das Thema ein http://www.schneier.com/blog/archives/2011/05/dropbox_securit.html im Zusammenhang mit dem Dropbox-Problem dieser Woche. TechRepublic bietet ein großartiges 7-seitiges Whitepaper zum Thema zum Preis einer E-Mail-Anmeldung unter http://www.techrepublic.com/whitepapers/side-channels-in-cloud-services-the- Fall der Deduplizierung im Cloud-Speicher/3333347 .

Das Papier konzentriert sich auf die Seitenkanal- und verdeckten Kanalangriffe, die bei der Cloud-Deduplizierung verfügbar sind. Die Angriffe nutzen die Deduplizierung zwischen Benutzern. Wenn Sie beispielsweise wissen, dass Bob den Service nutzt und sein von einer Vorlage erstellter Gehaltsvertrag dort oben ist, können Sie Versionen davon erstellen, bis Sie sein Gehalt erreicht haben. Der Erfolg wird durch die Zeit angezeigt, die zum Hochladen der Datei benötigt wurde.

Natürlich besteht Ihr Schutz darin, vor der Nutzung des Dienstes zu verschlüsseln. Dies verhindert jedoch die Kosteneinsparungen für den Dienst, die ihn wirtschaftlich rentabel machen, da fast alle Deduplizierungsmöglichkeiten ausgeschlossen wären. Somit wird der Dienst die Wahl nicht fördern.



16
zedman9991

Zusätzlich zu den anderen guten Antworten hier möchte ich Sie auf die folgenden zwei wissenschaftlichen Arbeiten verweisen, die kürzlich veröffentlicht wurden:

  • Martin Mulazzani, Sebastian Schrittwieser, Manuel Leithner, Markus Huber und Edgar Weippl, Dunkle Wolken am Horizont: Cloud-Speicher als Angriffsvektor und Online-Slack Space verwenden , Usenix Security 2011.

    In diesem Dokument wird beschrieben, wie Dropbox die Deduplizierung durchführt und Angriffe auf den Mechanismus identifiziert. Sie schlagen eine neuartige Methode vor, um sich gegen einige - aber nicht alle - dieser Angriffe zu verteidigen, indem der Client nachweisen muss, dass er den Inhalt der Datei (nicht nur den Hash) kennt, bevor er auf die Datei zugreifen darf.

  • Danny Harnik, Benny Pinkas und Alexandra Shulman-Peleg. Nebenkanäle in Cloud-Diensten, der Fall der Deduplizierung im Cloud-Speicher , IEEE Security & Privacy Magazine.

    In diesem Dokument werden drei Cloud-Speicherdienste analysiert, die eine Deduplizierung durchführen (Dropbox, Mozy und Memopal), und die daraus resultierenden Sicherheits- und Datenschutzrisiken aufgezeigt. Sie schlagen eine neuartige Verteidigung gegen diese Risiken vor, indem sichergestellt wird, dass eine Datei nur dann de-dupliziert wird, wenn viele Kopien vorhanden sind, wodurch der Informationsverlust verringert wird.

Diese Papiere scheinen für Ihre Frage direkt relevant zu sein. Sie zeigen auch, dass es Raum für Innovationen bei nicht trivialen Abschwächungen der Risiken einer naiven Deduplizierung gibt.

9
D.W.

Verschlüsselung und Deduplizierung zwischen beliebigen Benutzern sind nicht kompatibel, wenn Sie bestimmte Klartexte unterscheiden möchten. Wenn Sie sich über diese Art von Angriffen keine Sorgen machen, kann dies sicher sein.

Wenn die Daten nur für einen bestimmten Benutzer de-dupliziert werden, weiß der Server nichts über die Gleichwertigkeit von Klartexten und die verbleibenden Angriffe sind wirklich gering.

Wenn die Daten zwischen einem Freundeskreis, der etwas teilt, das dem Dienstanbieter nicht bekannt ist (automatisch machbar), de-dupliziert werden, können nur Personen aus diesem Freundeskreis Klartexte unterscheiden (über das Timing usw.).

Wenn die Daten jedoch zwischen allen Benutzern dupliziert werden, muss der hypothetische Angreifer, der wissen möchte, auf welche Klartexte zugegriffen wird, die Datei in der Cloud selbst speichern und dann überwachen, welche Benutzerkonten auf dieselben Daten zugreifen. Sicher, der Dienst kann die Benutzerkonten/IP-Adressen, die auf die Daten zugreifen, einfach nicht "protokollieren" - aber das hat dann nichts mit Verschlüsselung zu tun, und der gleiche "Schutz" würde auch dann bestehen bleiben, wenn die Dateien Klartext wären.

Keine der anderen hier gegebenen Antworten scheint etwas vorzuschlagen, das aufhören würde dies Angriff, und ich glaube, Bitcasa auch nicht. Ich würde mich freuen, wenn ich mich als falsch erweisen würde.

(Hinweis: Es gibt gibt einige Möglichkeiten, um möglicherweise etwas in der Nähe davon zu erreichen - es wurden einige Artikel über sicheren Cloud-Speicher mit allen möglichen innovativen Techniken veröffentlicht -, aber dies sind neue Forschungsergebnisse und die meisten davon wird wahrscheinlich ziemlich schnell kaputt gehen oder als undurchführbar angezeigt. Ich würde meinen Daten auf keinem von ihnen noch vertrauen.)

6
Nakedible

Die gleiche Frage wurde beim Austausch von Kryptografiestapeln gestellt. Bitte sehen Sie meine Antwort dort, da es eine Subtilität gibt, die leicht zu übersehen ist und die vom Open Source-Projekt Tahoe-LAFS sorgfältig analysiert wurde: https://crypto.stackexchange.com/questions/729/is -konvergente-Verschlüsselung-wirklich-sicher/758 # 758

5
Zooko

Abgesehen von der großartigen Antwort, die @Misha gerade auf dem "bekannten Hash" veröffentlicht hat, entfernt die clientseitige Verschlüsselung effektiv jede andere Möglichkeit zur Deduplizierung, es sei denn, es gibt einen Treuhandschlüssel, der möglicherweise ohnehin andere logistische Probleme verursachen würde.

2
Rory Alsop