How are you manually entering the `Ciphertext` for decryption?
Ciphertext, cipher = ['㓔', '\U000107ee', '퇫', '뺸']
On Monday, May 3, 2021 at 10:10:58 AM UTC+2 samu@gmail.com wrote:
> ''' I have the RSA code, code works when we give input to encryption and
> take decryption output (plaintext and output are same), but when we
> encrypt plaintext separately and take its output and give it to decryption
> code as input separately, the output, is not the same as encryption input
> (plaintext and output are not same). Can someone please explain why is this
> happening? '''
>
>
> # code begins
>
> import sympy
> from datetime import datetime
> from sage.all import ZZ, GF
> start_time = datetime.now()
> print("RSA Encryption and Decryption")
> print("Values of 'p' AND 'q' are as follows:")
> p = sympy.randprime(2, 100) #Input Prime Number
> print ("p = ", p)
> q = sympy.randprime(2, 100) #Input Prime Number
> print ("q = ", q)
> s = sympy.randprime(2, 100) #Input Prime Number
> print ("s = ", s)
>
> n = p * q * s
> print("")
> print ("RSA Modulus,n = ",n) #RSA Modulus
> r = (p-1)*(q-1)*(s-1) #Eulers Toitent
> e = ZZ.random_element(r)
> while gcd(e, r) != 1: #GCD
> e = ZZ.random_element(r) #e Value Calculation
> print("")
> print ("Public Key = ", e)
> bezout = xgcd(e, r);
> d = Integer(mod(bezout[1], r)); #d, Private Key
> print("")
> print ("d =", d)
> print("")
> text = 'samu'
> print("")
> print ("Message, m = ", text)
> m = [ord(c) for c in text]
> c = [power_mod(i, e, n) for i in m]#Encryption
> print(c)
> cipher = [chr(a) for a in c]
> print ("Ciphertext, cipher =", cipher)
>
> print('')
> '''
>
> cipher = input("Enter Cipher text to be decrypted") #cipher input
> print('Cipher text to be decrypted :', cipher) '''
> c = [ord(a) for a in cipher]#conversion of cipher text to the list of
> ascii values c
>
> print('c =',c)
>
> d = [power_mod(j, d, n) for j in c]#Decryption
> print('d =',d)
>
> characters = [chr(ascii) for ascii in d]
> print("")
> print ("Decrypted text, d = ", ''.join(characters))
> print("")
> print ("Plaintext/ Message, m = ", text)
> print ("Decrypted Message, d = ", ''.join(characters))
> if(text == ''.join(characters)):
> print ("Thus we encrypted and decrypted text using RSA algorithm")
> else:
> print("Not sucessfull")
>
>
> end_time = datetime.now()
> print('Time taken for execution of the program: {} '.format(end_time -
> start_time))
>
> # code ends
>
--
You received this message because you are subscribed to the Google Groups
"sage-support" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to sage-support+unsubscr...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/sage-support/42553a1e-7e98-4ab2-8c1a-6eb80ff1d8c6n%40googlegroups.com.