क्रिप्टोग्राफी लायब्ररीचा वापर करुन पायथनमधील डेटा कूटबद्ध व डिक्रिप्ट कसा करावा

या ट्यूटोरियलमध्ये आपण डेटा कूटबद्ध आणि डिक्रिप्ट कसे करावे हे शिकू शकता, उदा. पायथनमधील क्रिप्टोग्राफी लायब्ररी वापरुन मजकूराची स्ट्रिंग.

एन्क्रिप्शन ही माहिती एन्कोडिंगची प्रक्रिया आहे ज्यायोगे केवळ अधिकृत पक्ष त्यात प्रवेश करू शकतील. हे आम्हाला केवळ कोणासही पाहू किंवा प्रवेश करू इच्छित नाही असा डेटा सुरक्षितपणे संरक्षित करण्यास अनुमती देते.

संबंधित:

या उदाहरणात, आम्ही सममितीय एनक्रिप्शन वापरणार आहोत, म्हणजेच डेटा कूटबद्ध करण्यासाठी वापरली जाणारी समान की, डिक्रिप्शनसाठी देखील वापरण्यायोग्य आहे.

आपण येथे वापरत असलेली क्रिप्टोग्राफी लायब्ररी एईएस अल्गोरिदमच्या शीर्षस्थानी तयार केली आहे.

पायथनमधील डेटा कूटबद्ध करा

प्रथम, आम्हाला क्रिप्टोग्राफी लायब्ररी स्थापित करण्याची आवश्यकता आहे:



pip3 install cryptography |

क्रिप्टोग्राफी लायब्ररीतून, आम्हाला | _ _ _ _ | आयात करणे आवश्यक आहे आणि एक की व्युत्पन्न करण्यास प्रारंभ करा - सममितीय एनक्रिप्शन / डिक्रिप्शनसाठी ही की आवश्यक आहे.

की व्युत्पन्न करा

की व्युत्पन्न करण्यासाठी, आम्ही | _ _ + _ | पद्धत:

Fernet |

आम्हाला फक्त एकदा की तयार करण्यासाठी वरील पद्धत पुन्हा कार्यान्वित करणे आवश्यक आहे.

टीपःआपल्याला ही की सुरक्षित ठिकाणी ठेवण्याची आवश्यकता आहे. आपण की गमावल्यास आपण या की सह कूटबद्ध केलेला डेटा डिक्रिप्ट करण्यास सक्षम राहणार नाही.

की लोड करा

एकदा आम्ही की व्युत्पन्न केल्यावर डेटा एन्क्रिप्ट करण्यासाठी आम्हाला आमच्या पद्धतीत की लोड करणे आवश्यक आहे:

generate_key() |

संदेश कूटबद्ध करा

आता आपण मेसेज कूटबद्ध करण्यास तयार आहोत. ही तीन चरणांची प्रक्रिया आहे:

  • 1 - संदेश एन्कोड करा
  • 2 - फर्नाट वर्ग आरंभ करा
  • 3 - एन्कोड केलेला संदेश | from cryptography.fernet import Fernet def generate_key():
    '''
    Generates a key and save it into a file
    '''
    key = Fernet.generate_key()
    with open('secret.key', 'wb') as key_file:
    key_file.write(key)
    वर पाठवा पद्धत

संदेश एन्कोड करा:

def load_key():
'''
Loads the key named `secret.key` from the current directory.
'''
return open('secret.key', 'rb').read()
|

फर्नाट वर्ग सुरू करा:

encrypt() |

संदेश कूटबद्ध करा:

message = 'message I want to encrypt'.encode() |

पूर्ण कोड उदाहरण

खाली अजगरात संदेश कूटबद्ध करण्याचे पूर्ण कार्यरत उदाहरण आहे:

f = Fernet(key) |

आउटपुटः

encrypted_message = f.encrypt(message) |

पायथनमधील डिक्रिप्ट डेटा

संदेश डिक्रिप्ट करण्यासाठी, आम्ही फक्त | _ _ _ _ | | _ _ + _ | वरून पद्धत ग्रंथालय. लक्षात ठेवा, आम्हाला देखील की लोड करणे देखील आवश्यक आहे, कारण संदेश डीक्रिप्ट करण्यासाठी की आवश्यक आहे.

from cryptography.fernet import Fernet def generate_key():
'''
Generates a key and save it into a file
'''
key = Fernet.generate_key()
with open('secret.key', 'wb') as key_file:
key_file.write(key) def load_key():
'''
Load the previously generated key
'''
return open('secret.key', 'rb').read() def encrypt_message(message):
'''
Encrypts a message
'''
key = load_key()
encoded_message = message.encode()
f = Fernet(key)
encrypted_message = f.encrypt(encoded_message)
print(encrypted_message) if __name__ == '__main__':
encrypt_message('encrypt this message')
|

आउटपुटः

b'gAAAAABesCUIAcM8M-_Ik_-I1-JD0AzLZU8A8-AJITYCp9Mc33JaHMnYmRedtwC8LLcYk9zpTqYSaDaqFUgfz-tcHZ2TQjAgKKnIWJ2ae9GDoea6tw8XeJ4=' |