Skip to content

Crypto

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

7 modules

ModuleDescription
डिक्रिप्टAES एन्क्रिप्शन का उपयोग करके डेटा डिक्रिप्ट करें
एन्क्रिप्टAES एन्क्रिप्शन का उपयोग करके डेटा एन्क्रिप्ट करें
HMACHMAC हस्ताक्षर उत्पन्न करें
JWT बनाएंएक साइन किया हुआ JWT टोकन बनाएं
JWT सत्यापित करेंएक JWT टोकन को सत्यापित और डिकोड करें
रैंडम बाइट्सक्रिप्टोग्राफिक रूप से सुरक्षित रैंडम बाइट्स उत्पन्न करें
रैंडम स्ट्रिंगक्रिप्टोग्राफिक रूप से सुरक्षित रैंडम स्ट्रिंग उत्पन्न करें

Modules

डिक्रिप्ट

crypto.decrypt

AES एन्क्रिप्शन का उपयोग करके डेटा डिक्रिप्ट करें

Parameters:

NameTypeRequiredDefaultDescription
ciphertextstringYes-डिक्रिप्ट करने के लिए एन्क्रिप्टेड डेटा
keystringYes-एन्क्रिप्शन कुंजी
modeselect (CBC, GCM)NoGCMAES साइफर मोड (CBC, GCM, आदि)
input_formatselect (base64, hex)Nobase64इनपुट साइफरटेक्स्ट का प्रारूप (hex या base64)

Output:

FieldTypeDescription
plaintextstringडिक्रिप्टेड प्लेनटेक्स्ट
algorithmstringडिक्रिप्शन के लिए उपयोग किया गया एल्गोरिदम

Example: Decrypt AES-GCM ciphertext

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

एन्क्रिप्ट

crypto.encrypt

AES एन्क्रिप्शन का उपयोग करके डेटा एन्क्रिप्ट करें

Parameters:

NameTypeRequiredDefaultDescription
plaintextstringYes-एन्क्रिप्ट करने के लिए डेटा
keystringYes-एन्क्रिप्शन कुंजी
modeselect (CBC, GCM)NoGCMAES साइफर मोड (CBC, GCM, आदि)
output_formatselect (base64, hex)Nobase64आउटपुट साइफरटेक्स्ट का प्रारूप (hex या base64)

Output:

FieldTypeDescription
ciphertextstringएन्क्रिप्टेड साइफरटेक्स्ट
algorithmstringएन्क्रिप्शन के लिए उपयोग किया गया एल्गोरिदम
modestringउपयोग किया गया साइफर मोड

Example: Encrypt with AES-GCM

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

HMAC

crypto.hmac

HMAC हस्ताक्षर उत्पन्न करें

Parameters:

NameTypeRequiredDefaultDescription
messagestringYes-हस्ताक्षर करने के लिए संदेश
keystringYes-हस्ताक्षर करने के लिए संदेश
algorithmselect (sha256, sha512, sha1, md5)Nosha256HMAC के लिए गुप्त कुंजी
encodingselect (hex, base64)Nohexआउटपुट एन्कोडिंग प्रारूप

Output:

FieldTypeDescription
signaturestringआउटपुट एन्कोडिंग प्रारूप
algorithmstringHMAC हस्ताक्षर

JWT बनाएं

crypto.jwt_create

एक साइन किया हुआ JWT टोकन बनाएं

Parameters:

NameTypeRequiredDefaultDescription
payloadobjectYes-JWT पेलोड डेटा (ऑब्जेक्ट)
secretstringYes-टोकन को साइन करने के लिए गुप्त कुंजी
algorithmselect (HS256, HS384, HS512, RS256)NoHS256JWT साइनिंग एल्गोरिदम (HS256, RS256, आदि)
expires_innumberNo-टोकन समाप्ति समय सेकंड में
issuerstringNo-टोकन जारीकर्ता दावा
audiencestringNo-टोकन के लिए लक्षित दर्शक

Output:

FieldTypeDescription
tokenstringउत्पन्न JWT टोकन
algorithmstringसाइनिंग के लिए उपयोग किया गया एल्गोरिदम
expires_atstringटोकन समाप्ति समय

Example: Create a JWT with expiration

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

JWT सत्यापित करें

crypto.jwt_verify

एक JWT टोकन को सत्यापित और डिकोड करें

Parameters:

NameTypeRequiredDefaultDescription
tokenstringYes-सत्यापित करने के लिए JWT टोकन
secretstringYes-टोकन पर हस्ताक्षर करने के लिए प्रयुक्त गुप्त कुंजी
algorithmsarrayNo['HS256']अनुमत साइनिंग एल्गोरिदम
verify_expbooleanNoTrueक्या समाप्ति दावे को सत्यापित करना है
audiencestringNo-अपेक्षित दर्शक दावा
issuerstringNo-अपेक्षित जारीकर्ता दावा

Output:

FieldTypeDescription
validbooleanक्या टोकन मान्य है
payloadobjectडिकोड किया गया JWT पेलोड
headerobjectJWT हेडर डेटा

Example: Verify a JWT token

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

रैंडम बाइट्स

crypto.random_bytes

क्रिप्टोग्राफिक रूप से सुरक्षित रैंडम बाइट्स उत्पन्न करें

Parameters:

NameTypeRequiredDefaultDescription
lengthnumberYes32बाइट्स की संख्या
encodingstringNohexआउटपुट एन्कोडिंग

Output:

FieldTypeDescription
bytesstringरैंडम बाइट्स (एन्कोडेड)
lengthnumberरैंडम बाइट्स (एन्कोडेड)

रैंडम स्ट्रिंग

crypto.random_string

क्रिप्टोग्राफिक रूप से सुरक्षित रैंडम स्ट्रिंग उत्पन्न करें

Parameters:

NameTypeRequiredDefaultDescription
lengthnumberYes16स्ट्रिंग की लंबाई
charsetstringNoalphanumericउपयोग करने के लिए अक्षर
uppercasebooleanNoFalseबड़े अक्षरों में बदलें

Output:

FieldTypeDescription
stringstringबड़े अक्षरों में बदलें
lengthnumberरैंडम स्ट्रिंग

Released under the Apache 2.0 License.