ES2360044T3 - Método de firma de lista y aplicación al voto electrónico. - Google Patents

Método de firma de lista y aplicación al voto electrónico. Download PDF

Info

Publication number
ES2360044T3
ES2360044T3 ES03748214T ES03748214T ES2360044T3 ES 2360044 T3 ES2360044 T3 ES 2360044T3 ES 03748214 T ES03748214 T ES 03748214T ES 03748214 T ES03748214 T ES 03748214T ES 2360044 T3 ES2360044 T3 ES 2360044T3
Authority
ES
Spain
Prior art keywords
list
signature
phase
issued
parameters
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES03748214T
Other languages
English (en)
Inventor
Sébastien CANARD
Marc Girault
Jacques Traore
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orange SA
Original Assignee
France Telecom SA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by France Telecom SA filed Critical France Telecom SA
Application granted granted Critical
Publication of ES2360044T3 publication Critical patent/ES2360044T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3263Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/383Anonymous user system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3255Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using group based signatures, e.g. ring or threshold signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/42Anonymization, e.g. involving pseudonyms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem
    • H04L2209/463Electronic voting

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Accounting & Taxation (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Finance (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)
  • Circuits Of Receivers In General (AREA)
  • Saccharide Compounds (AREA)
  • Nitrogen Condensed Heterocyclic Rings (AREA)
  • Peptides Or Proteins (AREA)

Abstract

Un método de firma de lista que comprende al menos: - una fase de organización (10) que consiste, para una autoridad de confianza (1), en definir parámetros de puesta en práctica de una firma electrónica anónima, que presenta una clave privada y una clave pública correspondiente, - una fase de registro (20, 20') de personas en una lista de miembros autorizados para generar una firma electrónica propia para los miembros de la lista, en cuyo transcurso cada persona (2) a registrar calcula (24) una clave privada (xi) con la ayuda de parámetros proporcionados por la autoridad de confianza y de parámetros elegidos, de forma aleatoria, por la persona a registrar, y la autoridad de confianza entrega (25') a cada persona a registrar un certificado ([Ai, ei]) de miembro de la lista, - una fase de firma (30), en cuyo transcurso un miembro de la lista genera (35) y emite (36) una firma propia a los miembros de la lista, siendo esta firma constituida de manera que contenga una prueba de que el miembro de la lista, que ha emitido la firma, hace conocer un certificado ([Ai, ei]) de miembro de la lista y - una fase de comprobación (40) de la firma emitida que comprende etapas (41, 42) de aplicación de un algoritmo predefinido para poner en evidencia la prueba de que la firma fue emitida por una persona en posesión de un certificado de miembro de la lista, caracterizado porque comprende, además: - una fase de definición de una secuencia que consiste en que la autoridad de confianza (1) genere un número de secuencia m a utilizar en la fase de firma (30), una firma (Sigliste), generada durante la fase de firma, que comprende un elemento de firma (T4) que es común a todas las firmas emitidas por un mismo miembro de la lista, con un mismo número de secuencia, y que contiene una prueba de que el número de secuencia m fue utilizado para generar la firma, comprendiendo la fase de verificación (40), además, una etapa de verificación (43) de la prueba de que el número de secuencia fue utilizado para generar la firma; - una fase de revocación de un miembro de la lista para retirar un miembro de la lista, en cuyo transcurso la autoridad de confianza (1) retira de la lista el miembro a retirar y actualiza los parámetros de puesta en práctica de la firma electrónica anónima, para tener en cuenta la retirada del miembro de la lista y - una fase de actualización de certificados ([Ai, ei]) de los miembros de la lista para tener en cuenta modificaciones de la composición de la lista.

Description

La presente invención se refiere al campo general de la seguridad de los servicios accesible por una red de transmisión de datos digitales y, más concretamente, el campo de la firma electrónica.
Se aplica, en particular, pero no exclusivamente al voto electrónico o también a la petición electrónica.
La firma electrónica de un mensaje pone en práctica un mecanismo pertinente de la criptografía denominada de clave pública: el signatario que posee una clave secreta o privada y una clave pública asociada, puede proporcionar una firma de mensaje con la ayuda de la clave secreta. Para verificar la firma, basta disponer de la clave pública.
En algunas aplicaciones como el voto electrónico, el signatario debe poder quedar anónimo. A este efecto, se ha puesto a punto lo que se denomina la firma electrónica anónima, que permite, con la ayuda de una clave pública, determinar si el signatario de un mensaje posee algunos derechos (derecho de firmar el mensaje, derecho de poseer la clave secreta que se haya utilizado para firmar el mensaje, etc.), preservando el anonimato del signatario. Además, en las aplicaciones de voto o de petición electrónica, cada persona autorizada sólo debe poder firmar una sola vez.
Entre las firmas anónimas, existe, asimismo, lo que se denomina firma ciega, que permite a una persona obtener la firma de un mensaje de otra entidad, sin que esta última tenga que conocer el contenido del mensaje y pueda establecer, más tarde, el vínculo entre la firma y la identidad del signatario. Esta solución de firma ciega necesita, por lo tanto, la intervención de una entidad intermediaria que proporcione las firmas. En las aplicaciones como el voto o la petición electrónica, esta solución hace intervenir una autoridad habilitada que firme el voto de cada elector o la petición para cada peticionario.
Se ha dado a conocer, además, el concepto de firma de grupo que permite a cada miembro de un grupo proporcionar una firma tal que un verificador, que posea una clave pública adecuada, pueda verificar que la firma fue emitida por un miembro del grupo sin poder determinar la identidad del signatario.
Este concepto se describe, por ejemplo, en el documento:
[1] "A Practical and Provably Secure Coalition-Resistant Group Signature Scheme" de G. Ateniese, J Camenisch, M. Joye y G. Tsudik, en M. Bellare, Editor, Advance in Cryptology — CRYPTO 2000, vol. 1880 de LNCS, páginas 255- 270, Springer-Verlag 2000.
Sin embargo, en este concepto, una autoridad de confianza puede levantar, en cualquier momento, este anonimato y determinar la identidad de una persona del grupo que haya emitido una firma. Además, este tipo de firma se denomina "no fiable", es decir que no permite determinar si dos firmas han sido, o no, emitidas por la misma persona sin levantar el anonimato de la firma. Las firmas de grupo se utilizan en numerosas aplicaciones, tales como la venta electrónica en las subastas, la moneda electrónica o también el voto electrónico. La firma de grupo no conviene perfectamente a esta última aplicación, puesto que autoriza a una autoridad de confianza a acceder a la identidad de un signatario, y no permite relacionar dos firmas emitidas por una misma persona sin determinar la identidad del signatario. Además, el documento [1] no prevé procesos de revocación de un miembro del grupo.
Para subsanar este último inconveniente, el documento [2] "Efficient Revocation of Anonymous Group membership Certificates and Anonymous Credentials" de J. Camenisch y A. Lysyanskaya, publicado por Cryptologie ePrint Archive IACR 2002, prevé añadir a este concepto un proceso de revocación (este documento será también publicado por M. Jung, Editor CRYPTO 2002, Springer-Verlag 2002). Sin embargo, esta solución no aporta solución alguna a los problemas de la preservación del anonimato del signatario y de la "fiabilidad" de dos firmas.
En una aplicación de voto electrónico, es además necesario para garantizar una seguridad de la máxima aproximación del voto tradicional, asegurar las propiedades siguientes.
Nadie debe ser capaz de conocer, ni siquiera parcialmente los resultados del escrutinio antes de su cierre. Cualquier persona debe poder convencerse de la validez del resultado final del escrutinio. Por último, una autoridad habilitada debe ser capaz de retirar o de revocar el derecho de voto de una persona.
Cuando se trata del voto fuera de línea, es decir de la utilización de una máquina para votar electrónica instalada en una oficina de voto, o del voto en línea, es decir a distancia, a través de la red Internet por ejemplo, los sistemas propuestos actualmente, que utilizan una firma de grupo tal como se describe en el documento [1] y completada en el documento [2], no cumplen estas condiciones, sino en parte la revocación del derecho de firma.
Por otro lado, la aplicación del concepto de firma ciega al voto electrónico es una solución cuya puesta en práctica es onerosa, porque obliga al elector a conectarse varias veces a cada elección. Además, si el escrutinio se transmite mal, no se puede determinar quién es el responsable: un elector o el organizador del escrutinio.
Se ha dado a conocer, además, en particular en el documento [3] "Untraceable Electronic Mail Return Addresses and Digital Pseudonym" de D. Chaum, ACM 1981, el concepto de redes mezcladoras, siendo cada red mezcladora una función que proporcione una lista de números descifrados a partir de una lista de números cifrados, ocultando la correspondencia entre los números cifrados y los números descifrados. Aplicada al voto electrónico, esta
2
técnica presenta el importante inconveniente de no permitir verificar la validez de un voto sin comprometer el secreto de este último.
En el documento [4] "A Secure and Optimal Efficient Multi-Authority Election Scheme", de Cramer, Gennaro y Schoenmakers, Eurocrypt’97, LNCS — Springer-Verlag, se describe lo que se denomina el cifrado homomorfo que permite efectuar cálculos basados sobre números cifrados. Las soluciones basadas en este método no son, sin embargo, aplicables a los escrutinios que impliquen a un gran número de electores.
La presente invención tiene como objetivo suprimir este inconveniente. Este objetivo se alcanza por la previsión de un método de firma de lista, que comprende al menos:
una fase de organización que consiste, para una autoridad de confianza, definir parámetros de puesta en práctica de una firma electrónica anónima, con una clave privada y una clave pública correspondiente,
una fase de registro de personas en una lista de miembros autorizados para generar una firma electrónica propia a los miembros de la lista, en el transcurso de cuya fase cada persona a registrar calcula una clave privada con la ayuda de parámetros proporcionados por la autoridad de confianza y de parámetros elegidos, de forma aleatoria, por la persona a registrar, y la autoridad de confianza entrega, a cada persona a registrar, un certificado de miembro de la lista,
una fase de firma, en cuyo transcurso, un miembro de la lista genera y emite una firma propia a los miembros de la lista, construyendo esta firma de modo que contenga una prueba de que el miembro de la lista, que ha emitido la firma, conoce un certificado de miembro de la lista, y
una fase de verificación de la firma emitida que comprende etapas de aplicación de un algoritmo predefinido para poner en evidencia la prueba de que la firma fue emitida por una persona en posesión de un certificado de miembro de la lista.
Según la invención, este método comprende, además:
una fase de definición de una secuencia que consiste, para la autoridad de confianza, en generar un número de secuencia a utilizar en la fase de firma, una firma generada durante la fase de firma que comprende un elemento de firma que es común a todas las firmas emitidas por un mismo miembro de la lista con un mismo número de secuencia y que contiene una prueba de que el número de secuencia fue utilizado para generar la firma, comprendiendo la fase de verificación, además, una etapa de verificación de la prueba de que el número de secuencia fue utilizado para generar la firma;
una fase de revocación de un miembro de la lista para retirar un miembro de la lista, en cuyo transcurso, la autoridad de confianza retira de la lista el miembro a retirar y actualiza los parámetros de puesta en práctica de la firma electrónica anónima, para tener en cuenta la supresión del miembro de la lista y
una fase de actualización de los certificados de los miembros de la lista para tener en cuenta las modificaciones de la composición de la lista.
Según una forma de realización de la invención, la fase de organización comprende la definición de un parámetro común, que depende de la composición de la lista, comprendiendo la fase de registro de una persona en la lista la definición de un parámetro propio de la persona a registrar, que se calcula en función del parámetro que depende de la composición de la lista y que está integrado en el certificado remitido a la persona, comprendiendo la fase de registro una etapa de actualización del parámetro común, que depende de la composición de la lista, comprendiendo la fase de revocación de un miembro de la lista una etapa de modificación del parámetro común, que depende de la composición de la lista, para tener en cuenta la supresión del miembro de la lista y presentando la fase de actualización de los certificados de los miembros de la lista una etapa de actualización del parámetro propio de cada miembro de la lista para tener en cuenta las modificaciones de la composición de la lista.
Según una forma de realización de la invención, una firma propia para un miembro de la lista y que posea el certificado [Ai,ei] comprende parámetros T1, T2, T3 tales como:
T1 = Aib (mod.n),
T2 = g (mod.n),
T3 = geih (mod.n),
siendo  un número elegido, de forma aleatoria, en el momento de la fase de firma, y siendo b, g, h y n parámetros generales de puesta en práctica de la firma de grupo, tales que los parámetros b, g y h no se puedan deducir los unos de los otros por funciones de elevación de potencia entera módulo n, de modo que el número Ai y, por lo tanto, la identidad del miembro de la lista que posea el certificado [Ai ei], no se pueda deducir de una firma emitida por el miembro.
Preferentemente, el número de una secuencia utilizado para generar una firma de lista se calcula en función de una fecha de inicio de secuencia.
3
En una forma de realización preferida, la función de cálculo del número de una secuencia es de la forma:
F(d)=(H(d))2 (mod.n)
en donde H es una función de resumen criptográfico resistente a las colisiones, d es la fecha de inicio de la secuencia y n es un parámetro general de puesta en práctica de la firma de grupo.
Según una forma de realización de la invención, una firma emitida por un miembro de la lista contiene un parámetro que se calcula en función del número de secuencia y de la clave privada del miembro signatario.
Según una forma de realización de la invención, el parámetro T4 de una firma emitida por un miembro de la lista, y que depende del número de secuencia m y de la clave privada xi del miembro signatario, se obtiene por la fórmula siguiente:
T4 = Mxi (mod. n)
siendo n un parámetro general de puesta en práctica de la firma de grupo, y la firma que comprende la prueba de que el parámetro T4 fue calculado con la clave privada xi del miembro de la lista que ha emitido la firma.
La invención se refiere, además, a un método de voto electrónico que comprende una fase de organización de las elecciones, en cuyo transcurso una autoridad organizadora procede a la generación de parámetros necesarios para un escrutinio y atribuye claves a escrutadores, que les permiten descifrar y verificar las papeletas de voto, una fase de atribución de un derecho de firma a cada uno de los electores, una fase de voto en cuyo transcurso los electores firman una papeleta de voto y una fase de recuento, en cuyo transcurso los escrutadores verifican las papeletas de voto y calculan el resultado del escrutinio en función del contenido de las papeletas de voto descifradas y válidas.
Según la invención, este método pone en práctica un método de firma de lista tal como se definió anteriormente, para firmar las papeletas de voto, estando cada elector registrado como miembro de una lista y siendo un número de secuencia generado para el escrutinio, para detectar si un mismo elector ha emitido, o no, varias papeletas de voto para el escrutinio.
Según una forma de realización de la invención, la fase de organización comprende la entrega a cada escrutador de una clave pública y de una clave privada, siendo las papeletas de voto cifradas con la ayuda de una clave pública obtenida por el producto de las claves públicas respectivas de todos los escrutadores, y siendo obtenida la clave privada de descifrado correspondiente calculando la suma de claves privadas respectivas de todos los escrutadores.
Preferentemente, el cifrado de las papeletas de voto se realiza con la ayuda de un algoritmo de cifrado probabilista.
Según una forma de realización de la invención, las papeletas de voto emitidas por los electores se guardan en una base de datos pública, siendo el resultado de la verificación y del recuento de cada papeleta de voto almacenado en la base de datos en asociación con la papeleta de voto, y la clave privada de descifrado de las papeletas de voto que se han publicado.
La invención se refiere, además, a un calculador para la puesta en práctica de una firma de lista, que comprende medios para:
-
generar parámetros de puesta en práctica de una firma electrónica anónima propia para los miembros de una lista, comprendiendo los parámetros una clave privada y una clave pública correspondiente y
-
transmitir a cada persona a registrar en la lista, parámetros a utilizar por la persona a registrar para calcular una clave privada, y un
— certificado de miembro de la lista.
Según la invención, el calculador comprende, además, medios para:
— generar un número de secuencia a utilizar por los miembros de la lista para emitir una firma anónima propia para los miembros de la lista, una firma anónima emitida por un miembro de la lista que comprende un elemento de firma que es común a todas las firmas emitidas por el mismo miembro de la lista, con un mismo número de secuencia, y que contenga una prueba de que el número de secuencia fue utilizado para generar la firma;
- retirar de la lista un miembro a revocar de la lista, y actualizar los parámetros de puesta en práctica de la firma electrónica anónima propia para los miembros de la lista, para tener en cuenta la retirada del miembro de la lista y actualizar los certificados de los miembros de la lista a cada modificación de la composición de la lista.
La invención se refiere, además, a un calculador para la puesta en práctica de un método de voto electrónica, que comprende medios para:
— generar, en el curso de una fase de organización de un escrutinio, parámetros de puesta en práctica de una firma electrónica anónima propia para los miembros de una lista de electores, conteniendo los parámetros una clave privada y una clave pública correspondiente;
4
-
atribuir a escrutadores claves que les permitan descifrar y verificar las papeletas de voto emitidas para el escrutinio y
-
transmitir a cada miembro de la lista de electores del escrutinio de los parámetros a utilizar por el elector para calcular una clave privada, y un certificado de miembro de la lista de electores del escrutinio.
Según la invención, el calculador comprende, además, medios para:
-
generar un número de secuencia propio para el escrutinio a utilizar por los miembros de la lista de electores para firmar una papeleta de voto, una firma de una papeleta de voto que comprende un elemento de firma que es común a todas las firmas emitidas con un mismo número de secuencia por un mismo miembro de la lista de electores del escrutinio, y que contiene una prueba de que el número de secuencia fue utilizado para generar la firma;
retirar de la lista un elector del escrutinio a revocar, y actualizar los parámetros de puesta en práctica de la firma electrónica anónima propia a los miembros de la lista de electores del escrutinio, para tener en cuenta la retirada del elector y
actualizar los certificados de los electores del escrutinio a cada modificación de la composición de la lista de los electores del escrutinio.
La invención se refiere, asimismo, a un terminal para emitir una firma de lista que comprende medios para:
— recibir parámetros de cálculo de una clave privada;
-
calcular la clave privada con la ayuda de los parámetros recibidos y de los parámetros elegidos de forma aleatoria;
- recibir un certificado de miembro de una lista;
-
generar una firma propia para los miembros de la lista, siendo constituida esta firma de manera que contenga una prueba de que el miembro de la lista, que ha emitido la firma, conoce un certificado de miembro de la lista y
-
comprobar una firma emitida por un miembro de la lista aplicando un algoritmo predefinido para poner en evidencia la prueba de que la firma fue emitida por una persona en posesión de un certificado de miembro de la lista.
Según la invención, el terminal comprende, además, medios para:
- recibir un número de secuencia a utilizar en una fase de firma;
- generar una firma calculando un elemento de firma que sea común a todas las firmas emitidas por un mismo miembro de la lista, con un mismo número de secuencia y que contenga una prueba de que el número de secuencia fue utilizado para generar la firma;
-
comprobar la prueba de que el número de secuencia fue utilizado para generar una firma y
-
recibir un nuevo certificado de miembro de la lista a cada modificación de la composición de la lista.
La invención se refiere, asimismo, a un terminal para emitir una firma de papeleta de voto para un escrutinio, que comprende medios para:
— recibir parámetros de cálculo de una clave privada;
-
calcular la clave privada con la ayuda de los parámetros recibidos y de parámetros elegidos de forma aleatoria;
— recibir un certificado de miembro de una lista de electores del escrutinio;
-
generar una firma de una papeleta de voto, siendo esta firma constituida de manera que contenga una prueba de que el miembro de la lista, que ha emitido la firma, conoce un certificado de miembro de la lista de electores y
— verificar una firma de una papeleta de voto, emitida por un miembro de la lista de elector, aplicando un algoritmo predefinido para poner en evidencia la prueba de que la firma fue emitida por una persona en posesión de un certificado de miembro de la lista.
Según la invención, el terminal comprende, además, medios para:
— recibir un número de secuencia a utilizar para firmar una papeleta de voto;
generar una firma de una papeleta de voto calculando un elemento de firma que sea común a todas las firmas emitidas por un mismo miembro de la lista de electores, con un mismo número de secuencia, y que contenga una prueba de que el número de secuencia fue utilizado para generar la firma;
verificar la prueba de que el número de secuencia fue utilizado para generar una firma de una papeleta de voto y
5
5
10
15
20
25
30
35
40
— recibir un nuevo certificado de miembro de la lista de electores a cada modificación de la composición de la lista de electores.
Una forma de realización preferida de la invención se describirá a continuación, a título de ejemplo no limitativo, con referencia a los dibujos adjuntos en donde:
La Figura 1 representa un sistema que permite la puesta en práctica de métodos de firma de lista y de voto electrónico, según la invención;
Las Figuras 2 a 8 ilustran, bajo la forma de organigramas, los diferentes procedimientos que se ejecutan en conformidad con los métodos de firma de lista y de voto electrónico, según invención.
La presente invención da a conocer un método de firma de lista, en donde todas las personas autorizadas, es decir, que Figuran en la lista, puedan proporcionar una firma que sea anónima, y sin importar que sea capaz de verificar la validez de la firma sin tener acceso a la identidad del miembro de la lista que ha firmado.
Un tal método puede ponerse en práctica en el sistema representado en la Figura 1. Este sistema presenta terminales 2 puestos a la disposición de los usuarios y conectados a una red de transmisión 5 de datos digitales, tal como la red Internet. Cada terminal 2 está ventajosamente conectado a un lector 8 de tarjeta de circuito integrado 7. Por intermedio de la red 5, los usuarios se pueden conectar a un servidor 6 que da acceso a informaciones, por ejemplo, almacenadas en una base de datos 4. Este sistema comprende, además, un calculador 1 de una autoridad de confianza que entrega, en particular, las tarjetas de circuitos integrados 7 a los usuarios.
El método de firma de lista, según la invención, retoma en el método de firma de grupo, descrito en el documento de referencia [1], los procedimientos siguientes:
un procedimiento de organización de un grupo de signatarios, que consiste en establecer los diferentes parámetros y claves públicas que se necesiten,
un procedimiento de registro, en donde una persona a inscribir en el grupo recibe de una autoridad de confianza un derecho de firma, es decir una clave privada y un certificado autorizados,
un procedimiento de firma propiamente dicho en cuyo transcurso una persona, que posee un derecho de firma, firma un mensaje y
un procedimiento de verificación que consiste en aplicar un algoritmo de verificación de una firma para verificar que la firma se haya proporcionado por una persona que posea un derecho de firma.
La invención prevé, además, una disposición para garantizar el anonimato de un signatario, incluso ante una autoridad de confianza, así como un procedimiento de organización de una secuencia, que consiste en definir un número de secuencia a utilizar para generar firmas de lista, comprendiendo, además, la verificación de una firma, una etapa de verificación de que la firma es única para un número de secuencia dado.
El método, según la invención, puede comprender, además, un procedimiento de revocación, tal como se define en el documento de referencia [2]. Con la ayuda de este procedimiento de revocación, una autoridad de confianza puede retirar, a un miembro de la lista, los derechos de firma que le fueron anteriormente atribuidos, a partir de la identidad del miembro. El establecimiento de esta posibilidad de revocación implica la ejecución por los miembros de la lista de un procedimiento de actualización, en cuyo transcurso los miembros de la lista actualizan sus certificados para tener en cuenta las modificaciones (adición o retiradas) efectuadas en la lista de las personas autorizadas para firmar.
La Figura 2 ilustra las diferentes etapas del procedimiento de organización 10 ejecutado en el calculador 1 de la autoridad de confianza.
De conformidad con el documento de referencia [1], este procedimiento consiste en elegir, 11, números enteros siguientes:
imagen1
que son longitudes de números enteros en números de bits, con:
imagen1
y en definir los conjuntos de números enteros siguientes:
6
imagen1
5
10
15
20
30
35
Este procedimiento consiste, además, en elegir una función de resumen criptográfico resistente a las colisiones H tal que una secuencia binaria de cualquier longitud indicada {O,1}* se transforma en una secuencia binaria de longitud k indicada {0,1}k.
A continuación, el calculador 1 de la autoridad de confianza genera, de forma aleatoria, en la etapa 12, números primos p’ y q’ de magnitud Ip, tales que p=2p’+1 y q=2q’+1 son también números primos. A continuación, calcula, en la etapa 13, el módulo n=pq y genera, de forma aleatoria, en la etapa 14, números enteros a, a0, b, g y h en el conjunto QR(n) de los residuos cuadráticos de n, es decir, el conjunto de los números enteros y tales que y=x2 (mod.n), siendo x un número entero. Se considera, entonces, que la clave pública PK de la autoridad de confianza está constituida por la secuencia de números enteros (n, a, a0, b, g, h) y que la clave privada de esta última está constituida por la secuencia de números enteros (p’, q’).
Para ser registrado por la autoridad de confianza, un usuario, que desee llegar a ser miembro de la lista, ejecuta en su terminal 2 el procedimiento 20 ilustrado en la Figura 3. La ejecución de este procedimiento establece un diálogo con el calculador 1 de la autoridad de confianza, que ejecuta, entonces, un procedimiento 20’. El procedimiento
~ ~
20 comprende, ante todo, una etapa 21 de generación aleatoria de números enteros Xi y r , respectivamente, en
los intervalos  0,2 2  y  0,n2. A partir de estos números enteros, se calcula 22 un número entero C1 tal que:
imagen1
~
~
En la etapa 23, se establece la prueba U del conocimiento de dos números  y  (es decir Xi y r ) tal que C1 = gh (mod n). Una tal prueba se constituye, por ejemplo, eligiendo de forma aleatoria dos números enteros rimagen1 1 y r2 en el
conjunto de los números binarios con signo en (21p + k) bits, indicado , y calculando los números siguientes:
imagen1
en donde el símbolo ║ representa el operador de concatenación,
imagen2
siendo s1 y s2 números enteros relativos.
La prueba U es entonces igual a (c, s1, s2, C1).
El número C1 y la prueba U se envían, a continuación, a la autoridad de confianza, que verifica, en la etapa 21’
la prueba U y que C1 se encuentra en el conjunto QR(n) de los residuos cuadráticos de n. En el ejemplo precedente, la verificación de la prueba U consiste en calcular:
imagen1
imagen3
La prueba se verifica si c’ = c y si s1 y s2 pertenecen al conjunto
Si tal es el caso, el calculador 1 de la autoridad de confianza genera de forma aleatoria 22’ dos números enteros i, i en el intervalo ]0,22[, y envía estos números al terminal 2 del usuario. En el procedimiento 20, el terminal del usuario calcula, entonces, en la etapa 24, los números enteros xi y C2 aplicando las fórmulas siguientes:
7
imagen1
5
10
15
20
25
30
35
Luego, construye, en la etapa 25, las pruebas siguientes (por ejemplo, según el mismo principio que la prueba
U):
la prueba V de conocer un número  que pertenece al conjunto tal que:
la prueba W de conocer tres números , , tales que
imagen1
imagen1 y
imagen1
C2 y las pruebas V y W son, luego, enviadas al calculador 1 de la autoridad de confianza que verifica 23’ las pruebas V y W, y que C2 pertenecen al conjunto QR(n). Si tal es el caso, genera 24’, de forma aleatoria, un número primo ei que pertenece al conjunto y aplica la fórmula siguiente:
imagen1
y reenvía al usuario los enteros Ai y ei considerados como un certificado [Ai, ei] de pertenencia del usuario a la lista.
El calculador 1 crea 26’ entonces una nueva entrada en una tabla de los miembros de la lista, por ejemplo en la base de datos 4, en donde memoriza el certificado [Ai, ei] en vista de modificaciones de la lista (por ejemplo, revocaciones de miembros) y, preferentemente, los mensajes intercambiados entre la autoridad de confianza y el usuario durante este procedimiento de registro del usuario.
Por otro lado, el usuario puede comprobar 26 la autenticidad del certificado recibido comprobando que se satisface la ecuación siguiente:
imagen1
Al final de este procedimiento de registro 20, el usuario dispone de una clave privada xi y de un certificado [Ai, ei] de miembro de la lista, que se memorizan, por ejemplo, en una tarjeta de circuito integrado 7.
Con la ayuda de un tal certificado, el usuario puede generar una firma de un mensaje M que pertenece al conjunto {O, 1}*.
A este efecto, la autoridad de confianza publica, según la invención, un número m de secuencia, elegido, de forma aleatoria, en el conjunto QR(n). Este número deberá utilizarse por los miembros de la lista para firmar un mensaje durante una secuencia dada. Los números respectivos de secuencias diferentes no deben poder estar vinculados. En particular, debe ser imposible calcular un logaritmo discreto de un número de secuencia dado, con respecto a la base de otro número de secuencia, es decir que no debe ser posible, en la práctica, calcular números enteros x e y tales que: mx = m,y (mod n), siendo m y m’ números de secuencia.
Este número m de secuencia se puede calcular en función de la fecha de inicio de la secuencia: m = F(fecha). Esta función F se elige, por ejemplo, igual a:
en donde H’ es una función de resumen criptográfico, resistente a las colisiones, tal como una secuencia binaria de
* 0,1 21
p
cualquier longitud indicada 0,1 , se transforma en una secuencia binaria de longitud 21p indicada . Por lo tanto, es fácil comprobar la validez del número de secuencia aplicando la fórmula (19).
El procedimiento de firma de un mensaje está diseñado para permitir, en particular, a un usuario demostrar que conoce un certificado de miembro y una clave privada de miembro y que utiliza el número de secuencia correcto.
Para firmar un mensaje M, un miembro de la lista debe ejecutar, por ejemplo, en su tarjeta de circuito integrado 7, conectada a un terminal 2 y memorizando su certificado [Ai, ei] y su clave privada xi, un procedimiento 30 de firma,
imagen1
8
según se ilustra en la Figura 4. Este procedimiento comprende, ante todo, una etapa 31 de generación aleatoria de un
0,1 21
p
número  que pertenece al conjunto .
Además, comprende una etapa 32 que consiste en calcular los números siguientes a partir de :
imagen4
De conformidad con la invención, se calcula, asimismo, el número siguiente:
imagen1
En la etapa 33 siguiente, se genera, de una forma aleatoria, los números rimagen1 1 en el conjunto de los números binarios, con signo, en imagen1
imagen1 bits, indicado imagen1 imagen1 , r2 en el conjunto , r3 en el conjunto y r4 en el conjunto . Luego, en la etapa 34, se calcula las magnitudes siguientes:
imagen1
Según la invención, se calcula, asimismo, el número siguiente:
imagen1
A continuación, en la etapa 35, se calcula los números siguientes:
imagen5
en donde ║ representa la operación de concatenación,
imagen1
siendo sl, s2, s3, s4 números enteros relativos. La firma está, al final, constituida por el conjunto de números siguientes:
imagen6
que se emite, por ejemplo, por la red 5.
La verificación de una firma de un mensaje M se desarrolla ejecutando el procedimiento 40 ilustrado en la Figura 5. Este procedimiento comprende, ante todo, en la etapa 41, el cálculo de los números siguientes:
9
imagen1
Según la invención. Comprende, además, el cálculo de los números siguientes:
imagen1
La firma es auténtica si las condiciones siguientes se verifican en la etapa 42:
imagen1
Si no se cumplen estas condiciones, la firma no es válida (etapa 45).
Además, accediendo a todas las firmas que se emitieron durante una secuencia dada, por ejemplo en la base de datos 4, se puede verificar fácilmente, en la etapa 43, con la ayuda del parámetro T4, si un miembro de la lista ha 10 firmado varias veces: todas las firmas emitidas por un miembro de la lista comprenden un parámetro T4 que tiene el
mismo valor para un número de secuencia dado.
Conviene señalar, además, que un miembro no puede engañar utilizando otro valor porque T4 está muy vinculado a T1. En efecto, la fórmula de cálculo de T1 se puede escribir también de la manera siguiente:
imagen1
15 Si T4 ya se encuentra en el conjunto de las firmas emitidas para un número de secuencia dado, se deduce de ello que la firma fue ya emitida por un miembro de la lista para este número de secuencia (etapa 46).
Para incluir una posibilidad de revocación de un miembro de la lista, el método, que se acaba de describir, se puede modificar de la forma siguiente.
El procedimiento de organización 10 de la lista comprende, además, en la etapa 14, la elección aleatoria de un 20 número u, que pertenece al conjunto QR(n), y la definición de dos conjuntos Eadd y Edel que están inicialmente vacíos.
La clave pública PK de la autoridad de confianza está, entonces, constituida por la secuencia de números enteros (n, a, a0, b, g, h, u) y conjuntos Eadd y Edel.
Durante el procedimiento de registro 20, 20’, el calculador 1 de la autoridad de confianza atribuye, en la etapa 25’, el parámetro ui al nuevo miembro Ui de la lista, siendo este parámetro tal que ui = u, y actualiza el valor del 25 parámetro u sustituyendo este valor por uei.
El certificado del nuevo miembro reagrupa, entonces, los enteros Ai, ei y ui, siendo este certificado memorizado, en la etapa 26’, para modificaciones futuras y se transmite al nuevo miembro.
La autoridad de confianza introduce, asimismo, el número ei atribuido al nuevo miembro en el conjunto Eadd.
A la recepción de su certificado, el nuevo miembro verifica, además, que:
10
imagen1
Los otros miembros Uj de la lista deben, entonces, ejecutar un procedimiento de actualización para tener en cuenta la llegada del nuevo miembro y por lo tanto, la modificación del parámetro de lista u. Este procedimiento consiste en recalcular su parámetro uj de la forma siguiente:
imagen4
De esta manera, la relación (47) se verifica siempre para todas las parejas (uj, ej) de todos los miembros de la lista.
El procedimiento de revocación de un miembro Uk de la lista, cuyo certificado es (Ak, ek, uk) consiste, para la autoridad de confianza, en modificar el parámetro u de la manera siguiente:
imagen7
y en introducir el parámetro ek en el conjunto Edel.
Además, cada miembro no revocado Uj de la lista debe tener en cuenta esta revocación (cambio del parámetro u) recalculando su parámetro uj de la forma siguiente:
imagen1
15 siendo a y b tales que aej + bek = 1 Para determinar a y b, basta aplicar el algoritmo de Euclides extendido, que consiste en efectuar una serie de divisiones euclidianas. Conviene señalar que el miembro revocado (que posee ek) no puede determinar a y b con la ayuda de la fórmula (50), que se convierte en ek(a + b) = 1, y por lo tanto, recalcular el parámetro uk. 20 Durante el procedimiento 30 de firma por un miembro de la lista, es preciso, además, en la etapa 31, elegir, de
0,1 21
p
forma aleatoria, los números w1, w2 y w3 de longitud binaria igual a 21p, es decir, que pertenezca al conjunto  , y calcular, en la etapa 32, los números siguientes:
imagen1
imagen1 Además, es preciso, en la etapa 33, elegir, de forma aleatoria, números rimagen1 5, r6, r7 que pertenecen al conjunto y números r8 y r9 que pertenecen al conjunto
y luego, calcular, en la etapa 34,
los números siguientes:
imagen8
11
imagen1
La firma está, entonces, constituida por el conjunto de números siguientes:
imagen1
El procedimiento 40 de verificación de una firma comprende entonces, además, el cálculo de los números siguientes en la etapa 41:
imagen1
La firma es auténtica si las condiciones suplementarias siguientes se verifican en la etapa 42:
imagen1
10 Conviene señalar que, contrariamente a la firma de grupo descrita en el documento [1], no es posible, para la autoridad de confianza, reencontrar la identidad de un signatario, es decir el número Ai del certificado del signatario a partir de una firma de lista, tal como se ha descrito. En efecto, contrariamente al método descrito en este documento, la autoridad de confianza no utiliza una clave privada x para generar el parámetro b y por lo tanto, el número Ai no puede deducirse de T1 y T2.
15 Además, la firma generada por un miembro revocado Uk se detectará no válida. En efecto, el parámetro T6 hace intervenir el parámetro uk que fue determinado a partir del parámetro común u, y el parámetro t8, que se calcula para verificar la firma, hace intervenir, asimismo, el parámetro u que fue modificado como resultado de la revocación del miembro k. Se deduce de ello que, en el momento de la verificación de la firma, los parámetros T6 y t8 son incoherentes y, por lo tanto, que la igualdad entre c y c’ no se puede verificar por la firma del miembro k.
20 El método de firma de lista, que se acaba de describir, se puede aplicar a un método de voto electrónico. El método de voto electrónico, según la invención, comprende varias fases cuya ejecución de los procedimientos del método de firma de lista se describe a continuación.
Este método implica la intervención de una autoridad de confianza 1 organizadora de las elecciones que ejecuta, a este efecto, un procedimiento 50 de organización del escrutinio. Este procedimiento consiste en generar los
25 datos necesarios para el buen desarrollo de las elecciones, una base de datos pública accesible a todos, en donde se recogen las papeletas de voto. En el curso de la organización del escrutinio, se designa, asimismo, escrutadores que se encargarán de recontar los votos y determinar el resultado de la elección.
La autoridad organizadora procede, ante todo, a la generación de los diferentes parámetros necesarios para el establecimiento de una firma de lista, ejecutando el procedimiento 10 de organización de una firma de lista. A 30 continuación, los electores deben inscribirse previamente, por ejemplo en una alcaldía, en una lista electoral de modo
12
5
10
15
20
25
30
35
40
45
que reciba todos los datos necesarios, a saber una clave privada xi y un certificado (Ai, ei, ui), para generar una firma de lista. Con la ayuda de estos parámetros, los electores pueden participar en todas las elecciones futuras. Este procedimiento de inscripción puede, por ejemplo, ejecutarse entre una tarjeta de circuito integrado 7 y un terminal 2, memorizando la tarjeta de circuito integrado, al final del procedimiento, el certificado del elector.
Antes de una elección, la autoridad organizadora procede a la actualización de las listas electorales ejecutando el procedimiento 20, 20’ para los electores nuevamente inscritos, y retirando (revocando) los derechos de firma de lista a todas las personas excluidas de los registros de electores (por ejemplo, las personas que hayan abandonado la circunscripción o despojados de sus derechos cívicos). Estas revocaciones se realizan ejecutando el procedimiento de revocación antes descrito. En la etapa 51 del procedimiento 50, la autoridad organizadora publica, asimismo, un número de secuencia m necesario para el establecimiento de una nueva secuencia de firma de lista, de modo que se impida a los electores votar (firmar) dos veces en esta elección.
Por otro lado, los escrutadores procederán a crear 52 las parejas de claves públicas/privadas necesarias, de tal modo que todos deban cooperar para poder descifrar un mensaje cifrado con la clave pública. A este efecto, el sistema criptográfico establecido se elige de modo que se permita a un elector cifrar un mensaje (papeleta de voto) con la ayuda de al menos una clave pública, imponiendo la cooperación de todos los escrutadores para utilizar la o las claves privadas correspondientes y así descifrar el mensaje.
La repartición de las claves privadas de descifrado entre todos los escrutadores se puede efectuar, del modo siguiente.
Se considera g un generador del grupo cíclico G. Una clave privada xi respectiva se atribuye a cada escrutador i que calcule el número yi que pertenece a G tal que:
imagen1
La clave pública Y a utilizar por los electores se obtiene por la fórmula siguiente:
imagen1
y la clave privada X correspondiente compartida por todos los escrutadores i es la siguiente:
imagen1
Se puede llegar a un resultado análogo procediendo a un cifrado utilizando todas las claves públicas respectivas de los escrutadores, necesitando el descifrado el conocimiento de todas las claves privadas correspondientes.
Antes de ir a votar, cada elector debe actualizar su certificado de firma de lista, de conformidad con el procedimiento de modificación antes descrito, con la ayuda de los parámetros anteriormente publicados. Si el elector no está excluido de las listas electorales, se podrá efectuar esta modificación.
Durante la apertura de las oficinas de voto, cada elector emite una papeleta de voto ejecutando, en un terminal, un procedimiento 60. En la etapa 61, el elector selecciona su voto vi y cifra este último con la ayuda de la clave pública de los escrutadores para obtener un voto cifrado Di. A continuación, firma el voto cifrado con la ayuda del método de firma de lista para obtener una firma Si. La papeleta de voto constituida por el conjunto (Di, Si) del voto y de la firma, se publica, a continuación, de manera anónima, en una base de datos pública 4.
En la etapa 62, se realiza el cifrado del voto utilizando un algoritmo de cifrado probabilista (es decir que la probabilidad de que dos cifrados de un mismo mensaje sean idénticos es casi nula), tal como, por ejemplo, el algoritmo de El Gamal o de Paillier. Si se aplica el algoritmo de El Gamal, el cifrado se efectúa calculando los números siguientes:
imagen9
imagen10
tal como se describió antes, ejecutando el procedimiento 30 por su tarjeta de circuito integrado 7, que luego se transmite al terminal 2.
El elector Ej ha generado así su papeleta de voto (Dj, Sj) que envía 64 a la base de datos pública 4 por medio de un canal de transmisión anónima, es decir, impidiendo relacionar un mensaje transmitido con el emisor de este último. El elector puede, a este efecto, utilizar un terminal público o una red de mezcladores.
Al final del escrutinio, los escrutadores efectúan el recuento del escrutinio ejecutando el procedimiento 70 en el terminal 3. Este procedimiento consiste, ante todo, en generar 71 la clave privada de descifrado X a partir de sus claves
13
privadas respectivas xi y con la ayuda de la fórmula (77). Luego, en la etapa 72, acceden a la base de datos pública 4 de las papeletas de voto para obtener las papeletas de voto (Di, Si) y para descifrarlas.
El descifrado propiamente dicho de las papeletas de voto consiste para cada papeleta de voto emitida (etapa 73) a verificar 74 la firma Si ejecutando el procedimiento 40 de verificación de firma de lista antes descrita y si la firma es válida y única (etapa 75), a descifrar 76 el voto cifrado Dj aplicando la fórmula siguiente:
imagen1
Los votos vj así descifrados y verificados, con el resultado de la verificación correspondiente, se introducen 77 en la base de datos 4 de las papeletas de voto, en asociación con la papeleta de voto (Dj, Sj).
La clave privada de descifrado X se publica, asimismo, para permitir a todos verificar el recuento de las papeletas de voto.
Una vez recontadas todas las papeletas de voto, este procedimiento 70 calcula, en la etapa 78, el resultado de la elección y actualiza la base de datos pública de las papeletas de voto, introduciendo en ella este resultado y en caso necesario, la clave privada de descifrado X.
Resulta fácil constatar que las propiedades antes enunciadas, necesarias para el establecimiento de un sistema de voto electrónico, se verifican por el método descrito con anterioridad. En efecto, cada elector solamente puede votar una sola vez puesto que es fácil encontrar, en la base de datos, dos firmas emitidas por un mismo elector para un mismo escrutinio (para un mismo número de secuencia). En este caso, los escrutadores pueden no tener en cuenta los dos votos o contabilizar un solo voto si son idénticos.
Como alternativa, se puede prever que, en la etapa 64 de introducción de un voto en la base de datos 4, se comprueba que el voto emitido por el elector ya no figura en la base de datos, al buscar en ella el parámetro T4 propio del elector. Si se detecta, de este modo, que el elector ya ha votado para este escrutinio, el nuevo voto no se introducirá en la base de datos 4.
En consecuencia, no es posible comenzar el recuento de las papeletas de voto antes del final del escrutinio si al menos uno de los escrutadores respeta la regla, puesto que es precisa la presencia de todos los escrutadores para realizar el recuento de una papeleta de voto. Por último, el resultado de la elección es verificable por todos, puesto que los escrutadores proporcionan, en la base de datos, todos los elementos necesarios (en particular, la clave privada de recuento) para proceder a una tal verificación y que la verificación de una firma es accesible para todos, utilizando la clave pública PK=(n, a, a0, b, g, h, u) de la autoridad de confianza. De este modo, cualquier persona de confianza podrá efectuar el recuento de la misma manera que los escrutadores y por lo tanto, será posible cerciorarse de que lo realizó de forma correcta.
Por supuesto, las claves de los escrutadores quedarán obsoletas al final del escrutinio, puesto que se hicieron públicas.
14
5
10
15
20
25
30
35
40
45

Claims (13)

  1. REIVINDICACIONES
    1.- Un método de firma de lista que comprende al menos:
    una fase de organización (10) que consiste, para una autoridad de confianza (1), en definir parámetros de puesta en práctica de una firma electrónica anónima, que presenta una clave privada y una clave pública correspondiente,
    una fase de registro (20, 20’) de personas en una lista de miembros autorizados para generar una firma electrónica propia para los miembros de la lista, en cuyo transcurso cada persona (2) a registrar calcula (24) una clave privada (xi) con la ayuda de parámetros proporcionados por la autoridad de confianza y de parámetros elegidos, de forma aleatoria, por la persona a registrar, y la autoridad de confianza entrega (25’) a cada persona a registrar un certificado ([Ai, ei]) de miembro de la lista,
    -
    una fase de firma (30), en cuyo transcurso un miembro de la lista genera (35) y emite (36) una firma propia a los miembros de la lista, siendo esta firma constituida de manera que contenga una prueba de que el miembro de la lista, que ha emitido la firma, hace conocer un certificado ([Ai, ei]) de miembro de la lista y
    -
    una fase de comprobación (40) de la firma emitida que comprende etapas (41, 42) de aplicación de un algoritmo predefinido para poner en evidencia la prueba de que la firma fue emitida por una persona en posesión de un certificado de miembro de la lista, caracterizado porque comprende, además:
    -
    una fase de definición de una secuencia que consiste en que la autoridad de confianza (1) genere un número de secuencia m a utilizar en la fase de firma (30), una firma (Sigliste), generada durante la fase de firma, que comprende un elemento de firma (T4) que es común a todas las firmas emitidas por un mismo miembro de la lista, con un mismo número de secuencia, y que contiene una prueba de que el número de secuencia m fue utilizado para generar la firma, comprendiendo la fase de verificación (40), además, una etapa de verificación (43) de la prueba de que el número de secuencia fue utilizado para generar la firma;
    -
    una fase de revocación de un miembro de la lista para retirar un miembro de la lista, en cuyo transcurso la autoridad de confianza (1) retira de la lista el miembro a retirar y actualiza los parámetros de puesta en práctica de la firma electrónica anónima, para tener en cuenta la retirada del miembro de la lista y
    — una fase de actualización de certificados ([Ai, ei]) de los miembros de la lista para tener en cuenta modificaciones de la composición de la lista.
  2. 2.- El método, según la reivindicación 1, caracterizado porque que la fase de organización (10) comprende la definición de un parámetro común (u) que depende de la composición de la lista, la fase de registro (20, 20’) de una persona en la lista que comprende la definición de un parámetro (ui) propio de la persona a registrar, que se calcula en función del parámetro (u) que depende de la composición de la lista y que está integrado en un certificado ([Ai, ei, ui]) remitido a la persona, comprendiendo la fase de registro (20, 20’) una etapa de actualización del parámetro común (u) que depende de la composición de la lista, la fase de revocación de un miembro de la lista, que comprende una etapa de modificación del parámetro común (u) que depende de la composición de la lista, para tener en cuenta la retirada del miembro de la lista, y la fase de actualización de certificados de los miembros de la lista que presenta una etapa de actualización del parámetro (ui), propio de cada miembro de la lista, para tener en cuenta modificaciones de la composición de la lista.
  3. 3.- El método, según la reivindicación 1 o 2, caracterizado porque una firma propia a un miembro de la lista y que posee el certificado ([Ai, ei]) comprende parámetros T1, T2, T3, tales como:
    imagen1
    siendo  un número elegido, de forma aleatoria, en el momento de la fase de firma (30), y siendo b, g, h y n parámetros generales de puesta en práctica de la firma de grupo, tales como los parámetros b, g y h, no se pueden deducir los unos de los otros mediante funciones de elevación de potencia entera módulo n, por lo que el número Ai y por lo tanto, la identidad del miembro de la lista que posee el certificado ([Ai, ei]) no puede deducirse de una firma emitida por el miembro.
  4. 4.- El método, según una de las reivindicaciones 1 a 3, caracterizado porque el número m de una secuencia, utilizado para generar una firma de lista, se calcula en función de una fecha de inicio de secuencia.
  5. 5.- El método, según la reivindicación 4, caracterizado porque la función de cálculo del número de una secuencia es de la forma:
    imagen1
    15
    en donde H es una función del resumen criptográfico resistente a las colisiones, d es la fecha de inicio de la secuencia y n es un parámetro general de la puesta en práctica de la firma de grupo.
  6. 6.- El método, según una de las reivindicaciones 1 a 5, caracterizado porque una firma (Sigliste) emitida por un miembro de la lista contiene un parámetro (T4) que se calcula en función del número de secuencia y de la clave privada
    (xi) del miembro signatario.
  7. 7.- Método según la reivindicación 6,caracterizado porque el parámetro T4 de una firma emitida por un miembro de la lista y que depende del número de secuencia m y de la clave privada xi del miembro signatario se obtiene por la fórmula siguiente:
    imagen1
    siendo n un parámetro general de puesta en práctica de la firma de grupo, y porque la firma comprende la prueba de que el parámetro T4 fue calculado con la clave privada xi del miembro de la lista que ha emitido la firma.
  8. 8.- Método de voto electrónico que comprende una fase de organización (50) de las elecciones, en cuyo transcurso una autoridad organizadora procede a la generación de parámetros necesarios para un escrutinio y atribuye a escrutadores de las claves que les permiten descifrar y comprobar las papeletas de voto, una fase de atribución de un derecho de firma a cada uno de los electores, una fase de voto (60) en cuyo transcurso los electores firman una papeleta de voto y una fase de recuento (70) en cuyo transcurso los escrutadores que comprueban las papeletas de voto y calculan el resultado del escrutinio en función del contenido de las papeletas de voto descifradas y válidas, caracterizado porque pone en práctica un método de firma de lista, según una de las reivindicaciones 1 a 7, para firmar las papeletas de voto, siendo cada elector registrado como miembro de una lista y siendo un número de secuencia m generado para el escrutinio, para detectar si un mismo elector ha emitido, o no, varias papeletas de voto para el escrutinio.
  9. 9.- Método según la reivindicación 8, caracterizado porque la fase de organización (50) comprende la entrega a cada escrutador de una clave pública y de una clave privada, porque las papeletas de voto (vi) son cifradas (62) con la ayuda de una clave pública (Y) obtenida por el producto de las claves públicas (yi) respectivas de todos los escrutadores y porque la clave privada (X) de descifrado correspondiente se obtienen calculando la suma de claves privadas (xi) respectivas de todos los escrutadores.
  10. 10.- Método según la reivindicación 9, caracterizado porque el cifrado(62) de las papeletas de voto se efectúa con la ayuda de un algoritmo de cifrado probabilista.
  11. 11.- Método según una de las reivindicaciones 8 a 10, caracterizado porque las papeletas de voto emitidas por los electores se almacenan en una base de datos pública (4), porque el resultado de la comprobación y del recuento de cada papeleta de voto se guarda en la base de datos en asociación con la papeleta de voto y porque se publica la clave privada (X) de descifrado de las papeletas de voto.
  12. 12.- Calculador para la puesta en práctica de una firma de lista, que comprende medios para:
    -
    generar parámetros de puesta en práctica de una firma electrónica anónima propia de los miembros de una lista, conteniendo los parámetros una clave privada y una clave pública correspondiente y
    -
    transmitir a cada persona (2), a registrar en la lista, parámetros a utilizar por la persona a registrar para calcular (24) una clave privada (xi) y un certificado ([Ai, ei]) de miembro de la lista,
    caracterizado porque comprende, además, medios para:
    -
    generar un número de secuencia m a utilizar por los miembros de la lista para emitir una firma anónima propia de los miembros de la lista, una firma anónima (Sigliste) emitida por un miembro de la lista que comprende un elemento de firma (T4) que es común a todas las firmas emitidas por el mismo miembro de la lista con un mismo número de secuencia, y que contiene una prueba de que el número de secuencia m fue utilizado para generar la firma;
    — retirar de la lista un miembro a revocar de la lista y actualizar los parámetros de puesta en práctica de la firma electrónica anónima propia de los miembros de la lista, para tener en cuenta la retirada del miembro de la lista y
    - actualizar los certificados ([Ai, ei]) de los miembros de la lista a cada modificación de la composición de la lista.
  13. 13.- Calculador para la puesta en práctica de un método de voto electrónico, que comprende medios para:
    generar, en el transcurso de una fase de organización de un escrutinio de los parámetros de puesta en práctica de una firma electrónica anónima propia de los miembros de una lista de electores, conteniendo los parámetros una clave privada y una clave pública correspondiente;
    atribuir a los escrutadores claves que les permitan descifrar y comprobar las papeletas de voto emitidas para el escrutinio y
    transmitir a cada miembro (2) de la lista de electores del escrutinio de los parámetros a utilizar por el elector para calcular (24) una clave privada (xi) y un certificado ([Ai, ei]) de miembro de la lista de electores del escrutinio,
    16
    caracterizado porque comprende, además, medios para:
    -
    generar un número de secuencia m propio al escrutinio a utilizar por los miembros de la lista de electores para firmar una papeleta de voto, una firma (Sigliste) de una papeleta de voto, que comprende un elemento de firma (T4) que es común a todas las firmas emitidas con un mismo número de secuencia por un mismo miembro de la lista de electores del escrutinio y que contiene una prueba que el número de secuencia m fue utilizado para generar la firma;
    -
    retirar de la lista un elector del escrutinio a revocar y actualizar los parámetros de puesta en práctica de la firma electrónica anónima propia a los miembros de la lista de electores del escrutinio, para tener en cuenta de la retirada del elector y
    -
    actualizar los certificados ([Ai, ei]) de los electores del escrutinio a cada modificación de la composición de la lista de los electores del escrutinio.
    14 - Terminal (2) para emitir una firma de lista que comprende medios para:
    - recibir parámetros de cálculo de una clave privada (xi);
    -
    calcular (24) la clave privada (xi) con la ayuda de los parámetros recibidos y de parámetros elegidos de forma aleatoria;
    — recibir (25) un certificado ([Ai, ei]) de miembro de una lista;
    -
    generar (35) una firma propia a los miembros de la lista, siendo esta firma constituida de modo que contenga una prueba de que el miembro de la lista que emitió la firma, conoce un certificado ([Ai, ei]) de miembro de la lista y
    — comprobar una firma emitida por un miembro de la lista aplicando un algoritmo predefinido para poner en evidencia la prueba de que la firma fue emitida por una persona en posesión de un certificado de miembro de la lista, caracterizado porque comprende, además, medios para:
    — recibir un número de secuencia m a utilizar en una fase de firma (30)
    - generar una firma (Sigliste) calculando un elemento de firma (T4) que es común a todas las firmas emitidas por un mismo miembro de la lista con un mismo número de secuencia y que contiene una prueba de que el número de secuencia m fue utilizado para generar la firma;
    comprobar la prueba de que el número de secuencia m fue utilizado para generar una firma y
    recibir un nuevo certificado ([Ai, ei]) de miembro de la lista a cada modificación de la composición de la lista. 15.- Terminal (2) para emitir una firma de papeleta de voto a un escrutinio, que comprende medios para:
    - recibir parámetros de cálculo de una clave privada (xi);
    — calcular (24)la clave privada (xi) con la ayuda de los parámetros releídos y de parámetros elegidos de forma aleatoria;
    — recibir (25) un certificado ([Ai, ei]) de miembro de una lista de electores del escrutinio;
    -
    generar (35) una firma de una papeleta de voto, estando esta firma constituida de modo que contenga una prueba de que el miembro de la lista, que ha emitido la firma, conoce un certificado ([Ai, ei]) de miembro de la lista de electores y
    -
    comprobar una firma de una papeleta de voto, emitida por un miembro de la lista de elector, aplicando un algoritmo predefinido para poner en evidencia la prueba de que la firma fue emitida por una persona en posesión de un certificado de miembro de la lista, caracterizado porque comprende, además, medios para:
    - recibir un número de secuencia m a utilizar para firmar una papeleta de voto
    generar una firma (Sigliste)de una papeleta de voto calculando un elemento de firma (T4) que es común a todas las firmas emitidas por un mismo miembro de la lista de electores con un mismo número de secuencia y que contiene una prueba de que el número de secuencia m fue utilizado para generar la firma;
    comprobar la prueba de que el número de secuencia m fue utilizado para generar una firma de una papeleta de voto y
    - recibir un nuevo certificado ([Ai, ei]) de miembro de la lista de electores a cada modificación de la composición de la lista de electores.
    17
ES03748214T 2002-07-19 2003-07-16 Método de firma de lista y aplicación al voto electrónico. Expired - Lifetime ES2360044T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0209218A FR2842680A1 (fr) 2002-07-19 2002-07-19 Procede de signature de liste et application au vote electronique
FR0209218 2002-07-19

Publications (1)

Publication Number Publication Date
ES2360044T3 true ES2360044T3 (es) 2011-05-31

Family

ID=29797594

Family Applications (1)

Application Number Title Priority Date Filing Date
ES03748214T Expired - Lifetime ES2360044T3 (es) 2002-07-19 2003-07-16 Método de firma de lista y aplicación al voto electrónico.

Country Status (8)

Country Link
US (1) US7657738B2 (es)
EP (1) EP1523824B1 (es)
AT (1) ATE497659T1 (es)
AU (1) AU2003267523A1 (es)
DE (1) DE60335953D1 (es)
ES (1) ES2360044T3 (es)
FR (1) FR2842680A1 (es)
WO (1) WO2004010642A1 (es)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7043760B2 (en) * 2000-10-11 2006-05-09 David H. Holtzman System and method for establishing and managing relationships between pseudonymous identifications and memberships in organizations
US7197470B1 (en) * 2000-10-11 2007-03-27 Buzzmetrics, Ltd. System and method for collection analysis of electronic discussion methods
US7185065B1 (en) * 2000-10-11 2007-02-27 Buzzmetrics Ltd System and method for scoring electronic messages
CN1954546B (zh) * 2004-05-19 2012-08-22 法国电信公司 用于生成名单签名的方法和系统
EP1615371A3 (en) * 2004-07-06 2006-05-03 Roberto Luis Ferrer Serrano System of management and communication by electronic signature
JP4816458B2 (ja) * 2004-09-03 2011-11-16 日本電気株式会社 グループ署名システム、メンバ状態判定装置、グループ署名方法及びメンバ状態判定プログラム
US9158855B2 (en) * 2005-06-16 2015-10-13 Buzzmetrics, Ltd Extracting structured data from weblogs
US20070100779A1 (en) * 2005-08-05 2007-05-03 Ori Levy Method and system for extracting web data
US8061589B2 (en) * 2006-10-20 2011-11-22 Barry Cohen Electronic voting system
FR2911025A1 (fr) * 2006-12-27 2008-07-04 France Telecom Procede de signature de liste anonyme et tracable sans levee d'anonymat
FR2911024A1 (fr) * 2006-12-27 2008-07-04 France Telecom Procede de signature de liste anonyme et correlable
US8645227B2 (en) * 2008-01-31 2014-02-04 The Western Union Company Systems and methods to facilitate payment of shipped goods
DE102011010627A1 (de) * 2011-02-08 2012-08-09 Giesecke & Devrient Gmbh Verfahren zur Programmierung eines Mobilendgeräte-Chips
US8484195B2 (en) 2011-05-11 2013-07-09 Yottavote, Inc. Anonymous referendum system and method
WO2015105479A1 (en) * 2014-01-07 2015-07-16 Empire Technology Development Llc Anonymous signature scheme
CN107943523B (zh) * 2017-11-15 2021-03-16 中国银行股份有限公司 一种电子银行的用户权限判定方法和装置
FR3091107A1 (fr) * 2018-12-24 2020-06-26 Orange Procédé et système de génération de clés pour un schéma de signatures anonymes
US11121864B1 (en) * 2020-03-13 2021-09-14 International Business Machines Corporation Secure private key distribution between endpoint instances
KR102698739B1 (ko) * 2023-05-19 2024-08-26 (주)한국전자투표 전자 투표 결과로 생성된 투표검증키를 이용하여 누구든지 전자 투표 결과를 검증 가능한 전자 투표 시스템 및 그 시스템의 동작 방법
KR102699628B1 (ko) * 2023-05-19 2024-08-27 (주)한국전자투표 전자 투표 결과로 생성된 투표검증키를 이용하여 누구든지 전자 투표 과정을 검증 가능한 전자 투표 시스템 및 그 시스템의 동작 방법

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0804003A3 (en) * 1996-04-26 2000-11-15 Canon Kabushiki Kaisha Digital signature method and communication system
US6250548B1 (en) * 1997-10-16 2001-06-26 Mcclure Neil Electronic voting system
US6298153B1 (en) * 1998-01-16 2001-10-02 Canon Kabushiki Kaisha Digital signature method and information communication system and apparatus using such method
JP2001202013A (ja) * 2000-01-21 2001-07-27 Nec Corp 匿名参加権限管理システム
US7028180B1 (en) * 2000-06-09 2006-04-11 Northrop Grumman Corporation System and method for usage of a role certificate in encryption and as a seal, digital stamp, and signature
US20020077887A1 (en) * 2000-12-15 2002-06-20 Ibm Corporation Architecture for anonymous electronic voting using public key technologies
US7729991B2 (en) * 2001-03-20 2010-06-01 Booz-Allen & Hamilton Inc. Method and system for electronic voter registration and electronic voting over a network
US20030190046A1 (en) * 2002-04-05 2003-10-09 Kamerman Matthew Albert Three party signing protocol providing non-linkability
EP1497948A4 (en) * 2002-04-15 2007-03-21 Ntt Docomo Inc SIGNATURE SCHEMES USING BILINEAR PICTURES

Also Published As

Publication number Publication date
US20060015737A1 (en) 2006-01-19
US7657738B2 (en) 2010-02-02
WO2004010642A1 (fr) 2004-01-29
FR2842680A1 (fr) 2004-01-23
AU2003267523A1 (en) 2004-02-09
DE60335953D1 (de) 2011-03-17
EP1523824A1 (fr) 2005-04-20
EP1523824B1 (fr) 2011-02-02
ATE497659T1 (de) 2011-02-15

Similar Documents

Publication Publication Date Title
ES2360044T3 (es) Método de firma de lista y aplicación al voto electrónico.
CN1954546B (zh) 用于生成名单签名的方法和系统
Grewal et al. Du-vote: Remote electronic voting with untrusted computers
Chow et al. Robust Receipt-Free Election System with Ballot Secrecy and Verifiability.
Kumar et al. A secure anonymous e-voting system using identity-based blind signature scheme
Achenbach et al. Improved coercion-resistant electronic elections through deniable re-voting
CN112995136A (zh) 一种基于联盟链的k-out-of-m匿名投票方法
Haenni et al. Secure internet voting on limited devices with anonymized {DSA} public keys
Araújo et al. Towards practical and secure coercion-resistant electronic elections
Guasch et al. How to challenge and cast your e-vote
Fouard et al. Survey on electronic voting schemes
Jafari et al. A new secure and practical electronic voting protocol without revealing voters identity
Sultan et al. PairVoting: A secure online voting scheme using Pairing-Based Cryptography and Fuzzy Extractor
Spycher et al. A novel protocol to allow revocation of votes a hybrid voting system
CN113383512B (zh) 用于生成匿名签名方案的密钥的方法和系统
CN109544772B (zh) 一种安全高效的电子投票方法
Vangujar et al. A Novel Approach to e-Voting with Group Identity Based Identification and Homomorphic Encryption
Akinyokun Secure voter authentication for poll-site elections in developing countries
Canard et al. How to fit cryptographic e-voting into smart cards
Rezvani et al. MIZAN: A secure E-voting schema with vote changeability
Kim et al. A new universally verifiable and receipt-free electronic voting scheme using one-way untappable channels
Huszti A secure electronic voting scheme
Ronquillo Securing e-voting systems
Smart Anonymity vs. traceability: revocable anonymity in remote electronic voting protocols
Al-Saidi et al. A Secure Electronic Voting Scheme Based on EVOX-MA and REVS-E Voting Blind Signature Protocols