hesham-rsa/encodetest.py

54 lines
1.1 KiB
Python
Raw Normal View History

#!/usr/bin/python3
2021-01-30 11:03:57 +01:00
# Copyright (C) 2019-2021 Hesham T. Banafa
2020-12-12 00:26:02 +01:00
s = 'test message hello awdawd'
print(s)
s_number = int.from_bytes(s.encode('utf-8'),'little')
print(s_number)
ss = str(s_number.to_bytes(s_number.bit_length(),'little').decode('utf-8')).strip()
print(ss)
msg_list = list()
for word in s.split():
msg_list.append(word)
print(msg_list)
import rsa as en
key = en.generateKeys("temp")
enc_list = list()
pub_key = (key[0],key[1])
for word in msg_list:
enc_list.append(en.encrypt(word,pub_key))
print(enc_list)
unenc_list = list()
for enc_word in enc_list:
unenc_list.append(str(en.decrypt(enc_word,key[2],key[0])).strip(('\x00')))
print(unenc_list)
sig = "hesham"
n = key[en.N]
e = key[en.D] #encrypt with private key
d = key[en.E]
sig_enc = en.encrypt(sig,(n,e))
print(sig_enc)
sig_un = en.decrypt(sig_enc,d,n)
print(sig_un)
print(key)
import OAEP
key = en.generateKeys("encode-test", 2048)
x = int(en.encrypt("test message", (key[en.N], key[en.E])))
print(x)
encoded_msg = OAEP.i2osp(x, key[en.N].bit_length())
print(encoded_msg)
decoded = OAEP.os2ip(encoded_msg)
print(decoded)