Das Notes Forum

Domino 9 und frühere Versionen => ND9: Entwicklung => Thema gestartet von: skywook am 05.01.19 - 11:39:23

Titel: PublicEncryptionKeys
Beitrag von: skywook am 05.01.19 - 11:39:23
Hallo,

ich habe ein Dokument in dem ein Feld verschlüsselt wird. Das funktioniert auch (denke ich) soweit, obwohl ich kein Feld PublicEncryptionKeys mit dem Usernamen fülle bzw das Feld ist auch nicht vorhanden.

Der User bearbeitet sein Dokument, der Username steht in einem unverschlüsseltem Feld und vor dem speichern wird doc.encrypt aufgerufen. Ruft ein anderer User das Doc von User A auf wird das verschlüsselte Feld nicht angezeigt.

Ist das der richtige Ablauf?
Titel: Re: PublicEncryptionKeys
Beitrag von: WildVirus am 05.01.19 - 12:55:29
Schau mal in der Ansicht in die Eigenschaften von dem gespeicherten Dokument.

Wenn dort Felder mit $Seal bzw. $SealData sind, wurde min. ein Feld verschlüsselt.

Titel: Re: PublicEncryptionKeys
Beitrag von: skywook am 05.01.19 - 16:08:26
Die SeaL-Felder sind vorhanden, aber mich irritiert das es ohne das Feld PublicEncryptionKeys funktioniert. Denn auch hier im Forum wird immer erwähnt, dass das Feld vorhanden sein muss.
Titel: Re: PublicEncryptionKeys
Beitrag von: ronka am 05.01.19 - 22:00:13
NUR dann wenn auch damit verschlüsselt wird.
Titel: Re: PublicEncryptionKeys
Beitrag von: skywook am 06.01.19 - 18:58:33
jetzt bin ich etwas verwirrt.

Ich habe das mal zusammengetragen:

1. Ich verschlüssle mit doc.encrypt  ohne Feldangeben bzw. Feldzuweisungen z.B. PublicEncryptionKeys. Beim speichern wird encrypt aufgerufen, und das entsprechende Feld wird "nur" mit dem öffentlichen Schlüssel aus dem NAB des aktuellen Users verschlüsselt. Beim öffnen erkennt Notes die Seal-Felder und prüft ob die aktuelle UserID zum Schlüssel passt und entschlüsselt das Feld. Das Feld muss vor dem Anzeigen nicht per Script explizit entschlüsselt werden, das macht Notes automatisch.

2. Verschlüsseln mit PublicEncryptionKeys. In dem Feld gebe ich die User an mit deren öffentlichen Schlüssel dann das Feld verschlüsselt wird. Rest ist wie oben.

3. Beim PrivatEncryptionKey liegt der Schlüssel in der ID-Datei. Das Feld muss vorhanden und im Script mit dem Schlüsselnamen befüllt werden. Beim öffnen muss das Feld explizit entschlüsselt werden.

Passt das, oder habe ich doch ein Verständnisproblem?
Titel: Re: PublicEncryptionKeys
Beitrag von: ronka am 08.01.19 - 19:38:26
zum verschlüsseln wird IMMER den Public Key verwendet, bei Entschlüsseln den Private key (der also in der ID drin ist und dort nicht extrahierbar ist).
Titel: Re: PublicEncryptionKeys
Beitrag von: Tode am 09.01.19 - 09:20:53
@skywook: Du hast das vollkommen korrekt zusammengetragen (ausser dem 2. Feldnamen: der heißt "SecretEncryptionKeys", nicht "PrivatEncryptionKeys").
Titel: Re: PublicEncryptionKeys
Beitrag von: skywook am 21.01.19 - 08:01:21
Vielen Dank für die Antworten.

Ich habe jetzt eine DB entwickelt die mit dem PublicKey ein Feld verschlüsselt und zusätzlich mit Leser- und Autorenfelder arbeitet.

Kann man dann davon ausgehen dass diese "sicher" ist und z.B. nicht übers Backend manipulierbar ist.

Natürlich unter der Voraussetzung die ACL und Programmierung passt.