Skip to content

Crypto

AES encryption/decryption, HMAC, JWT tokens, and secure random generation.

7 modules

ModuleDescription
EntschlüsselnDaten mit AES-Verschlüsselung entschlüsseln
VerschlüsselnDaten mit AES-Verschlüsselung verschlüsseln
HMACHMAC-Signatur erzeugen
JWT erstellenSigniertes JWT-Token erstellen
JWT verifizierenJWT-Token verifizieren und dekodieren
ZufallsbytesKryptografisch sichere Zufallsbytes erzeugen
ZufallsstringKryptografisch sicheren Zufallsstring erzeugen

Modules

Entschlüsseln

crypto.decrypt

Daten mit AES-Verschlüsselung entschlüsseln

Parameters:

NameTypeRequiredDefaultDescription
ciphertextstringYes-Zu entschlüsselnde verschlüsselte Daten
keystringYes-Verschlüsselungsschlüssel
modeselect (CBC, GCM)NoGCMAES-Verschlüsselungsmodus (CBC, GCM, etc.)
input_formatselect (base64, hex)Nobase64Format des Eingabe-Chiffretexts (hex oder base64)

Output:

FieldTypeDescription
plaintextstringEntschlüsselter Klartext
algorithmstringAlgorithmus für die Entschlüsselung

Example: Decrypt AES-GCM ciphertext

yaml
ciphertext: <base64-encoded-ciphertext>
key: my-secret-passphrase
mode: GCM

Verschlüsseln

crypto.encrypt

Daten mit AES-Verschlüsselung verschlüsseln

Parameters:

NameTypeRequiredDefaultDescription
plaintextstringYes-Zu verschlüsselnde Daten
keystringYes-Verschlüsselungsschlüssel
modeselect (CBC, GCM)NoGCMAES-Verschlüsselungsmodus (CBC, GCM, etc.)
output_formatselect (base64, hex)Nobase64Format für den Ausgabe-Chiffretext (hex oder base64)

Output:

FieldTypeDescription
ciphertextstringVerschlüsselter Chiffretext
algorithmstringAlgorithmus für die Verschlüsselung
modestringVerwendeter Verschlüsselungsmodus

Example: Encrypt with AES-GCM

yaml
plaintext: Hello, World!
key: my-secret-passphrase
mode: GCM

HMAC

crypto.hmac

HMAC-Signatur erzeugen

Parameters:

NameTypeRequiredDefaultDescription
messagestringYes-Nachricht zum Signieren
keystringYes-Nachricht zum Signieren
algorithmselect (sha256, sha512, sha1, md5)Nosha256Geheimer Schlüssel für HMAC
encodingselect (hex, base64)NohexAusgabeformat

Output:

FieldTypeDescription
signaturestringAusgabeformat
algorithmstringHMAC-Signatur

JWT erstellen

crypto.jwt_create

Signiertes JWT-Token erstellen

Parameters:

NameTypeRequiredDefaultDescription
payloadobjectYes-JWT-Payload-Daten (Objekt)
secretstringYes-Geheimer Schlüssel zur Signierung des Tokens
algorithmselect (HS256, HS384, HS512, RS256)NoHS256JWT-Signierungsalgorithmus (HS256, RS256, etc.)
expires_innumberNo-Ablaufzeit des Tokens in Sekunden
issuerstringNo-Aussteller des Tokens
audiencestringNo-Vorgesehene Zielgruppe für das Token

Output:

FieldTypeDescription
tokenstringErzeugtes JWT-Token
algorithmstringAlgorithmus für die Signierung
expires_atstringAblaufzeitstempel des Tokens

Example: Create a JWT with expiration

yaml
payload: {"sub": "user123", "role": "admin"}
secret: my-jwt-secret
algorithm: HS256
expires_in: 3600

JWT verifizieren

crypto.jwt_verify

JWT-Token verifizieren und dekodieren

Parameters:

NameTypeRequiredDefaultDescription
tokenstringYes-Zu überprüfendes JWT-Token
secretstringYes-Geheimer Schlüssel zur Signierung des Tokens
algorithmsarrayNo['HS256']Erlaubte Signierungsalgorithmen
verify_expbooleanNoTrueOb das Ablaufdatum überprüft werden soll
audiencestringNo-Erwarteter Zielgruppenanspruch
issuerstringNo-Erwarteter Ausstelleranspruch

Output:

FieldTypeDescription
validbooleanOb das Token gültig ist
payloadobjectDekodierter JWT-Payload
headerobjectJWT-Header-Daten

Example: Verify a JWT token

yaml
token: eyJhbGciOiJIUzI1NiIs...
secret: my-jwt-secret
algorithms: ["HS256"]
verify_exp: true

Zufallsbytes

crypto.random_bytes

Kryptografisch sichere Zufallsbytes erzeugen

Parameters:

NameTypeRequiredDefaultDescription
lengthnumberYes32Anzahl der Bytes
encodingstringNohexAusgabeformat

Output:

FieldTypeDescription
bytesstringZufallsbytes (kodiert)
lengthnumberZufallsbytes (kodiert)

Zufallsstring

crypto.random_string

Kryptografisch sicheren Zufallsstring erzeugen

Parameters:

NameTypeRequiredDefaultDescription
lengthnumberYes16Stringlänge
charsetstringNoalphanumericZu verwendende Zeichen
uppercasebooleanNoFalseIn Großbuchstaben umwandeln

Output:

FieldTypeDescription
stringstringIn Großbuchstaben umwandeln
lengthnumberZufallsstring

Released under the Apache 2.0 License.