2016-07-15 12 views
0

Ich muss vertrauliche Daten mit Javascript/Angular2 in die Zwischenablage kopieren. Mit der Zeichenfolge sollte vertraulich behandelt werden, z. B. indem sie aus dem Computerspeicher gelöscht wird, wenn sie nicht mehr benötigt wird.SecureString in Javascript/angular2

So etwas ist in Microsoft .Net (System.Security.SecureString) verfügbar.

Frage: Wie die Microsoft clipboard is not secure, ist so etwas auch für Javascript/Angular2 verfügbar?

Danke

Antwort

1

nur mit JavaScript und kantig, in einem normalen Web-Browser würden erwarten, dass Sie ein Verbraucher dies nicht möglich sein würde, installiert haben.

Alle gängigen Browser bieten Entwicklungswerkzeuge, mit denen Sie die im Browser verwendeten Variablen überprüfen können. Ein Haltepunkt an der richtigen Stelle wird also jedem, der die Webseite hat, freien Zugriff auf die Variable gewähren. Sobald die Daten in der Zwischenablage gespeichert sind, haben Sie ohnehin die Kontrolle über die Daten verloren und können von anderen Anwendungen aus der Zwischenablage kopiert werden. Es klingt, als ob Sie möglicherweise eine Art lokal installierter Thin Client (Desktop-App) benötigen, um dem Benutzer eine sichere Interaktion mit diesen Daten zu ermöglichen.

hier zur Speicherverwaltung las in der JavaScript virtuellen Maschine über eine Vorstellung zu bekommen, wann und wie Speicher aufgeräumt werden https://developer.mozilla.org/en-US/docs/Web/JavaScript/Memory_Management

Vielleicht kennt jemand da draußen eine Möglichkeit, dies mit Javascript zu tun, aber ich glaube nicht, es ist möglich, aber es ist schwer zu wissen, was Sie nicht wissen.


.NET Secure tut Dinge für Sie, dass nicht nur in einem Javascript-VM arbeiten würde, die Client-Seite (nicht node.js auf dem Server, das ist ein anderes Szenario). Wenn Sie eine solche Funktion in einer JavaScript-VM auf der Clientseite haben, benötigen Sie eine Möglichkeit, die Zeichenfolgedaten zu verschlüsseln, dh irgendwo auf dem Client oder in Ihrer Webseite benötigen Sie einen Verschlüsselungsschlüssel und einen Initialisierungsvektor, die irgendwo gespeichert werden müssen , aber noch wichtiger, sie müssen geschützt werden.

Wenn alle Daten auf dem Client-Computer gespeichert sind und den Client-Computer nicht verlassen, vor welchen Bedrohungen möchten Sie diese Daten schützen? Überträgt der Benutzer die Daten aus der Zwischenablage auf einen Remote-Computer? Was soll mit den Daten passieren, nachdem sie in der Zwischenablage sind?

+0

Vielen Dank für die Antwort Mark. Ich habe ein verschlüsseltes Passwort auf meinem Rechner und ich muss dieses Passwort in die Zwischenablage kopieren (um es irgendwo einzufügen). Dieser Teil verhält sich wie ein Passwort-Manager oder etwas ähnliches. Ich möchte den Eintrag nach ein paar Sekunden löschen, um ihn wieder geheim zu halten. – thardes2

+0

Wenn Sie dies nicht über ein Netzwerk übertragen, dann denke ich nicht, dass Sie sich Sorgen machen müssen. Sie können den Wert generieren, in die Zwischenablage kopieren und dann den alten Wert überschreiben, nachdem er in die Zwischenablage kopiert wurde. Ich gehe davon aus, dass Sie es im Klartext in die Zwischenablage kopieren. Sobald es in der Zwischenablage ist, liegt es nicht in deinen Händen. –

+0

Der Punkt ist: Ich möchte das "Geheimnis" nicht in meiner Zwischenablage haben. Ich wechselte zu Frage und fügte einen Link hinzu. - Wahrscheinlich ist die Aussage "Sie haben viel größere Dinge, um die Sie sich Sorgen machen müssen, da es viele andere Sachen gibt, die er tun kann" auch korrekt ;-) – thardes2

Verwandte Themen