Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Schritt 4: Generieren Sie ein Verschlüsselungsschema für eine tabellarische Datei
Um Daten zu verschlüsseln, ist ein Verschlüsselungsschema erforderlich, das beschreibt, wie die Daten verwendet werden. In diesem Abschnitt wird beschrieben, wie der C3R-Verschlüsselungsclient bei der Generierung eines Verschlüsselungsschemas für eine CSV Datei mit einer Kopfzeile oder einer Parquet Datei hilft.
Sie müssen dies nur einmal pro Datei tun. Sobald das Schema existiert, kann es wiederverwendet werden, um dieselbe Datei (oder eine beliebige Datei mit identischen Spaltennamen) zu verschlüsseln. Wenn sich die Spaltennamen oder das gewünschte Verschlüsselungsschema ändern, müssen Sie die Schemadatei aktualisieren. Weitere Informationen finden Sie unter (Optional) Erstellen Sie ein Schema (fortgeschrittene Benutzer).
Wichtig
Es ist von größter Bedeutung, dass alle beteiligten Parteien denselben gemeinsamen geheimen Schlüssel verwenden. Die beteiligten Parteien sollten auch die Spaltennamen so koordinieren, dass sie übereinstimmen, ob sie bei Abfragen JOIN bearbeitet oder auf andere Weise auf Gleichheit verglichen werden. Andernfalls könnten die SQL Abfragen zu unerwarteten oder falschen Ergebnissen führen. Dies ist jedoch nicht erforderlich, wenn der Kollaborationsersteller die allowJoinsOnColumnsWithDifferentNames
Verschlüsselungseinstellung bei der Erstellung der Kollaboration aktiviert hat. Weitere Informationen zu verschlüsselungsrelevanten Einstellungen finden Sie unter. Kryptografische Rechenparameter
Wenn der C3R-Verschlüsselungsclient im Schemamodus ausgeführt wird, durchsucht er die Eingabedatei spaltenweise und fragt Sie, ob und wie diese Spalte behandelt werden soll. Wenn die Datei viele Spalten enthält, die für die verschlüsselte Ausgabe nicht benötigt werden, kann die interaktive Schemagenerierung mühsam werden, da Sie jede unerwünschte Spalte überspringen müssen. Um dies zu vermeiden, könnten Sie manuell ein Schema schreiben oder eine vereinfachte Version der Eingabedatei erstellen, die nur die gewünschten Spalten enthält. Dann könnte der interaktive Schema-Generator für diese reduzierte Datei ausgeführt werden. Der C3R-Verschlüsselungsclient gibt Informationen über die Schemadatei aus und fragt Sie, wie die Quellspalten (wenn überhaupt) in der Zielausgabe enthalten oder verschlüsselt werden sollen.
Für jede Quellspalte in der Eingabedatei werden Sie aufgefordert, Folgendes einzugeben:
-
Wie viele Zielspalten sollen generiert werden
-
Wie soll jede Zielspalte verschlüsselt werden (wenn überhaupt)
-
Der Name jeder Zielspalte
-
Wie Daten vor der Verschlüsselung aufgefüllt werden sollen, wenn die Spalte als sealed Spalte verschlüsselt wird
Anmerkung
Wenn Sie Daten für eine Spalte verschlüsseln, die als Spalte verschlüsselt wurde, müssen Sie festlegen, welche Daten aufgefüllt werden müssen. sealed Der C3R-Verschlüsselungsclient schlägt bei der Schemagenerierung ein Standard-Padding vor, bei dem alle Einträge in einer Spalte auf dieselbe Länge aufgefüllt werden.
Beachten Sie bei der Bestimmung der Länge fürfixed
, dass das Auffüllen in Byte und nicht in Bits erfolgt.
Im Folgenden finden Sie eine Entscheidungstabelle für die Erstellung des Schemas.
Schema-Entscheidungstabelle | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Entscheidung | Anzahl der Zielspalten aus der Quellspalte <' name-of-column '>? | Zielspaltentyp: [c]cleartext, [f] fingerprint oder [s]? sealed | Headername der Zielspalte <default 'name-of-column'> | Fügen Sie der <suffix>Kopfzeile ein Suffix hinzu, um anzugeben, wie sie verschlüsselt wurde, [y] ja oder [n] nein <default 'yes'> | <' name-of-column _sealed'> Füllungstyp: [n] eins, [f] fest oder [m] max <default 'max'> | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Lassen Sie die Spalte unverschlüsselt. | 1 | c | Nicht zutreffend | Nicht zutreffend | Nicht zutreffend | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Verschlüsseln Sie die Spalte als fingerprint Spalte. | 1 | f | Wählen Sie Standard oder geben Sie einen neuen Header-Namen ein. | Geben Sie einy , um Standard (_fingerprint ) zu wählen, oder geben Sie die Eingabetaste einn . |
Nicht zutreffend | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Verschlüsseln Sie die Spalte als sealed Spalte. | 1 | S | Wählen Sie Standard oder geben Sie einen neuen Header-Namen ein. | Geben Sie einy , um Standard (_sealed ) zu wählen, oder geben Sie die Eingabetaste einn . |
Wählen Sie den Polstertyp. Weitere Informationen finden Sie unter (Optional) Erstellen Sie ein Schema (fortgeschrittene Benutzer). |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Verschlüsseln Sie die Spalte sowohl als auchfingerprint. sealed | 2 |
Geben Sie die erste Zielspalte ein: f. Geben Sie die zweite Zielspalte ein: s. |
Wählen Sie die Zielüberschriften für jede Zielspalte aus. | Geben Sie einy , um Standard zu wählen, oder geben Sie ein n. |
Wählen Sie den Fülltyp (nur für sealed Spalten). Weitere Informationen finden Sie unter (Optional) Erstellen Sie ein Schema (fortgeschrittene Benutzer). |
Im Folgenden finden Sie zwei Beispiele für die Erstellung von Verschlüsselungsschemas. Der genaue Inhalt Ihrer Interaktion hängt von der Eingabedatei und den Antworten ab, die Sie geben.
Beispiele
Beispiel: Generieren Sie ein Verschlüsselungsschema für eine fingerprint Spalte und eine cleartext Spalte
In diesem Beispiel gibt ads.csv
es für nur zwei Spalten: username
undad_variant
. Für diese Spalten wollen wir Folgendes:
-
Damit die
username
Spalte alsfingerprint
Spalte verschlüsselt wird -
Damit die
ad_variant
Spalte einecleartext
Spalte ist
Um ein Verschlüsselungsschema für eine fingerprint Spalte und eine cleartext Spalte zu generieren
-
(Optional) Um sicherzustellen, dass die c3r-cli.jar Datei und die zu verschlüsselnde Datei vorhanden sind:
-
Navigieren Sie zum gewünschten Verzeichnis und führen Sie es aus
ls
(falls Sie ein Mac oderUnix/verwendenLinux) oderdir
wenn SieWindows) verwenden. -
Sehen Sie sich die Liste der tabellarischen Datendateien an (z. B. CSV) und wählen Sie eine zu verschlüsselnde Datei aus.
In diesem Beispiel
ads.csv
ist das die Datei, die wir verschlüsseln möchten.
-
-
Führen Sie in der den folgenden Befehl ausCLI, um interaktiv ein Schema zu erstellen.
java -jar c3r-cli.jar schema ads.csv --interactive --output=ads.json
Anmerkung
-
Sie können ausführen
java --jar PATH/TO/c3r-cli.jar
. Oder, wenn SiePATH/TO/c3r-cli.jar
zu Ihrer CLASSPATH Umgebungsvariablen etwas hinzugefügt haben, können Sie auch den Klassennamen ausführen. Der C3R-Verschlüsselungsclient sucht in derCLASSPATH, um ihn zu finden (zum Beispieljava com.amazon.psion.cli.Main
). -
Das
--interactive
Flag wählt den interaktiven Modus für die Entwicklung des Schemas aus. Dadurch wird der Benutzer durch einen Assistenten zum Erstellen des Schemas geführt. Benutzer mit fortgeschrittenen Kenntnissen können ihr eigenes Schema erstellen, JSON ohne den Assistenten verwenden zu müssen. Weitere Informationen finden Sie unter (Optional) Erstellen Sie ein Schema (fortgeschrittene Benutzer). -
Das
--output
Flag legt einen Ausgabenamen fest. Wenn Sie das--output
Flag nicht angeben, versucht der C3R-Verschlüsselungsclient, einen Standardausgabenamen zu wählen (z. B.<input>.out.csv
oder für das Schema<input>.json
).
-
-
Geben Sie für
Number of target columns from source column ‘username’?
die Eingabe ein1
und drücken Sie dann die Eingabetaste. -
Geben Sie für
Target column type: [c]leartext, [f]ingerprint, or [s]ealed?
einf
und drücken Sie dann die Eingabetaste. -
Drücken Sie für
Target column headername <default 'username'>
die Eingabetaste.Der Standardname '
username
' wird verwendet. -
Geben Sie für
Add suffix '_fingerprint' to header to indicate how it was encrypted, [y]es or [n]o <default 'yes'>
einy
und drücken Sie dann die Eingabetaste.Anmerkung
Der interaktive Modus schlägt Suffixe vor, die zu den verschlüsselten Spaltenüberschriften hinzugefügt werden sollen (
_fingerprint
für fingerprint Spalten und_sealed
für sealed Spalten). Die Suffixe können hilfreich sein, wenn Sie Aufgaben wie das Hochladen von Daten in Kollaborationen oder das Erstellen von Kollaborationen ausführen. AWS-Services AWS Clean Rooms Anhand dieser Suffixe kann angegeben werden, was mit den verschlüsselten Daten in den einzelnen Spalten geschehen kann. Zum Beispiel funktionieren Dinge nicht, wenn Sie eine Spalte als sealed Spalte (_sealed
) verschlüsseln und versuchen, dies zu JOIN tun, oder wenn Sie es umgekehrt versuchen. -
Geben Sie für
Number of target columns from source column ‘ad_variant’?
die Eingabe ein1
und drücken Sie dann die Eingabetaste. -
Geben Sie für
Target column type: [c]leartext, [f]ingerprint, or [s]ealed?
einc
und drücken Sie dann die Eingabetaste. -
Drücken Sie für
Target column headername <default 'username'>
die Eingabetaste.Der Standardname '
ad_variant
' wird verwendet.Das Schema wird in eine neue Datei mit dem Namen geschrieben
ads.json
.Anmerkung
Sie können das Schema anzeigen, indem Sie es in einem beliebigen Texteditor öffnen, z. B. Notepad on Windows oder TextEdit onmacOS.
-
Sie sind jetzt bereit, Daten zu verschlüsseln.
Beispiel: Generieren Sie ein Verschlüsselungsschema mit sealed Spaltenfingerprint, und cleartext
In diesem Beispiel gibt sales.csv
es für drei Spalten: username
purchased
, undproduct
. Für diese Spalten wollen wir Folgendes:
-
Damit die
product
Spalte einesealed
Spalte ist -
Damit die
username
Spalte alsfingerprint
Spalte verschlüsselt wird -
Damit die
purchased
Spalte einecleartext
Spalte ist
Um ein Verschlüsselungsschema mit sealedfingerprint, und cleartext Spalten zu generieren
-
(Optional) Um sicherzustellen, dass die c3r-cli.jar Datei und die zu verschlüsselnde Datei vorhanden sind:
-
Navigieren Sie zum gewünschten Verzeichnis und führen Sie es aus
ls
(falls Sie ein Mac oderUnix/verwendenLinux) oderdir
wenn SieWindows) verwenden. -
Sehen Sie sich die Liste der tabellarischen Datendateien (.csv) an und wählen Sie eine zu verschlüsselnde Datei aus.
In diesem Beispiel
sales.csv
ist das die Datei, die wir verschlüsseln möchten.
-
-
Führen Sie in der den folgenden Befehl ausCLI, um interaktiv ein Schema zu erstellen.
java -jar c3r-cli.jar schema sales.csv --interactive --output=sales.json
Anmerkung
-
Das
--interactive
Flag wählt den interaktiven Modus für die Schemaentwicklung aus. Dadurch wird der Benutzer durch einen geführten Arbeitsablauf zur Erstellung des Schemas geführt. -
Wenn Sie ein erfahrener Benutzer sind, können Sie Ihr eigenes Schema erstellen, JSON ohne den geführten Workflow verwenden zu müssen. Weitere Informationen finden Sie unter (Optional) Erstellen Sie ein Schema (fortgeschrittene Benutzer).
-
Informationen zu CSV-Dateien ohne Spaltenüberschriften finden Sie unter dem
--noHeaders
Kennzeichen für den Befehl schema, das in der verfügbar ist. CLI -
Das
--output
Flag legt einen Ausgabenamen fest. Wenn Sie das--output
Flag nicht angeben, versucht der C3R-Verschlüsselungsclient, einen Standardausgabenamen zu wählen (z. B.<input>.out
oder für das Schema<input>.json
).
-
-
Geben Sie für
Number of target columns from source column ‘username’?
die Eingabe ein1
und drücken Sie dann die Eingabetaste. -
Geben Sie für
Target column type: [c]leartext, [f]ingerprint, or [s]ealed?
einf
und drücken Sie dann die Eingabetaste. -
Drücken Sie für
Target column headername <default 'username'>
die Eingabetaste.Der Standardname '
username
' wird verwendet. -
Geben Sie für
Add suffix '_fingerprint' to header to indicate how it was encrypted, [y]es or [n]o <default 'yes'>
einy
und drücken Sie dann die Eingabetaste. -
Geben Sie für
Number of target columns from source column ‘purchased’?
ein1
und drücken Sie dann die Eingabetaste. -
Geben Sie für
Target column type: [c]leartext, [f]ingerprint, or [s]ealed?
einc
und drücken Sie dann die Eingabetaste. -
Drücken Sie für
Target column headername <default 'purchased'>
die Eingabetaste.Der Standardname '
purchased
' wird verwendet. -
Geben Sie für
Number of target columns from source column ‘product’?
ein1
und drücken Sie dann die Eingabetaste. -
Geben Sie für
Target column type: [c]leartext, [f]ingerprint, or [s]ealed?
eins
und drücken Sie dann die Eingabetaste. -
Drücken Sie für
Target column headername <default 'product'>
die Eingabetaste.Der Standardname '
product
' wird verwendet. -
Drücken Sie für die Eingabetaste
‘product_sealed’ padding type: [n]one, [f]ixed, or [m]ax <default ’max’?>
, um die Standardeinstellung auszuwählen. -
Byte-length beyond max length to pad cleartext to in ‘product_sealed’ <default ‘0’>?
Drücken Sie die Eingabetaste, um die Standardeinstellung auszuwählen.Das Schema wird in eine neue Datei mit dem Namen geschrieben
sales.json
. -
Sie sind jetzt bereit, Daten zu verschlüsseln.