सममित कुंजी एन्क्रिप्शन: फर्नेट
पायथन के पास एक मजबूत क्रिप्टोग्राफी लाइब्रेरी है जो फर्नेट, एक सुरक्षित, सर्वोत्तम अभ्यास एन्क्रिप्शन योजना की पेशकश करती है। फ़र्नेट डेटा की सुरक्षा के लिए एईएस सीबीसी एन्क्रिप्शन, एचएमएसी हस्ताक्षर और संस्करण और टाइमस्टैम्प जानकारी का उपयोग करता है। Fernet.generate_key() के साथ एक कुंजी उत्पन्न करने की अनुशंसा की जाती है।
from cryptography.fernet import Fernet
key = Fernet.generate_key()
message = 'John Doe'
token = Fernet(key).encrypt(message.encode())
decrypted_message = Fernet(key).decrypt(token).decode() # 'John Doe'
विकल्प:
अस्पष्ट: यदि केवल अस्पष्टता की आवश्यकता है, बेस64 एन्कोडिंग पर्याप्त हो सकती है। यूआरएल सुरक्षा के लिए, urlsafe_b64encode() का उपयोग करें।
import base64
obscured_message = base64.urlsafe_b64encode(b'Hello world!') # b'eNrzSM3...='
केवल अखंडता: HMAC एन्क्रिप्शन के बिना डेटा अखंडता आश्वासन प्रदान कर सकता है।
import hmac
import hashlib
key = secrets.token_bytes(32)
signature = hmac.new(key, b'Data', hashlib.sha256).digest()
AES-GCM एन्क्रिप्शन: AES-GCM बिना पैडिंग के एन्क्रिप्शन और अखंडता दोनों प्रदान करता है।
import base64
key = secrets.token_bytes(32)
ciphertext = aes_gcm_encrypt(b'Data', key) # base64-encoded ciphertext and tag
decrypted_data = aes_gcm_decrypt(ciphertext, key) # b'Data'
अन्य दृष्टिकोण:
एईएस सीएफबी: बिना पैडिंग के सीबीसी के समान। &&&]
import base64
key = secrets.token_bytes(32)
ciphertext = aes_cfb_encrypt(b'Data', key) # base64-encoded ciphertext and IV
decrypted_data = aes_cfb_decrypt(ciphertext, key) # b'Data'
एईएस ईसीबी: सावधान: असुरक्षित! वास्तविक दुनिया के अनुप्रयोगों के लिए अनुशंसित नहीं है।
आयात आधार64
कुंजी = रहस्य.टोकन_बाइट्स(32)
सिफरटेक्स्ट = aes_ecb_encrypt(b'डेटा', कुंजी) # बेस64-एन्कोडेड सिफरटेक्स्ट
डिक्रिप्टेड_डेटा = aes_ecb_decrypt(सिफरटेक्स्ट, कुंजी) # b'डेटा'
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3