next up previous contents
Siguiente: Encriptamiento por bloques Un nivel arriba: Introducción a criptografía y Anterior: Algo que no es

Características criptográficas

Un buen sistema criptográfico ha de tener varias características:

Un mal sistema criptográfico se caracteriza porque: Un sistema criptográfico típico de llave secreta consta de los objetos siguientes

El sistema es seguro si a pesar de conocer E(k,m), desconociendo k no se puede calcular m.

 

Ejemplo. Rellenado de una sola vez (one-time pad) En $Z\!\!\!Z_2$ la operación suma $\oplus$, u ``O''-excluyente, es de orden 2: $x\oplus x=0$, y $\forall n\in I\!\!N$, la misma operación componente a componente cumple lo mismo: $\forall \mbox{\bf x}\in Z\!\!\!Z_2^n:\ \mbox{\bf x}\oplus \mbox{\bf x}=\mbox{\bf0}$. Así pues, se puede tomar ${\cal M}={\cal L}={\cal C}=Z\!\!\!Z_2^n$ y

\begin{displaymath}\begin{array}{c@{\ \ \ \ \ }c}
\begin{array}{rcl}
E:{\cal L...
...bf m}=\mbox{\bf k}\oplus \mbox{\bf c}
\end{array}
\end{array}\end{displaymath}

el sistema es seguro pues conocido $\mbox{\bf c}$ si no se conoce $\mbox{\bf k}$ no es recuperable $\mbox{\bf m}$ (de hecho, es posible generar cualquier $\mbox{\bf m}$ pues siempre existe $\mbox{\bf k}=\mbox{\bf m}\oplus \mbox{\bf c}$ tal que $\mbox{\bf m}=D(\mbox{\bf k}, \mbox{\bf c})$.


Ejemplo. Transformaciones lineales no-singulares Sea $\mbox{\bf A}\in\left(Z\!\!\!Z_2\right)^{n\times n}$ una matriz tal que $\mbox{\rm Det }\mbox{\bf A}\not= 0$ y sea $\mbox{\bf b}\in Z\!\!\!Z_2^n$. Entonces la pareja $(\mbox{\bf A},\mbox{\bf b})$, que contiene n2+n ``entradas'' en $Z\!\!\!Z_2$, determina una transformación afín

\begin{displaymath}T_{(\mbox{\scriptsize\bf A},\mbox{\scriptsize\bf b})}:\mbox{\bf m}\mapsto \mbox{\bf A}\mbox{\bf m}+\mbox{\bf b}\end{displaymath}

con inversa $T_{(\mbox{\scriptsize\bf A},\mbox{\scriptsize\bf b})}^{-1}=T_{(\mbox{\scriptsize\bf A}^{-1},\mbox{\scriptsize\bf0})}\circ t_{-\mbox{\scriptsize\bf b}}$, donde $t_{-\mbox{\scriptsize\bf b}}$ es la translación $\mbox{\bf x}\mapsto \mbox{\bf x}-\mbox{\bf b}$.


Ejemplo. Permutaciones-sustituciones de Shannon

Sustituciones. Para $n\in I\!\!N$, sea $Z\!\!\!Z_2^n$ el espacio de cadenas binarias de longitud n. Sea $\mbox{\bf k}:Z\!\!\!Z_2^n \rightarrow Z\!\!\!Z_2^n$ una permutación. A cada mensaje $\mbox{\bf m}=\left[m_i\right]_{i\leq l}\in\left(Z\!\!\!Z_2^n\right)^*$ se le asocia el código $\mbox{\bf c}=\left[\mbox{\bf k}(m_i)\right]_{i\leq l}\in\left(Z\!\!\!Z_2^n\right)^*$. En este caso se tiene un espacio de llaves de tamaño $\left(2^n\right)!$.

Permutaciones. Sea $\mbox{\bf k}:[\![1,n]\!] \rightarrow [\![1,n]\!]$ una permutación. A cada mensaje, dividido en bloques, $\mbox{\bf m}=\left[m_i=\left[a_{ij}\right]_{j\leq n}\right]_{i\leq l}\in\left(Z\!\!\!Z_2^n\right)^*$ se le asocia el código $\mbox{\bf c}=\left[\left[a_{i\mbox{\scriptsize\bf k}(j)}\right]_{j\leq n}\right]_{i\leq l}\in\left(Z\!\!\!Z_2^n\right)^*$. En este caso se tiene un espacio de llaves de tamaño n!.


next up previous contents
Siguiente: Encriptamiento por bloques Un nivel arriba: Introducción a criptografía y Anterior: Algo que no es
Guillermo Morales-Luna
2000-10-29