RSA encryption in python 🐍


RSA Encryption in Python 3.8

First install the dependencies ie pycryptodome library [pycryptodome 3.9.7]:
pip3 install pycryptodome

       

from Crypto.PublicKey import RSA
from Crypto.Cipher import PKCS1_OAEP
import binascii

keyPair = RSA.generate(3072)

pubKey = keyPair.publickey()
pubKey = pubKey.exportKey()
pubKey = pubKey.decode('utf-8')

privKey = keyPair.exportKey()
privKey = privKey.decode('utf-8')


key = RSA.importKey(pubKey)
msg = b'A message for encryption'
encryptor = PKCS1_OAEP.new(key)
encrypted = encryptor.encrypt(msg)
encrypted = binascii.hexlify(encrypted)
encrypted = encrypted.decode('utf-8')
print(encrypted)

key = RSA.importKey(privKey)
decryptor = PKCS1_OAEP.new(key)
encrypted = encrypted.encode('utf-8')
encrypted = binascii.unhexlify(encrypted)
decrypted = decryptor.decrypt(encrypted)
decrypted = decrypted.decode('utf-8')
print('Decrypted:', decrypted)


       
 

Comments

Popular posts from this blog

Add/Set collection in Firestore with the Firebase Admin SDK : Python 🐍

Writing to external SD card in Android 5.0 and above

Add/Set array in Firestore with the Firebase Admin SDK : Python 🐍