I have a client and a server. I am sending two integer values to server using s.send one after another.But my program gets stuck on server and not moves on.
Here is my client code.
import socket
s=socket.socket()
host=socket.gethostname()
port=8080
print("RSA Client Side \n")
p=int(input("Enter p(prime number) "))
q=int(input("Enter q(prime number) "))
n=p*q
print("First part of public key is %d"%n)
a=(p-1)*(q-1)
print("Euler Totient function is %d\n"%a)
e=int(input("Enter exponent e value such that 1<e<TF and is coprime "))
print("Public key is n=%d , e=%d\n"%(n,e))
s.connect((host, port))
s.send(str.encode(str(n)))
s.send(str.encode(str(e)))
m=int((s.recv(2048)).decode('utf-8'))
print("Recieved encrypted message is %d"%m)
s.close
and server code
import socket
s=socket.socket()
host=socket.gethostname()
port=8080
s.bind((host,port))
s.listen(5)
while 1:
c,address=s.accept()
n=int((c.recv(2048)).decode('utf-8'))
e=int((c.recv(2048)).decode('utf-8'))
print("Recieved public key from client is n=%d,e=%d\n"%(n,e))
m=input("enter your message ")
if m.isdigit():
c=(m**e)%n
print("Encrypted data send is %d\n"%m)
c.send(str.encode(str(m)))
s.close