Sharing a secetr

 Mateo Sanabria Ardila

Introducción a la criptografía
Esta estrategia se necesita en la vida cotidiana
La idea es increíblemente simple pero muy efectiva, miremos!

Formulación matemática

Dado un secreto S (numero entero) se quiere dividir el secreto en S1,...,Sn en piezas de información que juntas  permitan reconstruir el secreto S
  • Escoger n numero aleatorios 
    n1,...,nn 
  • Encontrar la imagen para los n puntos del paso anterior
  • Los n secretos corresponden a las n parejas (n,f(n)
f(n) = S + a_0x + \cdots + a_nx
Asi como esta definido hay un problema de implementación
Las operación con tipo float
why?
Cree un programa que por parámetro reciba:
  1. El modulo, numero primo, sobre el cual se van a hacer las operaciones
  2. El numero n de secreteos
  3. Los n secreteos
Como resultado debe entregar el secreto correspondiente y el polinomio correspodiente

 

Ejemplos

Dados los secretos (2,600), (5,560),(7,120),(1,360) y el primo p = 1301, se tiene secreto S=190 y el polinomio:
-13x^3 + 74x^2 + 109x + 190 \ \textbf{mod} \ 1301

Ejemplos

Dados los secretos (4,2),(3,1),(8,10)(1,360) y el primo p = 1301, se tiene secreto S=1083 y el polinomio:
295x^3 + 519x^2 - 236x + 1083 \ \textbf{mod} \ 1301

Share a secret

By Mateo Sanabria Ardila

Share a secret

Share a secret

  • 60