Skip to content

Commit

Permalink
Add rsaBackend with basic functions
Browse files Browse the repository at this point in the history
  • Loading branch information
RomainL972 committed Jan 26, 2020
1 parent 53c3004 commit d3042f8
Show file tree
Hide file tree
Showing 3 changed files with 39 additions and 11 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@ build/
a.out
rsa.so
privkey.json
__pycache__
36 changes: 36 additions & 0 deletions rsaBackend.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
#!/usr/bin/env python3
import rsa
import json
import os
import sys

def createKey():
try:
f = open("privkey.json", "w")
tuple = rsa.generateKey()
key = {"n": tuple[0].decode(), "e": tuple[1].decode(), "d": tuple[2].decode()}
f.write(json.dumps(key))
except:
print("An error occured during the key generation")
sys.exit()
finally:
f.close()
return key

def loadKey():
try:
f = open("privkey.json", "r")
key = json.load(f)
except:
print("An error occured during the key loading, resetting private key")
key = createKey()
finally:
f.close()
return key

def getKey():
if os.path.isfile("privkey.json"):
key = loadKey()
else:
key = createkey()
return key
13 changes: 2 additions & 11 deletions test.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,18 +3,9 @@
import time
import binascii
import json
import rsaBackend

try:
f = open("privkey.json")
key = json.load(f)
f.close()
except FileNotFoundError:
f = open("privkey.json", "w")
tuple = rsa.generateKey()
key = {"n": tuple[0].decode(), "e": tuple[1].decode(), "d": tuple[2].decode()}
print(key)
f.write(json.dumps(key))
f.close()
key = rsaBackend.getKey()

input = input("What do you want to encrypt? ")
input = binascii.hexlify(input.encode()).decode()
Expand Down

0 comments on commit d3042f8

Please sign in to comment.