Un protocolo criptográfico é un protocolo abstracto ou concreto que realiza unha función relacionada coa seguridade e aplica métodos criptográficos, a miúdo como secuencias de primitivas criptográficas. Un protocolo describe como se deben usar os algoritmos e inclúe detalles sobre estruturas de datos e representacións, o que permite implementar múltiples versións interoperables dun programa.
Os protocolos criptográficos empréganse amplamente para o transporte seguro de datos no nivel de aplicación. Un protocolo criptográfico adoita incorporar polo menos algúns destes aspectos:
Establecemento de chaves, incluído o acordo de chaves Autenticación de entidades, talvez usando un protocolo de autenticación Construción de material de chaves para cifraxe simétrica e autenticación de mensaxes Transporte seguro de datos no nivel de aplicación Métodos de non repudio Métodos de compartición de segredos Computación multipartita segura
Transport Layer Security (TLS) é un exemplo de protocolo que protexe as conexións web HTTPS. A negociación inicial establece os parámetros e o material de chaves co que se protexe o tráfico posterior. TLS 1.3 admite autenticación con certificados e modalidades con chaves precompartidas; estas últimas poden combinarse con Diffie–Hellman. Polo tanto, non todas as configuracións usan certificados X.509 nin o mesmo mecanismo de establecemento de chaves.
Un protocolo de aplicación pode incorporar outros protocolos criptográficos. Por exemplo, TLS pode empregar Diffie–Hellman para acordar material de chaves, pero tamén require autenticación, protección da negociación e regras para o transporte posterior dos datos.
Protocolos criptográficos avanzados Os protocolos criptográficos tamén poden protexer outras propiedades dunha colaboración. As sinaturas cegas utilízanse na construción de sistemas de diñeiro electrónico e credenciais anónimas. O selado dixital de tempo permite acreditar que uns datos existían nun momento determinado. A computación multipartita segura procura que as partes non aprendan información das entradas alleas alén da que se deduce da súa propia entrada e do resultado autorizado. Os sistemas de votación auditables combinan propiedades de privacidade e verificación; as sinaturas innegables incorporan protocolos interactivos de verificación e desmentido.
A cifraxe negable permite presentar información alternativa compatible cun texto cifrado baixo unha situación de coacción. Non se define como ocultar a existencia da comunicación cifrada, senón como poder atribuírlla a outro texto en claro. Os retransmisores anónimos procuran dificultar o rastrexo das comunicacións.
Verificación formal Os protocolos criptográficos poden ás veces verificarse formalmente nun nivel abstracto. Cando se fai, cómpre formalizar o contorno no que opera o protocolo para identificar ameazas. Isto faise con frecuencia mediante o modelo Dolev-Yao.
Algúns formalismos usados para o razoamento formal dos protocolos de seguridade: Lóxica de Burrows-Abadi-Needham (lóxica BAN) Modelo Dolev-Yao Cálculo pi Lóxica de composición de protocolos (PCL) O formalismo strand spaces, que representa secuencias de emisión e recepción de mensaxes.
Algúns proxectos de investigación e ferramentas usados para a verificación formal dos protocolos de seguridade: Automated Validation of Internet Security Protocols and Applications (AVISPA) e o proxecto de continuación AVANTSSAR. Constraint Logic-based Attack Searcher (CL-AtSe) Open-Source Fixed-Point Model-Checker (OFMC)Open-Source Fixed-Point Model-Checker (OFMC) SAT-based Model-Checker (SATMC) CasperCasper: A Compiler for the Analysis of Security Protocols CryptoVerif Cryptographic Protocol Shapes Analyzer (CPSA)cpsa: Symbolic cryptographic protocol analyzer Knowledge In Security protocolS (KISS) Maude-NRL Protocol Analyzer (Maude-NPA)Maude-NRL Protocol Analyzer (Maude-NPA) ProVerif ScytherScyther Tamarin ProverTamarin Prover SquirrelSquirrel Prover StrandsRocqStrandsRocq
Noción de protocolo abstracto
Para verificar formalmente un protocolo adoita abstraerse e modelarse usando a notación de Alice e Bob. Un exemplo simple é o seguinte:
Esta notación indica que Alice envía a Bob a mensaxe cifrada coa chave compartida .
Exemplos Internet Key Exchange IPsec Kerberos Off-the-Record Messaging SSH Signal Protocol Transport Layer Security ZRTP
Notas Todas as referencias en inglés agás cando se indique o contrario.
Véxase tamén Bibliografía
Outros artigos Lista de criptosistemas Canle segura Security Protocols Open Repository Comparación de bibliotecas criptográficas Protocolo criptográfico cuántico
Categoría:Criptografía