2014-12-22 6 views
7

Mein Team erwägt die Verwendung von IndexedDb zum Zwischenspeichern von Daten in Benutzersitzungen. Diese Daten können groß genug sein, dass es eine echte Leistungssteigerung wäre, um sie im Browser für die spätere Verwendung zu behalten, anstatt sie jedes Mal herunterladen zu müssen, wenn der Benutzer sie benötigt.Verschlüsseln oder schützen andere moderne Browser den IndexedDb-Speicher?

Ich bin besorgt über Sicherheitsprobleme mit IndexedDb. Die fraglichen Daten sind nicht sehr sensibel, aber es gibt einen Grund, warum wir einen Benutzer/Pass benötigen, um dorthin zu gelangen. Ich befürchte, dass diese Daten möglicherweise zugänglich sind, wenn der Laptop eines Benutzers gestohlen wird. Sitzen diese Dateien unverschlüsselt auf dem Dateisystem?

+3

Bessere Sache zu tun ist nur das gesamte Laptop-Laufwerk zu verschlüsseln, um damit zu beginnen. Wenn Sie sich Sorgen über Daten in Ihrem db undicht sind, würden Sie wahrscheinlich auch besorgt über andere Sachen ELSEWHERE in den Laptop undicht werden. Vor allem, wenn die DBs verschlüsselt sind - Sie müssten die Entschlüsselungs-Credentials SOMEWHERE speichern, und wenn das an anderer Stelle auf dem Laufwerk im Klartext steht, haben Sie nichts erreicht. –

+0

selbst wenn er sein Dateisystem verschlüsselt hat, wäre der Klartext db immer noch in seinem Browserspeicher sichtbar, so dass dies nicht viel erreichen würde. @ Kyaw Tuns Antwort ist der beste Ansatz – user2765977

Antwort

2

Sofern Ihre Benutzer nicht die vollständige Festplattenverschlüsselung auf ihren Laptops verwenden, sitzen diese Dateien unverschlüsselt dort. Sie könnten in Betracht ziehen, die Daten, die Sie speichern, mit einer JavaScript-Kryptografie mit einem Schlüssel zu verschlüsseln, der aus dem Kennwort des Benutzers abgeleitet wird.

3

Sie können vor dem Speichern in indexeddb verschlüsseln. Das ist, wie ich in meiner Open-Source-Bibliothek, http://dev.yathit.com/ydn-db/doc/usage/encryption.html

eine Sache zu beachten, verschlüsselte Datenbank kann nicht Abfrage sein. Sie können nur mit bekannten Primärschlüssel abrufen.

Sie müssen den Verschlüsselungsschlüssel nach der Benutzeranmeldung vom Server weiterleiten.