Skip to content

Crypto

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

7 modules

ModuleDescription
ÇözAES şifrelemesi kullanarak veriyi çöz
ŞifreleAES şifrelemesi kullanarak veriyi şifrele
HMACGenerate HMAC signature
JWT Oluşturİmzalı bir JWT token oluştur
JWT DoğrulaBir JWT token doğrula ve çöz
Random BytesGenerate cryptographically secure random bytes
Random StringGenerate cryptographically secure random string

Modules

Çöz

crypto.decrypt

AES şifrelemesi kullanarak veriyi çöz

Parameters:

NameTypeRequiredDefaultDescription
ciphertextstringYes-Çözülecek şifreli veri
keystringYes-Şifreleme anahtarı
modeselect (CBC, GCM)NoGCMAES şifreleme modu (CBC, GCM, vb.)
input_formatselect (base64, hex)Nobase64Girdi şifreli metin formatı (hex veya base64)

Output:

FieldTypeDescription
plaintextstringÇözülmüş düz metin
algorithmstringÇözme için kullanılan algoritma

Example: Decrypt AES-GCM ciphertext

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

Şifrele

crypto.encrypt

AES şifrelemesi kullanarak veriyi şifrele

Parameters:

NameTypeRequiredDefaultDescription
plaintextstringYes-Şifrelenecek veri
keystringYes-Şifreleme anahtarı
modeselect (CBC, GCM)NoGCMAES şifreleme modu (CBC, GCM, vb.)
output_formatselect (base64, hex)Nobase64Çıktı şifreli metin formatı (hex veya base64)

Output:

FieldTypeDescription
ciphertextstringŞifrelenmiş metin
algorithmstringŞifreleme için kullanılan algoritma
modestringKullanılan şifreleme modu

Example: Encrypt with AES-GCM

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

HMAC

crypto.hmac

Generate HMAC signature

Parameters:

NameTypeRequiredDefaultDescription
messagestringYes-Message to sign
keystringYes-Message to sign
algorithmselect (sha256, sha512, sha1, md5)Nosha256Secret key for HMAC
encodingselect (hex, base64)NohexOutput encoding format

Output:

FieldTypeDescription
signaturestringOutput encoding format
algorithmstringHMAC signature

JWT Oluştur

crypto.jwt_create

İmzalı bir JWT token oluştur

Parameters:

NameTypeRequiredDefaultDescription
payloadobjectYes-JWT yük verisi (nesne)
secretstringYes-Token imzalamak için gizli anahtar
algorithmselect (HS256, HS384, HS512, RS256)NoHS256JWT imzalama algoritması (HS256, RS256, vb.)
expires_innumberNo-Token son kullanma süresi (saniye)
issuerstringNo-Token verenin iddiası
audiencestringNo-Token için hedeflenen kitle

Output:

FieldTypeDescription
tokenstringOluşturulan JWT token
algorithmstringİmzalamak için kullanılan algoritma
expires_atstringToken son kullanma zamanı

Example: Create a JWT with expiration

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

JWT Doğrula

crypto.jwt_verify

Bir JWT token doğrula ve çöz

Parameters:

NameTypeRequiredDefaultDescription
tokenstringYes-Doğrulanacak JWT token
secretstringYes-Token imzalamak için kullanılan gizli anahtar
algorithmsarrayNo['HS256']İzin verilen imzalama algoritmaları
verify_expbooleanNoTrueSüresinin dolduğunu doğrulayıp doğrulamayacağı
audiencestringNo-Beklenen kitle iddiası
issuerstringNo-Beklenen issuer claim

Output:

FieldTypeDescription
validbooleanToken geçerli mi
payloadobjectÇözülmüş JWT yükü
headerobjectJWT başlık verisi

Example: Verify a JWT token

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

Random Bytes

crypto.random_bytes

Generate cryptographically secure random bytes

Parameters:

NameTypeRequiredDefaultDescription
lengthnumberYes32Number of bytes
encodingstringNohexOutput encoding

Output:

FieldTypeDescription
bytesstringRandom bytes (encoded)
lengthnumberRandom bytes (encoded)

Random String

crypto.random_string

Generate cryptographically secure random string

Parameters:

NameTypeRequiredDefaultDescription
lengthnumberYes16String length
charsetstringNoalphanumericCharacters to use
uppercasebooleanNoFalseConvert to uppercase

Output:

FieldTypeDescription
stringstringConvert to uppercase
lengthnumberRandom string

Released under the Apache 2.0 License.