-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.py
65 lines (53 loc) · 2.08 KB
/
main.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
import sustitucion
import transposicion
import util
import RSA
def main():
mensaje = util.pedirmsj("Ingrese el mensaje a operar: ")
print(f'Mensaje original: {mensaje}')
# Test sustitución
pos = 8
susti_des = sustitucion_cifrar(mensaje, pos)
sustitucion_descifrar(susti_des, pos)
# Test Transposición
clave = 5
transp_descifrar = transposicion_cifrar(mensaje, clave)
transposicion_descifrar(transp_descifrar, clave)
# Test RSA
bits = 32 # Longitud de las claves en bits
e, d, n = RSA.gen_keys(bits) # Generar claves
mensaje_cifrado = RSA_cifrar(mensaje, e, n)
RSA_descifrar(mensaje_cifrado, d, n)
def sustitucion_cifrar(mensaje, pos): # Cifrar Sustitución
cifrado = sustitucion.convertiraNumero(mensaje)
cifrado = sustitucion.cifrar(cifrado, pos)
mensajecifrado = sustitucion.convertiraLetra(cifrado)
util.printResultado("cifrado",mensajecifrado)
return mensajecifrado
def sustitucion_descifrar(mensaje_cifrado, pos): # Descifrar por Sustitución
mensaje_cifrado = sustitucion.convertiraNumero(mensaje_cifrado)
descifrado = sustitucion.descifrar(mensaje_cifrado, pos)
mensajedescifrado = sustitucion.convertiraLetra(descifrado)
util.printResultado("descifrado",mensajedescifrado)
return mensajedescifrado
def transposicion_cifrar(mensaje, clave):
cifrado = transposicion.cifrar(mensaje, clave)
util.printResultado("cifrado",cifrado)
return cifrado
def transposicion_descifrar(mensaje, clave):
descifrado = transposicion.descifrar(mensaje, clave)
util.printResultado("descifrado",descifrado)
def RSA_cifrar(mensaje, e, n):
# Cifrar un mensaje
mensaje_cifrado = RSA.encrypt(mensaje, e, n)
print(f"Mensaje cifrado: {mensaje_cifrado}")
return mensaje_cifrado
def RSA_descifrar(mensaje_cifrado, d, n):
# Descifrar el mensaje
mensaje_descifrado = RSA.decrypt(mensaje_cifrado, d, n)
if mensaje_descifrado is not None:
print(f"Mensaje descifrado: {mensaje_descifrado}")
else:
print("Error al descifrar el mensaje.")
if __name__ == '__main__':
main()