Creación dunha Infraestructura de chave pública (PKI)
Introducción
Tradicionalmente a seguridade se garantizaba co segredo. O habitual era o uso dunha chave segreda que únicamente coñecían as partes involucradas na comunicación (chave compartida, ou shared key) que se utilizaba para cifrar e descifrar a información (cifrado simétrico). Hoxe en día, cos PIN e as passwords utilizamos tamén unha chave compartida entre nos e o equipo ou servizo ao que accedemos para obter os permisos necesarios. Estas chaves compartidas precisan de completa confianza entre as partes que se comunican, xa que no caso de que a chave quede exposta por calqueira dos dous lados se perdería completamente a seguridade na comunicación.
Hoxe en día, existen alternativas, como as baseadas nas infraestructuras de chave pública ou PKI (Public Key Infraestructure). PKI utiliza criptografía asimétrica de chave pública; con este sistema, as partes involucradas na comunicación necesitan unha parella de chaves de xeito que a información cifrada con unha das chaves únicamente poda ser descifrada pola outra. A chave que se utiliza para cifrar non serve para descifrar. Unha das chaves é para uso único do seu propietario e é mantida en segredo (chave privada, ou Private Key), e a outra se distribúe a todo o mundo que queira manter co usuario unha comunicación confidencial (chave pública ou Public Key).
Deste xeito, si un usuario cifra un documento ou unha parte de él (normalmente un hash obtido a partir do contido do documento) coa chave privada (firma dixital) , os receptores do mesmo poden estar seguros de quen é remitente, xa que únicamente a chave pública do mesmo é capaz de descifrar o documento. Si por outra parte, un usuario cifra un documento coa chave pública, únicamente o propietario da chave privada poderá acceder á información (cifrado). A PKI nos proporciona a posibilidade de firma dixital e de cifrado de información.
A principal debilidade deste sistema atópase na distribución das chaves públicas. Si un usuario malicioso distribúe unha chave pública atribuíndoa a un terceiro (por exemplo, un banco), o resto dos usuarios poden chegar a pensar que están realizando unha comunicación segura co banco, cando en realidade a información está sendo decodificada polo falsificador. Para evitar esto, se utilizan os certificados.
As autoridades de certificación firman con varios niveis de seguridade (fortaleza a hora de comprobar a identidade real do autor da solicitude do certificado), que van de o 1 (menos comprobacións) ao 3 (comprobacións máis exhaustivas). E posible conseguir firmas de certificados de nivel 1 por autoridades de certificación recoñecidas como www.startssl.com de modo gratuito. Nun último nivel, depende do propio usuario aceptar ou rexeitar o uso dun certificado a partir da reputación do firmante do mesmo.
E posible tamén que unha autoridade de certificación (CA Raíz) delegue en outras autoridades subordinadas o firmado de algúns tipos de certificados.
As compoñentes máis habituais dunha PKI son: A autoridade de certificación (CA): É a encargada de emitir e revocar certificados, dando lexitimidade á relación dunha chave pública coa identidade real dun usuario ou servizo. A fortaleza desa relación parte da confianza que o usuario teña na autoridade certificadora.
A autoridade de rexistro (RA): Depende da autoridade de certificación e é a responsable das comprobacións necesarias para verificar a relación entre a chave pública dun certificado e a identidade dos seus titulares.
Os repositorios: Son estructuras para almacenar toda a información realtiva a unha PKI. Os dous repositorios máis importantes son o repositorio de certificados e o repositorio de listas de revocación.
La autoridad de registro (RA, del inglés, Registration Authority): es la responsable de verificar el enlace entre los certificados, concretamente, entre la clave pública del certificado y la identidad de sus titulares
Los repositorios: son las estructuras encargadas de almacenar la información relativa a la PKI. Los dos repositorios más importantes son el repositorio de certificados y el repositorio de listas de revocación de certificados. En una lista de revocación de certificados (CRL, del inglés, Certificate Revocation List) se incluyen todos aquellos certificados que por algún motivo han dejado de ser válidos antes de la fecha establecida dentro del mismo certificado. El protocolo OCSP (Online Certificate Status Protocol) permite comprobar la validez de los certificados de forma online, obteniendo una información más adecuada y reciente que la de una CRL.
Los usuarios y entidades finalesson aquellos que poseen un par de claves (pública y privada) y un certificado asociado a su clave pública. Este certificado electrónico es un conjunto de datos que permiten la identificación del titular del certificado, intercambiar información con otras personas y entidades de manera segura así como firmar electrónicamente los datos que se envían de tal forma que se pueda comprobar su integridad y procedencia.
Un certificado digital, para cumplir el estándar X.509 , que es el más utilizado en este tipo de infraestructura, debe contener la siguiente información:
< >el número de serie del certificadonombre, dirección y domicilio del suscriptoridentificación del suscriptor nombrado en el certificadoel nombre, la dirección y el lugar donde realiza actividades la entidad de certificaciónfecha de emisión y expiración del certificadola clave pública del usuariola metodología para verificar la firma digital del suscriptor impuesta en el mensaje de datosfirma realizada con la autoridad certificadoraVersiónVersión del formato.Número de serieNúmero de serie calculado por la CA emisora.Parámetros del algoritmoIdentificador del algoritmo de firma.CAemisoraNombre de la CA emisora:
identificación del suscriptor nombrado en el certificado
nombre, dirección y lugar donde realiza actividades la entidad de certificación
Fecha de emisiónPeriodo de validez.Fecha de expiraciónPeriodo de validez.AsuntoDatos del usuario del certificado: nombre, dirección y domicilio del suscriptor.Parámetros del algoritmoInformación de la clave pública del usuario: metodología para verificar la firma digital del suscriptor impuesta en el mensaje de datos.Clave públicaInformación de la clave pública del usuario.FirmaFirma de la CA de los campos anteriores.
Instalación e Configuración
Crearemos unha autoridade de certificación que nos permitirá expedir certificados dixitais para os distintos servizos ofrecidos pola rede, como a Web ou o Correo.