Firma Digital y Certificados Digitales

Tenemos ahora como propósito tratar de explicar y discutir un poco el concepto de firma digital, que nos llevara al de certificado digital.

Primero consideremos que existe la necesidad de comunicación entre dos entes, por ejemplo, dos personas que están en dos países diferentes, por lo tanto, una de las mejores formas de comunicación es por Internet. Uno de los problemas más sentidos es ¿cómo saber que efectivamente la persona con quien me estoy comunicando es precisamente la que dice ser? Este problema lo llamaremos el problema de verificación de Identidad o la autenticación.

Veamos como se ha resuelto este problema en la práctica. Por ejemplo, si dos personas se ven en la calle, y éstas ya se conocen anteriormente, simplemente se saludan con sus nombres, esto es cada una de ellas verifica la identidad de la otra visualmente y aceptan que es la persona, que ya conocen. La práctica dice que es muy improbable que haya equivocación, salvo casos muy raros, cómo que haya dos personas muy parecidas, que tenga la misma apariencia, en fin, casos que en general no ocurren. Ahora si las dos personas se conocen, pero no se ven, por ejemplo, una está del lado de una puerta y la otra persona del otro lado, ¿cómo pueden reconocerse? Podría una de ellas preguntar por el nombre de otra y reconocer su voz, quizá preguntarle por algo de su familia que sólo ellos conocen, una vez que estos quedan satisfechos por las respuestas aceptan que la identidad de la otra persona es quien dice ser.



Un caso más complicado es cuando dos personas tienen que validar su identidad, pero no se conocen anteriormente. Por ejemplo si una persona va a recoger un boleto de avión a una agencia de viajes y tiene que acreditar su identidad, digamos que el boleto esta a nombre de Axel Valdes, el empleado de la agencia de viajes acepta la identidad de quien dice ser Axel Valdes si cumple ciertos requisitos, por ejemplo si le muestra una identificación oficialmente válida (el pasaporte para casi todo el mundo, el permiso o licencia de manejo, carnet de identidad etc.), el empleado compara la foto de la identificación con la apariencia del portador y decide si acepta que quien es portador es realmente Axel Valdes si la foto es parecida al portador.

Los anteriores ejemplos son muy frecuentes en la vida diaria, de esa manera se pueden aceptar o rechazar la identidad de una persona. Este proceso es también requerido en otros casos, vale decir, en una escuela al hacer un examen, en el aeropuerto al documentar el viaje, al solicitar un tramite oficial, al cobrar un cheque, al firmar un contrato, en fin.

Existe otra circunstancia donde es necesario verificar la identidad, en éste, casi en general es necesario quedarse con un comprobante de tal verificación, es el caso, sí quiero cobrar un cheque, el cajero del banco generalmente pide la identificación oficial y posteriormente una vez comprobada la identidad visual, pide que este cheque este “firmado”. Este proceso entendido por todos ha sido una forma tradicional de tener un comprobante legalmente aceptado para comprobar a posterior que yo efectúe esa transacción.

La firma tradicional o de cualquier otro nombre que se le conozca tiene varias características, la principal de ellas es que es aceptada legalmente, esto quiere decir que si alguna persona firmó un documento adquiere tanto los derechos como las obligaciones que de él deriven, y si estas obligaciones no son acatadas, el portador del documento tiene el derecho de reclamación mediante un litigio. La autoridad competente acepta las responsabilidades adquiridas con sólo calificar a la firma como válida.

Como en las situaciones donde es necesario verificar la identidad son análogas al último escenario. Nos dedicaremos a estudiar a la “firma” como elemento que sirve para demostrar la identidad.

Podemos resumir que existen dos procedimientos importantes, el primero el proceso de firma, que es el acto cuando una persona “firma” manualmente un documento. Y el proceso de verificación de la firma, que es el acto que determina si una firma es válida o no.

Por otro lado, es importante hacer notar que la firma comprueba la identidad de una persona, de tal modo que así se sabe quién es la persona quien firmó, y ésta persona no puede negar las responsabilidades que adquiere en un documento firmado.

Ahora describamos un poco más los puntos anteriormente mencionados.

1) Proceso de Firma: este proceso es muy simple y consiste sólo en tomar un bolígrafo y estampar, dibujar o escribir garabatos en un papel. En general este garabato debe ser el mismo y es elegido a gusto de la persona. Se usa como una marca personal. Es importante mencionar que por un lado lo que identifica a la persona quien firma (quien hace el garabato) es la forma misma de la firma, pero también características de escritura, como la velocidad de escritura, la presión que se aplica al bolígrafo, la inclinación de la escritura, etc.
2) Proceso de verificación: existen en general dos métodos de verificación de la firma, uno es el más usado y simple, que es el visual, esté método lo aplica cualquier cajero al pagar un cheque, o al efectuar un pago con tarjeta de crédito. En muchos casos la firma es rechazada por no pasar este método, sin embargo, legalmente no es suficiente el método visual. El método legalmente definitivo es el peritaje de la firma en laboratorio, que consiste en verificar a la firma independientemente de la forma, tomando en cuenta otras características como la presión de escritura, la velocidad de escritura, la inclinación de escritura, las características particulares de alguna letra etc. El conjunto de estas propiedades es propio de cada país y sus leyes. Recalcamos que el resultado es tomado como definitivo, legalmente.
3) Por otra parte, hacemos notar que con la firma queda resuelto legalmente el problema de la autenticidad o el de comprobar la identidad de una persona.
4) Y de la misma manera el problema que podría aparecer sí una persona rechaza ser el autor de una firma es también resuelto con los métodos anteriores, al menos legalmente.
5) Es importante hacer notar que la firma frecuentemente se encuentra asentada en un documento de identidad oficialmente válido, como el pasaporte, la credencial de identidad, el permiso de conducir un automóvil, y otros.

Cambiando ya al tema tecnológico y antes de continuar es bueno mencionar algunos conceptos necesarios para explicar lo que sigue. Particularmente sobre la criptografía. La criptografía como ciencia, estudia los problemas básicos de la seguridad en la transmisión de la información por un canal inseguro. La criptografía se divide en criptografía simétrica y criptografía asimétrica. La criptografía simétrica resuelve el problema de la confidencialidad y usa algoritmos como TDES y AES para transmitir información cifrada, y que solo con una única clave simétrica puede leer el contenido de la información. Esta clave la llamaremos “clave simétrica” y tiene una en general una longitud de 128 bits. El problema aquí es que antes de realizar la conexión segura es necesario que ambos lados tengan la misma clave simétrica. La criptografía asimétrica consiste en algoritmos basados en problemas de un solo sentido, es decir que por un lado sea muy fácil realizarlo, pero la inversa sea “difícil” de realizarlo, como es problema de la factorización entera, es fácil realizar el producto de dos números, pero es “difícil” factorizar un número producto de dos números primos grandes. En este caso tenemos dos claves en cada caso que se le asocian a una entidad, un usuario, por ejemplo. Una clave pública que sirve para cifrar información y solo quien tiene la clave privada asociada a esta clave pública puede descifrar el mensaje. Esto es usado para intercambiar claves simétricas. Por otra parte, con la clave privada se firman documentos y se verifica la firma con la clave pública.

Es claro que la clave pública puede ser conocida por cualquier persona, sin embargo, la clave privada es solo conocida por el dueño a quien se le asociaron el par de claves. La clave privada debe de guardarse de manera confidencial, ya sea en su computadora personal, en su PDA, en un Smart Card o algún dispositivo personal.

En la práctica la criptografía simétrica y asimétrica se usan conjuntamente. La simétrica para intercambiar grandes volúmenes de información por su rapidez. Y la asimétrica para el intercambio de las claves simétricas y la firma digital.

Con todo lo anterior ya es muy fácil definir los conceptos de firma digital y de certificado digital.

Firma digital: es un número natural, de mas o menos 300 dígitos si se usa el sistema RSA, que tiene las mismas propiedades que la firma convencional. Es decir, es posible asociar un número único a cada persona o entidad, existe un método de firma y un método de verificación de la firma. Esta firma digital resuelve satisfactoriamente el problema de autenticación y no rechazo.

Certificado Digital: es un archivo de aproximadamente 1k de tamaño, que contiene, primero los datos del propietario, después su clave pública y la firma digital de una autoridad competente. Cuando una persona solicita un certificado digital, se generan su par de claves, la pública y la privada. La clave pública viene en el certificado digital explícitamente. La clave privada queda en custodia del propietario del certificado. El tercer elemento importante que tiene el certificado digital es la firma digital de una autoridad certificadora, quien esta como aval de que los datos corresponden al propietario. El certificado digital queda muy parecido entonces a un documento oficial de identificación como un pasaporte o una licencia de conducir.

Ahora hagamos las siguientes importantes anotaciones:

1) Otra importante característica del certificado digital es que contiene además de lo ya mencionado, El nombre de los algoritmos que se usan para la firma digital.

2) La firma convencional es usada cuando la comunicación es personal, si esta comunicación fuese por ejemplo por teléfono no es posible usar la firma convencional. La firma digital está precisamente diseñada para poder ser usada a grandes distancias, y principalmente cuando esta comunicación esta hecha por dos computadoras e Internet, además puede ser usada por muchos dispositivos electrónicos.

3) Cabe también mencionar, que, aunque la firma convencional puede ser enviada vía fax o por un documento que copie el garabato, ésta no es válida legalmente. Esta firma convencional se usa solo por conveniencia de alguna corporación o institución, por ejemplo, al usar un sello que estampa la firma de algún ejecutivo, es usada sólo por la rapidez que representa usarla, pero legalmente no es válida. Sólo es válida aquella que es derivada del puño y letra de la persona. Por su parte la firma digital garantiza ser mejor que la convencional y sería de gran beneficio si esta tuviese validez legal. Aunque aquí su validez legal a cambiado con el tiempo, y dependiendo la entidad certificadora, así como el uso que se le da en los diferentes sistemas.

4) Quizá la mayor diferencia entre la firma convencional y la firma digital es que la primera en su método de verificación existe una gran probabilidad de error, según algunos hasta del 20%, y en el caso de la firma digital, este error es inapreciable. Es una fuerte razón para que la firma digital tenga valor legal.



Es prudente mencionar que tipos de firma y certificados hay.

Primero veremos que tipos de firma digital

1) El método más usado para firmar digitalmente es el conocido como RSA, lo importante de este método es que es el más usado actualmente y por lo tanto es conveniente usarlo para poder ser compatible. Para que sea seguro la longitud de sus claves (una pública y otra privada) debe de ser de 1024 bits, es decir un número de un poco más de 300 dígitos.
2) Otro método reconocido para firma digital es el llamado DSA, que es oficialmente aceptado para las transacciones oficiales en el gobierno de USA. Este método usa también claves del mismo tamaño que RSA, pero esta basado en otra técnica. Aún así, sea podido mostrar que es casi equivalente en seguridad a RSA.
3) Una tercera opción es el método que usa curvas elípticas, este método tiene la ventaja a los dos anteriores a reducir hasta en 164 bits, es decir como 45 dígitos las claves, manteniendo la misma seguridad. Por lo que es más propio para ser usado donde existen recursos reducidos como en Smart Cards, PDAs, etc. Actualmente este método se ha integrado como el reemplazo oficial de DSA para el gobierno de USA.
4) Entre los posibles ataques a los anteriores métodos esta la posible remota construcción de una computadora cuántica, esta podría efectuar una cantidad tan grande de cálculos al mismo tiempo que podría romper los sistemas anteriores, incluso ya existen estos algoritmos que romperían los sistemas. Sin embargo, ya existe otro método de forma que aún con la computación cuántica no existe aún algoritmo que pueda romperlos. Este sistema es que esta basado en lattices (retículas), se conoce como NTRU (Number Theory Research Unit) y entre otras cualidades es más eficiente que RSA.
5) Existen aún más métodos para firmar, incluso algunos métodos derivados de las anteriores técnicas, sin embargo, no han podido tener el impacto de las anteriores, de hecho, puede crearse un método de firma para un caso particular.



Ahora veamos la forma de certificado digital

1) En la actualidad tenemos un formato (estándar) que se ha extendido casi para todas las aplicaciones, este es el llamado X.509. Este formato contiene los datos del poseedor del certificado, la clave pública del propietario, y la firma de una autoridad certificadora. La mejor propiedad del formato X.509 es que contiene el mínimo necesario de información para poder realizar muchas transacciones, principalmente comerciales y financieras. Sin embargo, para otras aplicaciones puede ser un poco robusto.

Finalmente hagamos la siguiente conclusión

Un certificado digital, es un archivo que contiene una clave pública y su poseedor una clave privada, con la clave privada podemos firmar cualquier documento, con la clave pública es posible verificar la firma e intercambiar información de forma confidencial, particularmente una clave simétrica.



Para poder obtener un certificado digital es necesario tener un software que genere estos certificados y que nos proporcione ya en formato X.509, para ser compatible. Podemos ver un certificado digital por ejemplo si nos conectamos a un sitio por Internet por ejemplo con los populares browsers Firefox, Chrome, Internet Explorer (Edge) y hacer click en el icono del candado, a partir de ahí podemos llegar a ver el certificado, siempre y cuando este candado este cerrado. La comunicación de un browser con un servidos se lleva a cabo por medio del protocolo SSL (Secure Sockets Layer) que puede funcionar con al menos un certificado digital de un lado de la comunicación.

Como siguiente paso para entender lo que es un certificado digital y la firma digital pueden por ejemplo revisar el artículo “Compras Seguras por Internet” que no es más que un ejemplo de SSL usando un certificado digital.

Comentarios

Autor entrada: Axel Abraham Valdes V