SlideShare une entreprise Scribd logo
1  sur  10
El primer ejemplo sobre el cual presentaremos a los sistemas de
clave publica esta basado en un problema de ingenio
denominado 'el problema de la mochila'
Se tiene una mochila con capacidad para "K" kilos. Además se
cuenta con una lista de "n" objetos cuyos pesos se conocen y
son (A1,A2,A3,...,AN). El problema consiste en seleccionar una
cierta cantidad de objetos de la lista de forma tal que la
mochila quede completamente llena.
Para resolver este problema no se conoce ningún método mejor que el ir
probando las distintas combinaciones de objetos y ver si en alguna de ellas la
mochila queda completamente llena. Si los pesos de los objetos están en un
vector (A1,A2,A3,...,AN) una combinación puede escribirse como un numero
binario de N bits en el cual un uno en la posición "i" indica que el elemento "i"
debe estar en la mochila, un cero indica lo contrario.
Ej.:
A=(3,45,6,7,21,12,9,90)
C1=(00000001)=90
C2=(10101010)=3+6+21+9=39
Empecemos por inventar un sistema de clave privada que utilice ‘ Knapsacks ‘
Dado un mensaje lo pasamos a binario y tomamos bloques de "N" bits de
acuerdo al tamaño del Knapsack, sumamos los elementos del Knapsack que
corresponden a los bits en 1 y el numero resultante es la codificación del
bloque.
Ej.: Con bloques de 8 bits y usando el código Ascii si el vector es:
(3,45,6,7,21,12,9,90)
'H' = 01001000 = 45 + 21 = 66
'o' = 01101111 = 45 + 6 + 21 + 12 + 9 + 90 = 183
'l' = 01101100 = 45 + 6 + 21 + 12 = 84
'a' = 01100001 = 45 + 6 + 90 = 141
'Hola' = 66,183,84,141
este sistema tiene un problema: el receptor 'legal'
del mensaje pese a poseer el Knapsack aun tiene que
resolver el problema de la mochila para poder
descifrar el mensaje.
La solución consiste en simplificar el problema de la
mochila utilizando un vector super-incrementante:
Un vector super-incrementante es aquel en el cual el
elemento Ak es mayor a la sumatoria de todos los
elementos con subíndice menor que él.
(1,3,5,11,21,44,87,175,349,701) es super-incrementante.
Con un vector super-incrementante resolver el problema de la mochila
es fácil, para un cierto numero lo que hay que hacer es tomar el
primer elemento del vector menor o igual al numero y poner su bit en
1, luego al número restarle el elemento y con el resultado repetir el
procedimiento hasta que el número se hace cero.
Supongamos que tenemos el numero 734.
Para 734: Como 734 > 701 => el bit numero 10 es 1
734-701 = 33
Para 33: 33 > 21 => el bit 5 es 1
33-21 = 12
Para 12 : 12 > 11 => el bit 4 es 1
12-11 = 1
Para 1 : El bit 1 es 1
Luego 734=(1001100001) = 1+11+21+701
Lo que debemos lograr es identificar cual va a ser la clave privada y
cual va a ser la clave publica, para ello una vez que tenemos un
vector super-incrementante lo que se hace es elegir dos números t y
m forma tal que t y m no tengan factores en común.
Al numero t lo denominamos multiplicador.
Al numero m lo denominamos modulo.
Además debemos encontrar un numero t' que sea el inverso
multiplicativo de t usando aritmética modulo m.
Sea m=1590 Verificar que 1590 y 43 no tienen factores en común
t=43 (43 es primo y 1590 no es divisible por 43)
1590 y 43 son relativamente primos.
Para el inverso de t hacemos 1591/43 = 37 luego t'=37
(37 * 43 = 1591, 1591 mod 1590 = 1)
Ahora lo que hacemos es aplicarle a cada elemento Ai del Knapsack la
función
Ai'= Ai*t mod m
(1,3,5,11,21,44,87,175,349,701)=>(43,129,215,473,903,302,561,1165,69
7,1523)
Para el Knapsack ejemplo anterior la clave publica es (tomando
solo 8 elementos para no hacer tantas cuentas, obviamente cuanto
mayor es el vector mas seguro es el sistema)
P = (43,129,215,473,903,302,561,1165)
Supongamos que queremos encriptar 'Hola‘
'H' = 01001000 = 129 + 903 = 1032
'o' = 01101111 = 129 + 215 + 903 + 302 + 561 + 1165 = 3275
'l' = 01101100 = 129 + 215 + 903 + 302 = 1549
'a' = 01100001 = 129 + 215 + 1165 = 1509
'Hola' = 1032,3275,1549,1509
Si este código es interceptado y sabiendo la clave publica no puede
hacerse nada para desencriptar el mensaje pues la clave publica no es
super-incrementante (aquí reside la gracia del asunto).
La clave privada es t'=37 m=1590
Para desencriptar usamos la clave privada:
1032 * 37 mod 1590 = 24
3275 * 37 mod 1590 = 335
1549 * 37 mod 1590 = 73
1509 * 37 mod 1590 = 183
A continuación se convierte el vector publico en un vector super-
incrementante utilizando la misma transformación.

Contenu connexe

Tendances

Ejercicios detallados del obj 7 mat i (175 176-177
Ejercicios detallados del obj 7 mat i (175 176-177Ejercicios detallados del obj 7 mat i (175 176-177
Ejercicios detallados del obj 7 mat i (175 176-177Jonathan Mejías
 
3.las potencias y la raíz cuadrada libro elio
3.las potencias y la raíz cuadrada libro elio 3.las potencias y la raíz cuadrada libro elio
3.las potencias y la raíz cuadrada libro elio Elio33
 
Documento potenciacion
Documento potenciacionDocumento potenciacion
Documento potenciacionwilberto2015
 
Algoritmos para el_calculo_de_an
Algoritmos para el_calculo_de_anAlgoritmos para el_calculo_de_an
Algoritmos para el_calculo_de_anCarlita Vaca
 
Teoría de exponentes
Teoría de exponentesTeoría de exponentes
Teoría de exponentesMateWeb1
 
Funcion de dominio partido
Funcion de dominio partidoFuncion de dominio partido
Funcion de dominio partidoBedrick12
 
La potenciación
La potenciaciónLa potenciación
La potenciaciónArgiroGE
 
Función de dominio partido- Grupo V
Función de dominio partido- Grupo VFunción de dominio partido- Grupo V
Función de dominio partido- Grupo VYasikaly
 
Potenciación de numeros enteros primer año 2
Potenciación de numeros enteros primer año 2Potenciación de numeros enteros primer año 2
Potenciación de numeros enteros primer año 2valentinaveliz2012
 
Problema Gauss
Problema GaussProblema Gauss
Problema GaussAsuncion
 

Tendances (20)

Ejercicios detallados del obj 7 mat i (175 176-177
Ejercicios detallados del obj 7 mat i (175 176-177Ejercicios detallados del obj 7 mat i (175 176-177
Ejercicios detallados del obj 7 mat i (175 176-177
 
Números naturales
Números naturalesNúmeros naturales
Números naturales
 
Notación científica
Notación científicaNotación científica
Notación científica
 
3.las potencias y la raíz cuadrada libro elio
3.las potencias y la raíz cuadrada libro elio 3.las potencias y la raíz cuadrada libro elio
3.las potencias y la raíz cuadrada libro elio
 
Potencias
PotenciasPotencias
Potencias
 
Exponentes y radicales
Exponentes y radicalesExponentes y radicales
Exponentes y radicales
 
Unidad 2 exponentes_y_radicales
Unidad 2 exponentes_y_radicalesUnidad 2 exponentes_y_radicales
Unidad 2 exponentes_y_radicales
 
Documento potenciacion
Documento potenciacionDocumento potenciacion
Documento potenciacion
 
Iii
IiiIii
Iii
 
Método de Gauss
Método de GaussMétodo de Gauss
Método de Gauss
 
Induccion matematica
Induccion matematicaInduccion matematica
Induccion matematica
 
Algoritmos para el_calculo_de_an
Algoritmos para el_calculo_de_anAlgoritmos para el_calculo_de_an
Algoritmos para el_calculo_de_an
 
Teoría de exponentes
Teoría de exponentesTeoría de exponentes
Teoría de exponentes
 
Sucesiones, inducción y sumatorias
Sucesiones, inducción y sumatoriasSucesiones, inducción y sumatorias
Sucesiones, inducción y sumatorias
 
Leyes de los exponentes
Leyes de los exponentesLeyes de los exponentes
Leyes de los exponentes
 
Funcion de dominio partido
Funcion de dominio partidoFuncion de dominio partido
Funcion de dominio partido
 
La potenciación
La potenciaciónLa potenciación
La potenciación
 
Función de dominio partido- Grupo V
Función de dominio partido- Grupo VFunción de dominio partido- Grupo V
Función de dominio partido- Grupo V
 
Potenciación de numeros enteros primer año 2
Potenciación de numeros enteros primer año 2Potenciación de numeros enteros primer año 2
Potenciación de numeros enteros primer año 2
 
Problema Gauss
Problema GaussProblema Gauss
Problema Gauss
 

Similaire à Encriptacion por knapsacks

El trascendental número de euler 2
El trascendental número de euler 2 El trascendental número de euler 2
El trascendental número de euler 2 Chombas Cordoba
 
Programación Dinámica
Programación DinámicaProgramación Dinámica
Programación DinámicaAngel Carreras
 
Suma de imagenes
Suma de imagenesSuma de imagenes
Suma de imagenesanar26
 
Numeros naturales
Numeros naturalesNumeros naturales
Numeros naturalesOscar Pulla
 
Operaciones básicas
Operaciones básicasOperaciones básicas
Operaciones básicasyolimar26
 
Unidad de aprendizaje operaciones con números naturales I
Unidad de aprendizaje operaciones con números naturales IUnidad de aprendizaje operaciones con números naturales I
Unidad de aprendizaje operaciones con números naturales IMonica Boscan
 
Numeros naturales y enteros
Numeros naturales y enterosNumeros naturales y enteros
Numeros naturales y enterosSualín Rojas
 
academia sabatina de jovenes talentos
academia sabatina de jovenes talentosacademia sabatina de jovenes talentos
academia sabatina de jovenes talentosRolando Vega
 
Tema_1.3_REALES.pdf
Tema_1.3_REALES.pdfTema_1.3_REALES.pdf
Tema_1.3_REALES.pdfManuel Ortiz
 
Conjunto y Numeros Naturales Javivi Calles.pptx
Conjunto y Numeros Naturales Javivi Calles.pptxConjunto y Numeros Naturales Javivi Calles.pptx
Conjunto y Numeros Naturales Javivi Calles.pptxjaviv3
 
bhguhffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
bhguhffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbhguhffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
bhguhffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffLuLopez7
 

Similaire à Encriptacion por knapsacks (20)

Programacion dinamica
Programacion dinamicaProgramacion dinamica
Programacion dinamica
 
El trascendental número de euler 2
El trascendental número de euler 2 El trascendental número de euler 2
El trascendental número de euler 2
 
Programación Dinámica
Programación DinámicaProgramación Dinámica
Programación Dinámica
 
Suma de imagenes
Suma de imagenesSuma de imagenes
Suma de imagenes
 
Trabajo en grupo
Trabajo en grupo Trabajo en grupo
Trabajo en grupo
 
Los numeros naturales 1º año
Los numeros naturales 1º añoLos numeros naturales 1º año
Los numeros naturales 1º año
 
Numeros naturales
Numeros naturalesNumeros naturales
Numeros naturales
 
Operaciones básicas
Operaciones básicasOperaciones básicas
Operaciones básicas
 
Unidad de aprendizaje
Unidad de aprendizajeUnidad de aprendizaje
Unidad de aprendizaje
 
Unidad de aprendizaje nº 1 númros naturales
Unidad de aprendizaje nº 1 númros naturalesUnidad de aprendizaje nº 1 númros naturales
Unidad de aprendizaje nº 1 númros naturales
 
Unidad de aprendizaje operaciones con números naturales I
Unidad de aprendizaje operaciones con números naturales IUnidad de aprendizaje operaciones con números naturales I
Unidad de aprendizaje operaciones con números naturales I
 
Numeros naturales y enteros
Numeros naturales y enterosNumeros naturales y enteros
Numeros naturales y enteros
 
null-1.pdf
null-1.pdfnull-1.pdf
null-1.pdf
 
null-1.pdf
null-1.pdfnull-1.pdf
null-1.pdf
 
academia sabatina de jovenes talentos
academia sabatina de jovenes talentosacademia sabatina de jovenes talentos
academia sabatina de jovenes talentos
 
Tema_1.3_REALES.pdf
Tema_1.3_REALES.pdfTema_1.3_REALES.pdf
Tema_1.3_REALES.pdf
 
criptosistema Rabin, Merkle-Hellman
criptosistema Rabin, Merkle-Hellmancriptosistema Rabin, Merkle-Hellman
criptosistema Rabin, Merkle-Hellman
 
Conjunto y Numeros Naturales Javivi Calles.pptx
Conjunto y Numeros Naturales Javivi Calles.pptxConjunto y Numeros Naturales Javivi Calles.pptx
Conjunto y Numeros Naturales Javivi Calles.pptx
 
Números reales
Números realesNúmeros reales
Números reales
 
bhguhffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
bhguhffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffbhguhffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
bhguhffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
 

Dernier

Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
Herramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfHerramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfMARIAPAULAMAHECHAMOR
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docxAleParedes11
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticosisabeltrejoros
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arteRaquel Martín Contreras
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdfResolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxPryhaSalam
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADauxsoporte
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdfBaker Publishing Company
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFAROJosé Luis Palma
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinavergarakarina022
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleJonathanCovena1
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 

Dernier (20)

Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
Herramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfHerramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdf
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docxGLOSAS  Y PALABRAS ACTO 2 DE ABRIL 2024.docx
GLOSAS Y PALABRAS ACTO 2 DE ABRIL 2024.docx
 
Presentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza MultigradoPresentacion Metodología de Enseñanza Multigrado
Presentacion Metodología de Enseñanza Multigrado
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
texto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticostexto argumentativo, ejemplos y ejercicios prácticos
texto argumentativo, ejemplos y ejercicios prácticos
 
Historia y técnica del collage en el arte
Historia y técnica del collage en el arteHistoria y técnica del collage en el arte
Historia y técnica del collage en el arte
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdfResolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
 
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptxEXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
EXPANSIÓN ECONÓMICA DE OCCIDENTE LEÓN.pptx
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
CALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDADCALENDARIZACION DE MAYO / RESPONSABILIDAD
CALENDARIZACION DE MAYO / RESPONSABILIDAD
 
2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf2024 - Expo Visibles - Visibilidad Lesbica.pdf
2024 - Expo Visibles - Visibilidad Lesbica.pdf
 
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARONARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
NARRACIONES SOBRE LA VIDA DEL GENERAL ELOY ALFARO
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karina
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo Sostenible
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 

Encriptacion por knapsacks

  • 1.
  • 2. El primer ejemplo sobre el cual presentaremos a los sistemas de clave publica esta basado en un problema de ingenio denominado 'el problema de la mochila' Se tiene una mochila con capacidad para "K" kilos. Además se cuenta con una lista de "n" objetos cuyos pesos se conocen y son (A1,A2,A3,...,AN). El problema consiste en seleccionar una cierta cantidad de objetos de la lista de forma tal que la mochila quede completamente llena.
  • 3. Para resolver este problema no se conoce ningún método mejor que el ir probando las distintas combinaciones de objetos y ver si en alguna de ellas la mochila queda completamente llena. Si los pesos de los objetos están en un vector (A1,A2,A3,...,AN) una combinación puede escribirse como un numero binario de N bits en el cual un uno en la posición "i" indica que el elemento "i" debe estar en la mochila, un cero indica lo contrario. Ej.: A=(3,45,6,7,21,12,9,90) C1=(00000001)=90 C2=(10101010)=3+6+21+9=39
  • 4. Empecemos por inventar un sistema de clave privada que utilice ‘ Knapsacks ‘ Dado un mensaje lo pasamos a binario y tomamos bloques de "N" bits de acuerdo al tamaño del Knapsack, sumamos los elementos del Knapsack que corresponden a los bits en 1 y el numero resultante es la codificación del bloque. Ej.: Con bloques de 8 bits y usando el código Ascii si el vector es: (3,45,6,7,21,12,9,90) 'H' = 01001000 = 45 + 21 = 66 'o' = 01101111 = 45 + 6 + 21 + 12 + 9 + 90 = 183 'l' = 01101100 = 45 + 6 + 21 + 12 = 84 'a' = 01100001 = 45 + 6 + 90 = 141 'Hola' = 66,183,84,141
  • 5. este sistema tiene un problema: el receptor 'legal' del mensaje pese a poseer el Knapsack aun tiene que resolver el problema de la mochila para poder descifrar el mensaje. La solución consiste en simplificar el problema de la mochila utilizando un vector super-incrementante: Un vector super-incrementante es aquel en el cual el elemento Ak es mayor a la sumatoria de todos los elementos con subíndice menor que él.
  • 6. (1,3,5,11,21,44,87,175,349,701) es super-incrementante. Con un vector super-incrementante resolver el problema de la mochila es fácil, para un cierto numero lo que hay que hacer es tomar el primer elemento del vector menor o igual al numero y poner su bit en 1, luego al número restarle el elemento y con el resultado repetir el procedimiento hasta que el número se hace cero. Supongamos que tenemos el numero 734. Para 734: Como 734 > 701 => el bit numero 10 es 1 734-701 = 33 Para 33: 33 > 21 => el bit 5 es 1 33-21 = 12 Para 12 : 12 > 11 => el bit 4 es 1 12-11 = 1 Para 1 : El bit 1 es 1 Luego 734=(1001100001) = 1+11+21+701
  • 7. Lo que debemos lograr es identificar cual va a ser la clave privada y cual va a ser la clave publica, para ello una vez que tenemos un vector super-incrementante lo que se hace es elegir dos números t y m forma tal que t y m no tengan factores en común. Al numero t lo denominamos multiplicador. Al numero m lo denominamos modulo. Además debemos encontrar un numero t' que sea el inverso multiplicativo de t usando aritmética modulo m.
  • 8. Sea m=1590 Verificar que 1590 y 43 no tienen factores en común t=43 (43 es primo y 1590 no es divisible por 43) 1590 y 43 son relativamente primos. Para el inverso de t hacemos 1591/43 = 37 luego t'=37 (37 * 43 = 1591, 1591 mod 1590 = 1) Ahora lo que hacemos es aplicarle a cada elemento Ai del Knapsack la función Ai'= Ai*t mod m (1,3,5,11,21,44,87,175,349,701)=>(43,129,215,473,903,302,561,1165,69 7,1523)
  • 9. Para el Knapsack ejemplo anterior la clave publica es (tomando solo 8 elementos para no hacer tantas cuentas, obviamente cuanto mayor es el vector mas seguro es el sistema) P = (43,129,215,473,903,302,561,1165) Supongamos que queremos encriptar 'Hola‘ 'H' = 01001000 = 129 + 903 = 1032 'o' = 01101111 = 129 + 215 + 903 + 302 + 561 + 1165 = 3275 'l' = 01101100 = 129 + 215 + 903 + 302 = 1549 'a' = 01100001 = 129 + 215 + 1165 = 1509 'Hola' = 1032,3275,1549,1509
  • 10. Si este código es interceptado y sabiendo la clave publica no puede hacerse nada para desencriptar el mensaje pues la clave publica no es super-incrementante (aquí reside la gracia del asunto). La clave privada es t'=37 m=1590 Para desencriptar usamos la clave privada: 1032 * 37 mod 1590 = 24 3275 * 37 mod 1590 = 335 1549 * 37 mod 1590 = 73 1509 * 37 mod 1590 = 183 A continuación se convierte el vector publico en un vector super- incrementante utilizando la misma transformación.