En criptografía, unha sinatura cega, introducida por David Chaum, Traballo do congreso CRYPTO '82, celebrado en 1982; as actas publicáronse en 1983. é unha forma de sinatura dixital na que o contido dunha mensaxe se oculta (se cega) antes de asinala. Unha vez eliminado o cegamento, a sinatura resultante pode verificarse publicamente coa mensaxe sen cegar, do mesmo xeito ca unha sinatura dixital ordinaria. As sinaturas cegas empréganse en protocolos relacionados coa privacidade nos que o asinante e o autor da mensaxe son partes distintas. Entre os exemplos figuran os sistemas electorais criptográficos e os esquemas de diñeiro dixital.
Unha propiedade de privacidade das sinaturas cegas é a non vinculabilidade: o asinante non debe poder relacionar unha execución do protocolo coa parella de mensaxe e sinatura sen cegar que vexa posteriormente. A resposta do asinante «descégase» antes da verificación de tal xeito que a sinatura siga sendo válida para a mensaxe sen cegar. Isto pode ser útil en esquemas nos que se require anonimato.
Pódense construír protocolos de sinatura cega a partir de esquemas de chave pública, como RSA, e de variantes de esquemas de tipo ElGamal/DSS. Seccións 12.5.3 e 12.5.4; exercicio E.9.7. Isto require un protocolo específico, non simplemente aplicar calquera algoritmo de sinatura estándar a unha mensaxe ocultada. No caso RSA, o autor combina o representante da mensaxe cun factor de cegamento aleatorio e envía o resultado ao asinante. Despois elimina o factor da resposta e obtén unha sinatura que pode verificarse coa mensaxe e coa chave pública; non é preciso revelar o factor de cegamento. Por exemplo, o protocolo RSA do RFC 9474 produce sinaturas verificables mediante RSA-PSS. RFC 9474, documento informativo, seccións 4, 6.2 e 7.
Usos Unha analoxía proposta por Chaum é o acto físico dun votante que introduce unha papeleta xa cuberta nun sobre especial forrado de papel carbón e envía este dentro doutro sobre que o identifica. A autoridade electoral comproba a identidade do votante e asina o sobre interior, transferindo así a súa sinatura á papeleta a través do papel carbón. Unha vez asinado, o conxunto devólvese ao votante, que retira a papeleta e a envía nun novo sobre sen marcas identificativas. Deste xeito, o asinante non ve o contido da papeleta, pero un terceiro pode verificar máis tarde a sinatura. Na analoxía, a imposibilidade de vincular a papeleta co votante supón que as sinaturas non conteñen marcas que permitan distinguilas.
Os esquemas de sinatura cega empréganse en aplicacións nas que a privacidade do remitente é importante. Entre elas figuran diversos esquemas de diñeiro dixital e protocolos de votación.
Por exemplo, un sistema de voto electrónico pode requirir que unha autoridade electoral certifique cada papeleta antes de aceptala para o reconto. A autoridade comproba as credenciais do votante e pode limitar a emisión de sinaturas a unha por persoa autorizada, sen coñecer as opcións elixidas. A non vinculabilidade impide relacionar a sesión de emisión coa papeleta sen cegar recibida para o reconto. Esta propiedade non garante por si soa toda a integridade do sistema: tamén fan falta resistencia á falsificación e controis para impedir que unha mesma papeleta asinada se conte varias veces. Ademais, a seguridade fronte a interrupcións maliciosas do protocolo require un tratamento específico.
Esquemas de sinatura cega Un esquema de sinatura cega comprende a xeración de chaves, un protocolo criptográfico de emisión e un algoritmo de verificación. No protocolo interveñen dúas partes: unha usuaria, Alice, que quere obter unha sinatura sobre a súa mensaxe, e un asinante, Bob, que posúe a chave privada de sinatura. Nunha execución correcta, Alice obtén unha sinatura válida de Bob sobre m sen revelar a mensaxe durante a emisión.
A seguridade distingue dúas propiedades. O cegamento protexe a usuaria fronte a un asinante malicioso; unha formulación habitual esixe que este non poida distinguir, cunha vantaxe non desprezable sobre o azar, en que orde se asinaron dúas mensaxes da mesma lonxitude escollidas por el en dúas execucións con usuarias honestas, mesmo ao recibir as sinaturas finais. A non falsificabilidade protexe o asinante fronte a unha usuaria maliciosa: debe ser computacionalmente inviable obter sinaturas válidas sobre máis mensaxes distintas que interaccións de emisión permitidas. As definicións tamén deben precisar como se contabilizan as execucións interrompidas.
Sinaturas cegas RSA Un dos esquemas de sinatura cega máis sinxelos baséase na operación de sinatura RSA. Para describir a súa álxebra, considérase primeiro RSA sen codificación nin función de resumo: a sinatura dun representante numérico m calcúlase elevándoo ao expoñente secreto d módulo o módulo público N. Isto non constitúe, por si só, un esquema de sinatura seguro. Supóñense chaves RSA válidas e , o conxunto dos residuos coprimos con N. A versión cega escolle r uniformemente ao azar nese mesmo conxunto, polo que e existe o seu inverso modular. r elévase ao expoñente público e módulo N, e o valor resultante emprégase como factor de cegamento. O autor calcula o produto da mensaxe e do factor:
e envía á autoridade asinante. Como a aplicación é unha permutación de , e multiplicar polo elemento invertible m tamén o é, distribúese uniformemente nese conxunto, independentemente de m. Esta é a razón pola que o valor cegado non revela información sobre a mensaxe baixo as hipóteses indicadas. Informe 2001/002, recibido o 5 de xaneiro de 2001; cítase a revisión do 17 de xuño de 2002. A autoridade asinante calcula daquela a resposta cegada s′ como:
s′ devólvese ao autor da mensaxe, que pode eliminar o factor de cegamento para obter s, a sinatura RSA de m:
Isto funciona porque as chaves RSA satisfán a ecuación e, polo tanto,
polo que s satisfai a ecuación de verificación . O verificador non precisa coñecer r.
Na práctica, deséxase resistencia á falsificación adicional (one-more forgery): tras k interaccións co asinante, non debe ser viable obter sinaturas válidas para k + 1 mensaxes distintas. Isto é diferente da privacidade proporcionada polo cegamento e tampouco impide reutilizar unha sinatura xa obtida. No esquema puramente alxébrico anterior, tanto a parella orixinal e sen cegar como a parella cegada satisfán a ecuación RSA; a propiedade multiplicativa permite construír outras combinacións.
No esquema RSA-FDH cego analizado por Bellare, Namprempre, Pointcheval e Semanko, aplícase primeiro unha función hash criptográfica á mensaxe M. Cégase no canto de m, e a verificación final comproba . Os autores demostraron a resistencia á falsificación adicional no modelo de oráculo aleatorio, baixo a hipótese de dificultade do problema one-more RSA. Non é unha garantía para calquera función de resumo nin unha consecuencia do cegamento por si só. O asinante segue aplicando a operación RSA ao valor cegado; non comproba con ela o contido nin a codificación da mensaxe oculta.
Seguridade e reutilización de chaves A operación privada de RSA empregada na sinatura cega tamén permite inverter a función RSA. Por iso, se se reutiliza a mesma chave para cifrar e para asinar cegamente, o servizo de sinatura pode actuar como un oráculo de descifraxe. Para ilustralo con RSA sen recheo, sexa m unha mensaxe secreta e o seu texto cifrado. Un atacante que intercepte c escolle un r invertible módulo N e presenta ao asinante:
Cando o asinante aplica o expoñente privado ao valor cegado, devolve:
A última congruencia cúmprese para as chaves RSA; por exemplo, abonda con que , onde é a función totiente de Euler. O atacante recupera a mensaxe eliminando o factor que el mesmo escolleu:
O risco débese a expoñer a operación privada RSA sobre valores elixidos polo solicitante. Non significa que o recheo sexa incompatible coa sinatura cega: no RFC 9474 o cliente aplica a codificación RSA-PSS antes de cegar, elimina o cegamento da resposta e verifica a sinatura resultante. Esa codificación non permite ao asinante inspeccionar a mensaxe oculta nin elimina o perigo de reutilizar a chave noutro protocolo. O RFC esixe unha chave exclusiva para o protocolo e para cada opción de codificación, polo que non se debe compartir con operacións de cifraxe. Tamén distingue a comprobación da operación RSA que realiza o asinante para detectar fallos de cálculo da verificación da mensaxe e da sinatura final que realiza o cliente. Se unha aplicación necesita que o asinante comprobe a estrutura da mensaxe sen vela, pode requirir mecanismos adicionais, como probas de coñecemento cero.
Notas
Véxase tamén Outros artigos Protocolo dos criptógrafos na cea Diñeiro electrónico Ecash
Ligazóns externas Solicitude de patente EP 1571777 A1. Solicitante orixinal: France Telecom. Data de prioridade: 2 de marzo de 2004. Fischlin, Marc; Schröder, Dominique. Security of Blind Signatures Under Aborts. Versión arquivada o 18 de xullo de 2011; consultada o 9 de setembro de 2026 (en inglés).
Categoría:Criptografía