Algoritmo LLL de cifrado de celosía: cómo resolver el problema SVP del vector más corto (3) (Fin)

Tabla de contenido

1. La operación de cada proceso de base ortogonal es tiempo polinómico.

2. Las operaciones sobre la base reticular original son de tiempo polinómico.

3. El tiempo total de ejecución del algoritmo.

4. Preguntas abiertas


1. La operación de cada proceso de base ortogonal es tiempo polinómico.

Al calcular los coeficientes correspondientes a la base ortogonal, según el teorema de Cramer, la fórmula de cálculo de los coeficientes se puede obtener de la siguiente manera:

 Este resultado demuestra a_jque es un número racional, el denominador es (es \Lambda_{i-1})^2, este resultado se utiliza para calcular la base ortogonal, de la siguiente manera:

\tilde b_i=b_i+\sum_{j=1}^{i-1}a_jb_j

Esto muestra que las siguientes dos expresiones deben estar en forma de número entero:

D_{B,i}^2\tilde b_i,\quad D_B^2\tilde b_i

Obviamente es fácil obtener el límite inferior de la base ortonormal:

||\tilde b_j||\geq \frac{1}{D_{B,j}^2}

A partir de esto, es fácil obtener el límite superior del cálculo de la base ortogonal de la siguiente manera:

2. Las operaciones sobre la base reticular original son de tiempo polinómico.

Esta parte principalmente quiere demostrar que la longitud de la base de la cuadrícula original no cambiará mucho durante la iteración de reducción. 

Los vectores primordiales que aparecen en cada paso bise pueden representar mediante M bits polinomiales relacionados. La razón se puede ver en la siguiente desigualdad:

El primer signo de igualdad en la fórmula anterior se puede obtener basándose en el hecho de que son perpendiculares entre sí, y el primer signo de desigualdad se puede obtener \tilde b_1,\cdots,\tilde b_nbasándose en el límite superior de la base ortogonal discutida anteriormente y la base reducida LLL .|\mu_{i,j}|\leq \frac{1}{2}

Este resultado muestra que la longitud del vector de base reticular original tiene un límite superior \sqrtnD_B^2, expresado como un bit de tiempo polinomial iniciar sesión(\sqrtnD_B^2). Hasta ahora se puede demostrar que la base reticular original bise puede expresar como una relación polinómica con respecto a M.

A continuación, debemos demostrar que la longitud de no cambiará demasiado al realizar iteraciones de reducción bi. Considerando el coeficiente del bucle interno de la operación de reducción, podemos obtener:

El primer signo de desigualdad en la fórmula anterior sigue la definición de redondeo y la desigualdad de Cauchy-Schwartz, y el segundo signo de desigualdad sigue el problema del límite inferior de la base ortogonal. 

Entonces se puede obtener la siguiente desigualdad:

El primer signo de desigualdad sigue el teorema de la "desigualdad del triángulo", el segundo signo de desigualdad se basa en |c_{ij}|la desigualdad satisfecha, el tercer signo de desigualdad ||b_j||sustituye el límite superior de la longitud del vector;

El teorema de desigualdad del triángulo se puede obtener mediante las siguientes relaciones vectoriales:

|\overrightarrow m-\overrightarrow n|\leq |\overrightarrow m|+|\overrightarrow n|

Este teorema se puede entender dibujando un triángulo, donde el signo igual se obtiene cuando los dos vectores van en direcciones opuestas.

Finalmente, la desigualdad establece que después de n iteraciones, bila longitud del vector crece la mayoría de (4nD_B)^{4n}las veces. Aparentemente, el resultado también es un bit de tiempo polinómico poli(M) representable después de realizar una operación logarítmica.

3. El tiempo total de ejecución del algoritmo.

Al demostrar el corolario anterior, sólo hay un lugar donde se utiliza la siguiente desigualdad:

|\mu_{i,j}|\leq\frac{1}{2},\quad j<i

En otros lugares, se utilizan las siguientes desigualdades para demostrar claramente los teoremas relevantes:

|\mu_{i+1,i}|\leq \frac{1}{2}

En realidad, esto muestra que la complejidad del tiempo se puede optimizar manipulando únicamente la relación entre dos vectores adyacentes. En el algoritmo de optimización de esta idea, el número de iteraciones aún debe ser tiempo polinómico, pero no se sabe si el proceso de operación de reducción es un algoritmo de tiempo polinómico.

Hasta ahora, se puede concluir que, de hecho, existe una relación de algoritmo de tiempo polinómico entre el algoritmo LLL y ​​la escala de entrada, y este algoritmo es un algoritmo eficaz.

4. Preguntas abiertas

Históricamente, Gama y Ngujen han realizado muchos experimentos utilizando celosías típicas (este experimento se publicó en este artículo "N. Gama y PQ Nguyen. Predicción de la reducción de la celosía. En EUROCRYPT, páginas 31 a 51, 2008") y descubrieron que el algoritmo LLL Finalmente, los resultados obtenidos fueron mejores que las predicciones del peor de los casos. El resultado de salida tiene una relación exponencial con la dimensión, pero el número base será (\delta-1/4)^{-1/2}mucho menor que (este número se puede obtener mediante el algoritmo LLL). En cuanto a por qué, vale la pena investigar más a fondo.

Z^nTambién vale la pena explorar cómo aplicar el algoritmo LLL a redes especiales (como rotadores de redes enteras, redes ideales).

Supongo que te gusta

Origin blog.csdn.net/forest_LL/article/details/125108376
Recomendado
Clasificación