|
| 5. El funcionamiento de la criptografía
de llave pública |
|
La criptografía de llave pública se basa en el concepto de un par
de llaves. Cada mitad del par (una llave) puede encriptar
información que sólo la otra parte (la otra llave) podrá
desencriptar. Una parte del par de llaves, la llave privada, sólo es
conocida para el propietario designado; la otra parte, la llave
pública, se publica abiertamente, pero continúa asociada al
propietario. Los pares de llaves tienen una característica única:
los datos encriptados con una llave sólo pueden desencriptarse con
la otra llave del par. En otras palabras, no tiene importancia que
usted use la llave privada o la pública para encriptar un mensaje,
ya que el receptor puede usar la otra llave para desencriptarlo. En
las páginas siguientes verá el poder de esto.
La criptografía de llave pública usa un par de llaves: una
pública y una privada; los mensajes codificados con cualquiera de
las llaves se pueden decodificar con la otra llave.
Uso de un par de llaves para encriptar y desencriptar un
mensaje.
Las llaves se pueden usar de dos maneras diferentes: para
proporcionar confidencialidad al mensaje y para probar la
autenticidad del originador de un mensaje. En el primer caso, el
emisor usa la llave pública del receptor para encriptar un mensaje,
de manera que el mensaje continúe siendo confidencial hasta que sea
decodificado por el receptor con la llave privada. En el segundo
caso, el emisor encripta un mensaje usando la llave privada, una
llave a la cual sólo tiene acceso el emisor.
La llave pública del receptor asegura la confidencialidad; la
llave privada del emisor verifica la identidad del emisor.
Por ejemplo, para crear un mensaje confidencial, una persona
necesitará conocer primero la llave pública de su receptor. Después,
deberá usar la llave pública del receptor para encriptar el mensaje
y enviarlo. Como el mensaje se encriptó con la llave pública del
receptor, sólo alguien con su llave privada (presumiblemente sólo el
receptor) puede desencriptar el mensaje3.
Aunque encriptar un mensaje con una llave pública no difiere
mucho de usar un encriptamiento de llave secreta, los sistemas de
llave pública presentan ciertas ventajas. Por ejemplo, la llave
pública del par de llaves se puede distribuir prontamente (en un
servidor, por ejemplo) sin temor de que esto comprometa el uso de la
llave privada. Por ello, usted no tiene que enviar una copia de su
llave pública a todos sus receptores; ya que ellos la pueden obtener
desde un servidor de llave mantenido por su compañía, o quizás a
través de un proveedor de servicio.
Colocar una llave pública en una red la vuelve fácilmente
accesible, y no se pone en peligro la llave privada
correspondiente.
Otra ventaja de la criptografía con llave pública es que permite
que usted autentifique al originador del mensaje. La idea básica es
esta: ya que usted es la única persona que puede encriptar algo con
su llave privada, todo aquel que use la llave pública de usted para
desencriptar el mensaje puede estar seguro de que el mensaje
proviene de usted. Así, el uso de su llave privada en un documento
electrónico es similar a la firma en un documento de papel. Pero no
olvide que aunque el receptor puede estar seguro de que el mensaje
proviene de usted, no hay forma de garantizar que alguien más lo
haya leído con anterioridad.
Usar una llave privada para criptografiar equivale a firmar un
documento.
Conserve la confidencialidad del mensaje con una llave
pública.
Usar algoritmos criptográficos de llave pública para encriptar
mensajes es computacionalmente lento, así que los criptógrafos han
descubierto una manera para generar con rapidez una representación
corta y única del mensaje, llamada "resumen"4,
que se puede encriptar y después usarse como la firma digital.
Algunos algoritmos criptográficos populares y veloces para
generar resúmenes se conocen como funciones de dispersión
(hash) de un solo sentido. Una función de dispersión
(hash) de un solo sentido no usa una llave; simplemente es
una fórmula para convertir un mensaje de cualquier longitud en una
sola cadena de dígitos, llamada "resumen". Cuando se usa
una función de dispersión (hash) de 16 bits, el texto
procesado con dicha función produciría 16 bits de salida (un mensaje
podría dar como resultado la cadena CBBV235ndsAG3D67, por ejemplo).
Cada mensaje produce un resumen de mensaje al azar. Encripte dicho
resumen con su llave privada y obtendrá una firma digital.
Una función de dispersión (hash) de un solo sentido convierte
cualquier mensaje en una sencilla cadena de dígitos, llamada
"resumen de mensaje". Encriptar un resumen con una
llave privada crea una firma digital.
Por ejemplo, imagine que el emisor, Tim, calcula un resumen para
este mensaje, encripta dicho resumen con su llave privada y envía
esa firma digital junto con un mensaje de texto simple a Ana.
Verificando una firma digital.
Después de que Ana usa la llave pública de Tim para desencriptar
la firma digital, ella tiene una copia del resumen de mensaje que
Tim calculó. Dado que ella pudo desencriptar la firma digital con la
llave pública de Tim, sabe que Tim lo creó, autentificando así al
originador. Ana usa entonces la misma función de dispersión (que se
acordó de antemano) para calcular su propio resumen del mensaje de
texto simple de Tim. Si su valor calculado y el que Tim envió son
iguales, entonces ella puede estar segura de que la firma digital es
auténtica, lo que significa que Tim no sólo envió el mensaje, sino
que el mensaje en sí no ha sido alterado.
Un resumen de mensaje concordante significa que no ha habido
alteración.
El problema con este enfoque es que el cuerpo del mensaje se
envía como texto simple y, por lo tanto, su carácter privado no se
mantiene. Aunque esto complica las cosas después, usted podría
elegir usar un algoritmo simétrico con una llave secreta para
encriptar el texto simple del mensaje.
3 Como cualquier persona con una copia de la
llave pública de usted puede leer un mensaje que se haya encriptado
con la llave privada, los mensajes interceptados podrán
desencriptarse. En las transacciones comerciales, los procedimientos
estándares son para que el comprador encripte mensajes con su llave
privada, mientras los acuses del comerciante usarían la llave
privada de este último. Esto significa que todo aquel que conozca la
llave pública del comerciante, puede leer los mensajes del
comprador. Se deben tomar otras acciones para asegurar el carácter
privado de la información importante que envíe el comerciante. 4 A pesar de su nombre, un resumen de mensaje
no es una condensación del contenido del mensaje.
|