-
Notifications
You must be signed in to change notification settings - Fork 634
Expand file tree
/
Copy pathP73_SimplePythonEncryption.py
More file actions
27 lines (20 loc) · 990 Bytes
/
P73_SimplePythonEncryption.py
File metadata and controls
27 lines (20 loc) · 990 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# Author: OMKAR PATHAK
# This program illustrates a simple Python encryption example using the RSA Algotrithm
# RSA is an algorithm used by modern computers to encrypt and decrypt messages. It is an asymmetric
# cryptographic algorithm. Asymmetric means that there are two different keys (public and private).
# For installation: sudo pip3 install pycrypto
from Crypto.PublicKey import RSA
from Crypto import Random
randomGenerator = Random.new().read
# Generating a private key and a public key
# key stores both the keys
key = RSA.generate(1024, randomGenerator) # 1024 is the size of the key in bits
print(key) # Prints private key
print(key.publickey()) # Prints public key
# Encryption using Public Key
publicKey = key.publickey()
encryptedData = publicKey.encrypt('My name is Omkar Pathak'.encode('utf-8'), 32)
print(encryptedData)
# Decryption using Private Key
decryptedData = key.decrypt(encryptedData)
print(decryptedData)