Siehe auch: Base64-Verschlüsselung
Wertauflöser - Kurzfassung
Zweck: "Entschlüsselt" einen als Eingabewert vorliegenden Base64-codierten
Stringwahlweise alsString(Standard) oder als "ByteArray" (byte[]).Tooltip
Verwendung: Als Eingabewert muss ein Textwert (
String) vorliegen, der dem Base64-Format (soweit erforderlich inkl. Füllzeichen "=" am Ende) entspricht. Dann wird – abhängig von der Option als ByteArray zurückgeben - der "entschlüsselte" Wert alsStringoder "ByteArray" (byte[]) zurückgegeben. Sonst: "Kein Wert" ($null).Parameter: Die Option als ByteArray zurückgeben ist per Standard abgewählt. Dann wird der entschlüsselte Wert als
Stringzurückgegeben. Sonst: als "ByteArray" (byte[]).

Der Base64-Entschlüsselung-Wertauflöser "entschlüsselt" einen als Eingabewert vorliegenden Base64-codierten String wahlweise als String (Standard) oder als "ByteArray" (byte[]).
Der Eingabewert muss dem Base64-Format entsprechen und deshalb folgende Anforderungen erfüllen:
Es handelt sich um einen Textwert (
String).Der Textwert darf ausschließlich Zeichen aus dem Base64-Zeichensatz (
[A-Z][a-z][0-9]+/) und kann am Ende bis zu zwei Instanzen des Füllzeichens (=) enthalten.Die Länge des Textwerts (inkl. der ggf. enthaltenen Füllzeichen am Ende) muss ein ganzzahliges Vielfaches von 4 sein.
Verletzt der Eingabewert mindestens eine dieser Anforderungen, lautet der Rückgabewert "Kein Wert" ($null).
Hintergrund: Base64-Codierung
Der
Base64-Code ist keine Verschlüsselung im kryptographischen Sinn. Es handelt sich lediglich um eine Abbildungsvorschrift zur Umwandlung von Binärdaten, durch die eine Folge von Bytes (Gruppen von 8 Bits) in einen Zeichensatz mit 64 "lesbaren" und gängigen Schriftzeichen ([A-Z][a-z][0-9]+/) übertragen wird.Da 6-Bit nötig sind, um 64 Zeichen unterscheiden zu können, bildet eine Gruppe von 4 Base64-Codes (4 x 6bit = 24bit) je 3 unverschlüsselte Bytes bzw. auch Buchstaben eines ASCII-Texts ab.
Beispiel: Text:
ABC→ ASCII-Byte-Sequenz:{65, 66, 67}
→ Bits gruppiert á 8:{01000001, 01000010, 01000011}
→ Bits gruppiert á 6:{010000, 010100, 001001, 000011}
→ Base64-Wert/Code:{16/Q, 20/U, 9/J, 3/D}→ Base64-Code:QUJD►HINWEIS◄ Am Ende des Rückgabewerts können bis zu zwei Ist-Gleich-Zeichen (=) erscheinen, die nicht im Base64-Zeichensatzes enthalten sind und nur als Füllzeichen dienen, falls das 3 : 4-Ersetzungsschema aufgrund der Länge des Eingabewerts nicht komplett ausgeschöpft wird.
Beispiel: TextAB→{01000001, 01000010} → {010000, 010100, 001000, } → {16/Q, 20/U, 8/I, } → QUI=
Konfiguration
Die Option als ByteArray zurückgeben ist per Standard abgewählt. Mit dieser Einstellung wird das Ergebnis der Entschlüsselung als Textwert ( |
|
Ist die Option als ByteArray zurückgeben ausgewählt, wird das Ergebnis der Entschlüsselung als ByteArray ( |
|
Beispiel
Das folgende Beispiel soll nur den Effekt der Option als ByteArray zurückgeben illustrieren. Es hat keine unmittelbaren praktischen Nutzen.
Der Screenshot rechts zeigt einen Ausführen mit-Wertauflöser, dessen Objekt-Wertauflöser hier dazu dient, einen Base64-String zu erzeugen, der die Zeichenfolge "X►U" (mit einem Unicode-Sonderzeichen an der zweiten Position) "codiert". Die generierte Base64-Zeichenfolge , die als temporäres Bezugsobjekt für den Aktionsblock gilt, lautet Der Aktionsblock enthält eine Hinweis anzeigen-Ereignisaktion, die in Titel und Meldung je eine Instanz des Base64-Entschlüsselung-Wertauflösers verwendet, um die generierten Base-Zeichenfolge zu decodieren. Im Titel ist dabei die Option als Byte Array zurückgeben abgewählt (Standard), sodass der ursprüngliche In der Meldung ist die Option als ByteArray zurückgeben ausgewählt, sodass nicht der ursprüngliche In beiden Fällen ist ein Objekt-Feld-Wertauflöser verkettet, der auf das Feld Da der unverschlüsselte Text ein Sonderzeichen "►" enthält, für das die -8-Codierung - anders als für Zeichen aus dem ASCII-Zeichensatz - mehrere Bytes benötigt, unterscheidet sich die Länge der Zeichenfolge (3 Zeichen) von der Länge des ByteArrays (5 Bytes). |
|
Laufzeitbeispiel:
| |


