Advertisement
DekkerBass

ALNP1EJ3

Mar 9th, 2018
146
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.65 KB | None | 0 0
  1. pistas = "SECRET"+"MYCODE"
  2. cifrado_pistas = [alfabeto.index(i) for i in pistas]
  3. cifrado_pistas
  4.  
  5. #EDITAR AQUI ABAJO LAS PALABRAS
  6. pistas_codificadas = "A-TRRD"+"BDYWUF"
  7. cifrado_pistas_codificadas = [alfabeto.index(i) for i in pistas_codificadas]
  8. cifrado_pistas_codificadas
  9.  
  10. M = matrix(IntegerModRing(29),
  11. [
  12. [19, 4, 2, 0, 0, 0, 0, 0, 0, 1, 0, 0],
  13. [0, 0, 0, 19, 4, 2, 0, 0, 0, 0, 1, 0],
  14. [0, 0, 0, 0, 0, 0, 19, 4, 2, 0, 0, 1],
  15. [18, 4, 20, 0, 0, 0, 0, 0, 0, 1, 0, 0],
  16. [0, 0, 0, 18, 4, 20, 0, 0, 0, 0, 1, 0],
  17. [0, 0, 0, 0, 0, 0, 18, 4, 20, 0, 0, 1],
  18. [12, 25, 2, 0, 0, 0, 0, 0, 0, 1, 0, 0],
  19. [0, 0, 0, 12, 25, 2, 0, 0, 0, 0, 1, 0],
  20. [0, 0, 0, 0, 0, 0, 12, 25, 2, 0, 0, 1],
  21. [15, 3, 4, 0, 0, 0, 0, 0, 0, 1, 0, 0],
  22. [0, 0, 0, 15, 3, 4, 0, 0, 0, 0, 1, 0],
  23. [0, 0, 0, 0, 0, 0, 15, 3, 4, 0, 0, 1]
  24. ]).augment(column_matrix(IntegerModRing(29),cifrado_pistas_codificadas))
  25.  
  26. F, U = forma_escalonada(M, True)
  27.  
  28. A = matrix(IntegerModRing(29), 3, 3, list(U.column(12)[0:9]))
  29. b = vector(IntegerModRing(29), list(U.column(12)[9:]))
  30.  
  31. Ai = A.inverse()
  32.  
  33.  
  34. mensaje_codificado = "ABREVIADO"
  35.  
  36. cifrado_mensaje = [alfabeto.index(i) for i in mensaje_codificado]
  37. cifrado_mensaje
  38.  
  39. x1 = Ai*(vector(IntegerModRing(29),cifrado_mensaje[0:3])-b)
  40. x1 = [i for i in x1]
  41.  
  42. x2 = Ai*(vector(IntegerModRing(29),cifrado_mensaje[3:6])-b)
  43. x2 = [i for i in x2]
  44.  
  45. x3 = Ai*(vector(IntegerModRing(29),cifrado_mensaje[6:9])-b)
  46. x3 = [i for i in x3]
  47.  
  48. descifrado_mensaje = flatten([x1, x2, x3])
  49. descifrado_mensaje
  50.  
  51. mensaje_original = ""
  52. for i in descifrado_mensaje:
  53.     mensaje_original = mensaje_original + alfabeto[i]
  54.  
  55. print '\n\n========EL MENSAJE CIFRADO ES:==========='
  56. show(mensaje_original)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement