Muestra las diferencias entre dos versiones de la página.
| Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previa | ||
| pan:cifrado_homomorfico_v2 [2025/12/25 17:04] – thejuanvisu | pan:cifrado_homomorfico_v2 [2025/12/31 16:36] (actual) – thejuanvisu | ||
|---|---|---|---|
| Línea 54: | Línea 54: | ||
| {{drawio> | {{drawio> | ||
| + | ===== Sumas sobre cifrado Homomórfico ===== | ||
| + | |||
| + | {{drawio> | ||
| + | |||
| + | ===== Multiplicación de cifrado homomórfico contra una pequeña constante ===== | ||
| + | |||
| + | {{drawio> | ||
| + | |||
| + | **NOTA**: Si el valor de C es muy grande puede descuadrarse todo al multiplicarse el error. | ||
| + | |||
| + | ===== Descomposición gadget ===== | ||
| + | |||
| + | La descomposición gadget consiste en tomar un número grande y descomponerlo en bloques. Esto se usa en las multiplicaciones con cifrado homomórfico para evitar que se descuadren los valores. | ||
| + | {{drawio> | ||
| + | |||
| + | La descomposición gadget permite calcular varios factores de la constante C. Se tienen en cuenta los siguientes datos: | ||
| + | * C: Constante a descomponer | ||
| + | * B: En cuantos trozos se va a descomponer, | ||
| + | * P: Valor de la potencia de 2 que se va a utilizar para realizar las divisiones. | ||
| + | {{drawio> | ||
| + | |||
| + | ==== Descomposición Gadget en el Cifrado Homomórfico ==== | ||
| + | |||
| + | Gracias a la descomposición gadget podemos descomponer una multiplicación homomórfica por una constante muy grande de la siguiente forma para $(a*c, b*c)$: | ||
| + | * $(a*c_0, b*c_0)$ | ||
| + | * $(a*c_1, b*c_1)$ | ||
| + | * $(a*c_2, b*c_2)$ | ||
| + | Lo que reduce el error de forma considerable | ||
| + | <WRAP box> | ||
| + | $C = C_2*2^{P*2} + C_1*2^{P*1} + C_0*2^{P*0}$ | ||
| + | </ | ||
| + | Para ello, se crean varios mensajes cifrados: | ||
| + | {{drawio> | ||
| + | |||
| + | {{drawio> | ||