Algoritmo del plano más cercano de cifrado de celosía: cómo resolver el problema del CVP del vector más cercano (1)

Tabla de contenido

1. Introducción al algoritmo del plano más cercano

2. Un algoritmo de redondeo simple para resolver el problema CVP

3. Pasos del algoritmo del plano más cercano

4. Comprensión gráfica del algoritmo del plano más cercano


1. Introducción al algoritmo del plano más cercano

En 1986, L.Babai propuso el algoritmo del plano más cercano para resolver el problema CVP, utilizando n para representar el rango de la red, la aproximación de salida del algoritmo es la siguiente:

2(\frac{2}{\sqrt{3}})^n

CVP: Problema del vector más cercano, nombre completo Problema del vector más cercano

Las seis variantes del problema CVP son las siguientes:

En ese momento\gamma=1 , las últimas tres preguntas eran las mismas que las tres primeras.

Si se resuelve el problema de cálculo CVP_\gamma, dado que los problemas de cálculo, optimización y Gap son igualmente difíciles, entonces los problemas restantes de optimización y Gap se pueden resolver. Recientemente, el algoritmo planar puede resolver el problema de calcular CVP, y en este momento \gamma=2(\frac{2}{\sqrt{3}})^n, para simplificar el pensamiento del análisis, solo se analiza el seguimiento \gamma=2^{\frac{n}{2}}, y el valor aproximado deseado también se puede lograr modificando los parámetros relacionados. al algoritmo.

2. Un algoritmo de redondeo simple para resolver el problema CVP

El algoritmo de redondeo simple consiste en redondear directamente todos los coeficientes de un vector determinado (se puede redondear hacia arriba o hacia abajo), y los puntos de la cuadrícula obtenidos por el algoritmo aproximado tienen mucho que ver con la selección de la base de la cuadrícula, como se muestra en la siguiente figura:

3. Pasos del algoritmo del plano más cercano

El algoritmo consta principalmente de dos pasos. El primer paso es generar la base reducida LLL para la red de entrada; en este momento, para este vector de base reducida, se forma una combinación lineal entera para garantizar que esté lo suficientemente cerca del vector t dado. Este paso es muy similar a la operación de reducción del bucle interno del algoritmo LLL.

Los pasos del algoritmo son los siguientes:

Obviamente, se ha demostrado que el algoritmo LLL y ​​el algoritmo del paso de reducción pertenecen al algoritmo de tiempo polinómico, por lo que se puede obtener que la relación entre el algoritmo del plano más cercano y la escala de entrada n también es una relación de tiempo polinomial. La siguiente discusión y análisis incluirá redes de rango completo y redes de rango no completo.

Dada una base ortonormal unitaria, como sigue:

\frac{\tilde b_1}{||b_1||},\cdots,\frac{\tilde b_n}{||b_n||}

Para redes que no son de rango completo, es necesario sumar mn filas de vectores de matriz cero, por lo que la matriz B correspondiente y la combinación formada por t son las siguientes:

El algoritmo del plano más cercano busca una combinación entera de los vectores columna de la matriz B para garantizar que al restar del vector t, el rango de la diferencia de resta de cada dimensión sea el siguiente: 

[-\frac{1}{2}||\tilde b_i||,\,\frac{1}{2}||\tilde b_i||]

El algoritmo comienza desde la enésima columna y calcula de forma continua y recursiva. Si se trata de una red que no es de rango completo, entonces las mn dimensiones restantes son espacios perpendiculares a la red original.

4. Comprensión gráfica del algoritmo del plano más cercano

Dado un ejemplo tridimensional, redúzcalo a bidimensional mediante el algoritmo del plano más cercano, como se muestra en la siguiente figura:

La idea central del algoritmo se puede dividir en cuatro pasos: 

  1. t se proyecta sobre intervalo(b_1,\cdots,b_n)el plano correspondiente a la cuadrícula para formar un punto s;
  2. Encuentre el entero c correspondiente para que el hiperplano c\tilde b_n+span(b_1,\cdots,b_n)esté lo más cerca posible del punto s;
  3.  Orden s'=s-cb_n, para encontrar iterativamente s' y\,L(b_1,\cdots,b_{n-1})la relación entre, suponiendo que la respuesta obtenida en este momento es X';
  4. La respuesta final devuelta es x=x'+cb_n;

El propósito del primer paso de la operación del proceso de proyección es convertir la distancia más corta desde el punto de la cuadrícula a t en la distancia más corta a s. Este paso es muy necesario cuando la cuadrícula no tiene el rango completo. El siguiente paso es seleccionar el hiperplano más cercano cada vez y luego moverse dimensión por dimensión.

Supongo que te gusta

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