Un certificado de firma digital o electrónica es un archivo que funciona como una identificación para el mundo digital.
Para entender este artículo es recomendable leer primero nuestro artículo sobre criptografía asimétrica o tener nociones básicas de cómo funciona la criptografía de llave pública y privada.
¿Qué ventajas confiere la ley a la firma electrónica avanzada? Te platicamos en el webinar Entendiendo la Firma Electrónica Avanzada.
En un esquema de firma o identidad digital basado en criptografía de llave pública y privada —también conocida como criptografía asimétrica— generas un par de llaves, una pública y una privada, y entregas una copia de la llave pública a todas las personas con las que deseas tener interacciones digitales. Al tener una copia de tu llave pública estas personas pueden hacer dos cosas:
- Recibir mensajes tuyos que “cerraste” con tu llave privada y abrirlos con la llave pública que les diste. De esta manera las personas que tengan una copia de tu llave pública pueden estar seguras de que tú eres el autor del mensaje.
- Terceros pueden enviarte mensajes “cerrándolos” con tu llave pública para asegurarse que únicamente tú, con tu llave privada, podrás abrirlos.
Para que cualquiera de estos dos escenarios funcionen es necesario que compartas una copia de tu llave pública a las personas con las que vas a tratar. Suena fácil pero es un problema complejo. Si se trata de personas cercanas a ti como tus compañeros de trabajo, familiares o amigos, la manera más segura de hacer esta distribución es en persona, entregándoles una USB que contenga tu archivo de llave pública.
Pero, ¿por qué en persona?, ¿por qué no se las mandas por correo o por el sistema de mensajería de Facebook?
Podrías hacerlo pero, ¿cómo estarían seguros tus familiares o amigos de que fuiste tú quien les envió la llave pública y no un impostor que obtuvo acceso a tu cuenta de correo o de Facebook?
Evidentemente hacer estas entregas en persona funciona con unas cuantas personas pero no a escala. ¿Qué pasa si quiero que cualquiera —tenga una relación conmigo o no— pueda obtener una copia de mi llave pública para que podamos intercambiar información de manera segura?
Es aquí donde entran los certificados.
Un certificado es un archivo digital —generalmente de tipo .cer— que contiene mis datos identificatorios (nombre, CURP, RFC, etc.) junto con mi llave pública. Quien tenga acceso a este certificado puede asumir que contiene mi llave pública y, por lo tanto, puede intercambiar mensajes conmigo de manera confiable y segura.
Cualquiera con los conocimientos técnicos necesarios puede generar un certificado, sin embargo lo más común es que la gente sólo acepte certificados emitidos por entes autorizados que generalmente son organismos gubernamentales o privados autorizados por el gobierno.
¿Cómo se relaciona el certificado digital a la firma electrónica?
La firma electrónica cae bajo el escenario 1) descrito al inicio de este artículo. Es el escenario donde envías un mensaje que cerraste con tu llave privada y los demás pueden abrirlo con tu llave pública asegurándose así que el mensaje es de tu autoría.
En una firma electrónica generas un mensaje de aceptación de un documento o contrato el cual cierras con tu llave privada y por lo tanto cualquiera con tu llave pública puede corroborar que ese mensaje o firma fue generada por ti.
¿Cómo se genera un certificado?
Usemos como ejemplo el caso del SAT y la FIEL/e.firma. El SAT está autorizado por el Banco de México para emitir certificados. Aunque también existen entes privados autorizados por la Secretaría de Economía para emitir certificados, el SAT es por mucho el principal emisor de estos.
Para este ejemplo inventaremos una persona ficticia. El solicitante será Roberto Gómez Andrade.
Los pasos para que Roberto tramite un certificado de FIEL o e.firma emitido por el SAT son los siguientes:
- Roberto genera un par de llaves, una pública y una privada, en su computadora usando un programa que descarga de la página del SAT.
- Roberto guarda la llave pública en un medio electrónico como una memoria USB.
- Roberto se presenta en un módulo del SAT en donde un funcionario de dicha institución verifica sus datos. Es decir, corrobora que efectivamente se trate de Roberto Gómez Andrade y no de un impostor. Se usan datos biométricos para validar su identidad.
- Una vez validada su identidad, el funcionario genera un certificado — que es un archivo digital— con sus datos identificatorios (nombre, CURP, RFC, etc.), le pide su llave pública y la inserta en este certificado que acaba de crear.
- Finalmente, este certificado recién creado con los datos identificatorios de Roberto que incluye su llave pública se firma o “cierra” con la llave privada del propio SAT.
Este último paso es sumamente importante. ¿Por qué?
Imaginemos que los certificados no se firmaran por la institución que los emite. ¿Qué me impediría a mi generar un certificado a nombre de Roberto Gómez Andrade y hacerme pasar por él usando este certificado? Nada, lo podría hacer y si fuera así de fácil no habría manera de confiar en la información identificatoria contenida en los certificados.
¿Qué sucede cuando el SAT firma o “cierra” el certificado con la llave pública de Roberto y sus datos identificatorios?
Dado a que el certificado se “cerró” o firmó con la llave privada del SAT, este únicamente puede “abrirse” usando la llave pública del SAT. En otras palabras, cualquiera con acceso a la llave pública de esta institución puede verificar que el mensaje en efecto proviene de ella y, por lo tanto, se puede confiar en que la llave pública contenida en el certificado efectivamente corresponde a Roberto.
Las llaves públicas del SAT, contenidas también en certificados, las puedes bajar de la página del Banco de México. Y si tienes los conocimientos técnicos suficientes las puedes usar para validar si un certificado que te presenten fue efectivamente emitido por el SAT.
El hecho de que el SAT firme cada certificado vuelve imposible que un tercero genere un certificado con su llave pública pero con los datos de otra persona, por ejemplo de Roberto. El tercero podría firmar el certificado con una llave privada de su propiedad pero sería fácil darse cuenta que el certificado no fue emitido por el SAT.
Una vez que cuentes con este certificado digital emitido por el SAT, ahora sí puedes compartir tu llave pública —contenida en el certificado— de manera segura con quien desees por el medio que gustes.
Inclusive, el SAT hace públicos todos los certificados de todas las personas que han tramitado su FIEL o e.firma para que cualquiera pueda descargarlos y entablar una comunicación segura con el dueño del certificado descargado.
Concluyendo
Para evitar entregar una llave pública a cada persona con la que quieres entablar comunicación segura —por ejemplo enviar una firma electrónica tuya que exprese consentimiento de un contrato en formato electrónico—, puedes tramitar un certificado en el SAT el cual goza de ventajas legales al ser usado para firmar electrónicamente. Este certificado contiene tu llave pública y tus datos identificatorios. Además, se firma con la llave privada del SAT permitiendo que cualquiera corrobore que se trata de un certificado legítimo emitido por dicha institución.
En Mifiel validamos que los certificados que se utilizan al momento de firmar correspondan a certificados que fueron emitidos por el SAT de tal manera que tú no tengas que preocuparte de hacer esta validación y garantizando el no repudio de las firmas.