Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ## Codigo basado de "Spckets en Python" en MundoGeek http://goo.gl/qiuRZ
- from random import randint
- import rsa
- import socket
- def server(host, puerto):
- public = rsa.getKeyFromFile('rsa.pub')
- private = rsa.getKeyFromFile('rsa.priv')
- s = socket.socket()
- s.bind((host, puerto))
- s.listen(1)
- sc, addr = s.accept()
- while True:
- r = randint(1,1000)
- sc.send(str(r))
- respuesta = sc.recv(1024)
- r2 = rsa.D(int(respuesta), public)
- if (r*2) == r2:
- sc.send('OK')
- print 'Esperando mensaje...'
- recibido = sc.recv(1024)
- m = rsa.decifrar(rsa.D(int(recibido), private))
- print 'El mensaje cifrado es %s el cual representa la frase "%s"' % (recibido, m)
- break
- else:
- break
- print "adios"
- sc.close()
- s.close()
- return
- def cliente(host, puerto):
- private = rsa.getKeyFromFile('rsa.priv')
- public = rsa.getKeyFromFile('rsa.pub')
- s = socket.socket()
- s.connect((host, puerto))
- #s.connect(("localhost", 9999))
- while True:
- r = s.recv(1024)
- respuesta = rsa.E(int(r), private)
- respuesta = int(respuesta)*2
- s.send(str(respuesta))
- recibido = s.recv(1024)
- if recibido == 'OK':
- print 'Conexion Aceptada!!'
- m = raw_input('Mensaje >')
- ciphertext = rsa.E(rsa.cifrar(m), public)
- s.send(str(ciphertext))
- print 'El mensaje enviado fue "%s" el cual se cifro como %s' % (m, ciphertext)
- break
- else:
- break
- print "adios"
- s.close()
- return
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement