From d4e5951da487c6bce054eb00cc34413b225d119d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Prajczer=20P=C3=A9ter?= <prajczer.peter@hallgato.ppke.hu> Date: Sun, 1 Mar 2020 11:33:59 +0100 Subject: [PATCH] added finished code for lab1 --- .gitignore | 2 ++ ITKoin_01_Prajczer_Peter.py | 21 ++++++++++++--------- 2 files changed, 14 insertions(+), 9 deletions(-) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2ff22c9 --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/.idea/ +*.pem diff --git a/ITKoin_01_Prajczer_Peter.py b/ITKoin_01_Prajczer_Peter.py index 17d0f22..23d9321 100644 --- a/ITKoin_01_Prajczer_Peter.py +++ b/ITKoin_01_Prajczer_Peter.py @@ -61,6 +61,7 @@ class ITKoin: rsakey = RSA.import_key(publickeyfilecontent) rsapublickey = rsakey.publickey() self.rsapublickey = rsapublickey + return rsapublickey # pprint(vars(self.rsapublickey)) @@ -93,20 +94,22 @@ class ITKoin: # hozz létre egy verify objektumot verifyobject = pkcs1_15.new(rsapublickey) # az adatot töltsd be egy hash objektumba a create_hashobject(data) használatával - hashobject = self.create_hashobject(data) + hashobject = self.create_hashobject(data) # dekódold base64 kódolással az aláírás értéket - signaturevalue = b64decode(b64signaturevalue) - signatureerror = verifyobject.verify(signaturevalue, hashobject) - # értéke: True, ha az aláírás érvényes - validsignature = True - return validsignature + signaturevalue = b64decode(b64signaturevalue) + # ellenőrizd az aláírást + try: + verifyobject.verify(hashobject, signaturevalue) + except ValueError: + return False + return True if __name__ == '__main__': test_coin = ITKoin() # test_coin.generate_rsa_key("prajczer") test_coin.load_key("prajczer") - test_coin.load_public_key("prajczer") + rsapublickey = test_coin.load_public_key("prajczer") test_coin.create_hashobject("random") - test_coin.create_signature('random') - test_coin.verify_signature(@fasz kivan) + signo = test_coin.create_signature('random') + test_coin.verify_signature('random', signo, rsapublickey ) -- GitLab