WO2023047003A1 - Método de registro distribuido para el control de acceso anónimo - Google Patents
Método de registro distribuido para el control de acceso anónimo Download PDFInfo
- Publication number
- WO2023047003A1 WO2023047003A1 PCT/ES2022/070587 ES2022070587W WO2023047003A1 WO 2023047003 A1 WO2023047003 A1 WO 2023047003A1 ES 2022070587 W ES2022070587 W ES 2022070587W WO 2023047003 A1 WO2023047003 A1 WO 2023047003A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- value
- distributor
- user
- function
- distributors
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 39
- 230000009471 action Effects 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 7
- 230000009467 reduction Effects 0.000 claims description 6
- 238000012795 verification Methods 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000000295 complement effect Effects 0.000 description 3
- 230000001010 compromised effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 238000012550 audit Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- YFXPPSKYMBTNAV-UHFFFAOYSA-N bensultap Chemical compound C=1C=CC=CC=1S(=O)(=O)SCC(N(C)C)CSS(=O)(=O)C1=CC=CC=C1 YFXPPSKYMBTNAV-UHFFFAOYSA-N 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- VLCQZHSMCYCDJL-UHFFFAOYSA-N tribenuron methyl Chemical compound COC(=O)C1=CC=CC=C1S(=O)(=O)NC(=O)N(C)C1=NC(C)=NC(OC)=N1 VLCQZHSMCYCDJL-UHFFFAOYSA-N 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic 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/3218—Cryptographic 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 using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
Definitions
- the invention relates to a method and a distributed registration system for anonymous access control to resources and services.
- a first object of the invention is a computer-assisted method of distributed registration that allows access control with limited communication between parties, minimal user interaction, and no need to store identification information.
- Another object of the invention is a distributed registration system comprising means for managing anonymous access to resources and services.
- Some solutions such as those reflected in the documents W02008065341A2 (MAIDSAFE FOUND) and GB2444346, refer to distributed network systems that provide privacy, security and freedom to their users, facilitating their intercommunication and anonymous access to their own or shared resources. These systems allow access through anonymous authentication using encryption algorithms.
- document W02017145010A1 (NCHAIN HOLDINGS) describes a computer-implemented method that controls access to a digital wallet implemented using blockchain technology.
- the method divides a verification element (private key) into multiple fractions that are transmitted by means of a common secret between two or more nodes.
- Document CN111416705A (NANJING RUBAN QUANTUM TECHNOLOGY) introduces a system and method for electronic voting based on cryptographic anonymous identification, blockchain and secret sharing technologies, capable of resisting quantum computer attacks and reducing calculation times for the use of digital signatures blind.
- Document ES2255455A1 (SCYTL ON UNE WORLD SECURITY) describes a method for securely conducting votes and consultations electronically through a communications network using interrelated cryptographic processes and protocols, designed to facilitate the tasks of issuing votes, counting, and verification. safely, allowing the privacy of the voters, the correction of the results and the impossibility of coercion and sale of votes.
- the present invention refers to a computer-assisted method of anonymous and distributed access control to remote resources or services that makes use of one or more central authorities, or distributors, and N authorities in charge of controlling access to the resource or service, called guards, where N is greater than or equal to 1, and where the method comprises the steps of: generating a function or a value m i by each of the distributors; divide each function q i (x) or each value into N parts q ij (x) or m ij ), such that the function q i (x) is a linear combination of the parts q ij (x) or the value is equal to the sum of the N parts each distributor sends a part of its function q ij (x) or of its value m ij to each guard; if there is more than one distributor, calculate for each guard an eigenfunction p,.(x) equal to the sum of the functions received from each distributor or an eigenvalue n i equal to the sum of the values m i
- a remote resource such as a ballot box for electronic voting, a blockchain, or an intelligent parcel mailbox
- a remote resource such as a ballot box for electronic voting, a blockchain, or an intelligent parcel mailbox
- the first method preferably has a reputable central authority (distributor) that is assumed to be honest and is in charge of generating the access credentials, regardless of what form they may take.
- a set of N authorities in charge of controlling access to a certain resource or service are incorporated.
- the guard set does not consider the dealer as a member.
- the scenario is completed with a set of m duly identified users.
- the work of the distributor is twofold: firstly, it establishes the system by distributing the credentials (regardless of the form they may take) to the users and validation tools to the guards, and secondly, it is in charge of auditing possible identification errors between users and guards.
- the central authority (or distributor) distributes to the access control authorities (or guards) enough information to require that they all work together to agree on the validity of a credential.
- the dispatcher generates enough structures to check the previous issuance of credentials to the users.
- the central authority verifies the identification received and the previous issuance of credentials to that user.
- Guards provide the user with assurance that they have performed the action or provide the user with permission to perform the action.
- the second method also allows distributing the responsibility for generating the access credentials among a set of accredited authorities or distributors.
- a set of N authorities are included, disjoint with respect to the set of distributors, in charge of controlling access (or guards) and a set of m duly identified users.
- Each of the distributors generates enough structures to be able to verify the previous issuance of credentials to the users.
- Each of the registration authorities sends to all the access control authorities (guards) individualized information to participate in access control.
- Each of the guards configures, with the information received from each and every one of the distributors, their access control tool.
- the users send, to each and every one of the distributors, their identification together with a previous credential to build the accreditation from it.
- Each of the distributors verifies the identification credentials received, returning to the user, if they are correct, an anonymous access accreditation component built from the previously received credential. So, in isolation, this accreditation component is not valid for access to the resource.
- the guards provide the user with a guarantee of having carried out the action.
- a user can turn to the distributors to detect errors or malicious behavior of one of the guards.
- the previous credential and the accreditation component received may allow the user to obtain an anonymous credential that is impossible for distributors to associate with his identity.
- the invention also relates to an anonymous and distributed access control system to remote resources or services comprising a first set of one or more processing units acting as distributors, a second set of one or more processing units acting as guards and a third set of one or more processing units acting as users, configured to carry out the steps of the described method.
- Electronic voting To control access to the ballot box for voters and their unique access, maintaining and respecting privacy so that the vote remains secret.
- Access to Blockchains In a blockchain environment to control access to users, avoiding the problem of "double spending” that would allow malicious users to spend more resources (coins) than they actually have.
- Access to intelligent parcel mailboxes Allowing courier companies to control user access to lockers (guaranteeing a single access to them), with the possibility of distributing access control between the locker itself, the courier company and the user.
- Sharing of secrets Through a counter guarded by guards to manage a "secret” (regardless of the form it might take) that should only be accessible to members of a group, being able to force the "secret” to be only accessible if all the users of the group will consider it so.
- the protocols allow unidentified access by users, allowing their use in sensitive contexts.
- the method of the invention solves the problem of access to a guarded resource in a distributed, efficient, simpler way to the extent that the dialogue between the different parties involved is reduced and with less computational cost for the parties.
- Figure 1.- Shows a block diagram that represents a preferred embodiment of the first implementation of the method of the invention.
- Figure 2. Shows a block diagram that represents a preferred embodiment of the second implementation of the method of the invention.
- Figure 3. Shows a diagram of the distribution of the polynomials generated by the distributors between the guards and the generation of the function of each guard.
- Figure 4. Shows a diagram of the identification and assignment of credentials to a user who sends his identification to the distributors.
- Figure 5. Shows a block diagram that represents a preferred embodiment of the third implementation of the method of the invention.
- the present invention relates to an anonymous and distributed access control method that allows access control to a resource or service anonymously and by distributing access control and credential generation.
- the first of the examples allows to provide single-use credentials, guaranteeing the maintenance of the anonymity of the users together with the guarantee that, unless all the access control authorities (guards) are compromised, it is not possible to generate fraudulently valid credentials.
- the method also includes a set of N guards (2) in charge of controlling access and a set of m users (3) duly accredited.
- the distributor (1) is in charge of establishing the system by distributing the credentials to the users (3) and auditing possible identification errors between the users (3) and the guards (2).
- the distributor (1) can associate the users (3) with their credentials, while, on the other hand, the distributor (1) is not provided with any information about how it is going to be used. the protected resource.
- This first embodiment of the method of the invention begins with the generation (100) of a sufficiently large prime number p, and the generation (101) of a polynomial of degree m, considering the result modulo p, when it is necessary to calculate the value of the polynomial. for a specific value x.
- the value of m, maximum degree of the polynomial, must be less than p-1 , and it is not necessary to consider a polynomial with all the coefficients different from zero:
- the authority divides it (102) into N polynomials (p (x)): in such a way that the fractional polynomials complement each other to obtain the coefficients of q(x), that is:
- users (3) are allowed to get their credentials. To do this, the users (3) send (109) their identifications to the distributor (1), which once verified that it is relevant, the distributor (1) generates a random value P tu and uses the polynomial to calculate and send (111 ) to the user (3) the point of the polynomial q(x) . These points work as credentials anonymous in the face of the guards (2) who guard the resource. The distributor (1) is responsible for not generating two points with the same P tu coordinate.
- the size of the module p has no relevant influence on the security of the system, but it must be greater than m. Furthermore, the use of modular arithmetic limits the size of the credentials while not restricting working with a large number of users (3). So, for example, a 30-bit value of m is not large in terms of computational time and is large enough to provide credentials to everyone on earth.
- access (116) is given to the user (3) by verifying the credential received by the guards (2).
- Figure 1 shows a schematic of the first embodiment of the method of the invention. This implementation provides the ability to access a resource anonymously.
- the second implementation distributes the generation of credentials among a set of D distributors (1) that are assumed to be honest, guaranteeing the anonymity of the users (3) against the guards (2) and the impossibility of generating fraudulent credentials, even in a scenario post-quantum, unless, well all distributors (1), or all the guards (2), agree to violate the system.
- the distributors (1) first agree on (100) a modular value p and the degree m of a polynomial q(x) to be constructed.
- each distributor (1) independently generates (101) a polynomial q i (x) of degree m and module p.
- This polynomial q i (x) divides (102) independently and freely into N complementary parts q ij (x), such that:
- each guard (2) receives the partitions from each of the distributors (1) and calculate (104) a proper polynomial Pj(x) as:
- p.(%) is the result of adding all the functions received from each distributor (1), such that the proper polynomial of each guard (2) cannot be known by any distributor (1), unless they all agree to share their polynomial q i (x) and violate the system.
- the users (3) send (109) their identification along with an integer P tu such that p > P tu to each of the distributors (1). These are responsible for ensuring that there are no duplicates of P tu , in which case, the user (3) will be prompted to choose a different P tu or one agreed upon by the distributors (1) will be assigned.
- Each distributor (1) checks the identification of the user (3) and, if it is correct, responds by calculating and sending (111) the result of q i (P tu ) mod p. Once the response of all the distributors (1) is received, the users (3) can calculate (112) their credentials as:
- access (116) is given to the user (3) by verifying the credential received by the guards (2).
- the third proposed implementation allows maintaining the anonymity of users (3) also in front of distributors (1).
- this implementation guarantees the anonymity of users (3) before any authority involved, making it impossible for information extracted from compromised authorities to generate malicious credentials as long as there is a non-compromised authority and there is no solution for the discrete logarithm problem ( current basis of security in public-key cryptographic systems).
- this implementation makes it possible to protect the privacy of the user (3) during the registration phase, eliminating the existing connection between the identity of the user (3) and his credentials.
- homomorphic cryptography to hide the credential information that distributors have access to (1).
- the implementation that is presented guarantees the anonymity of the users (3) before the authorities (even in post-quantum scenarios), preventing the generation of malicious credentials while the discrete logarithm problem (the basis of many current public key cryptographic protocols) is solved. stay safe.
- D distributors (1) in charge of generating the access credentials, and a group of N guards (2) are considered.
- the configuration of the system implies that the distributors (1) agree (100) in advance on a prime modular value p, and that each of the distributors (1) generate
- the parts m ⁇ j are sent (103) to the guards (2) through secure channels. Each guard (2) can then calculate (104) an own value of the parts received from the distributors (1):
- both the distributors (1) and the guards (2) have different information to build the same secret integer m that is never stored anywhere. That is, that m is the result of the sums:
- each user (3) In the identification phase, before starting communication with the distributors (1), each user (3) generates (108) a pair of integers s and v such that the product v*s reduced modulo (p-1) is equal to 1
- the registration phase begins when the user u privately selects an integer P tu , which, to prevent attacks based on the homomorphic properties of the modular product, contains the result of a pre-agreed redundancy function (105).
- P tu is calculated (107) as the result of the concatenation of a random value r, previously generated (106), and the result of f(r).
- the generated value will be part of the user's credential (3), therefore, so that the dispatchers (1) cannot link the received credential with the user identifier (3), the integer P tu is masked as modp before send (109) your identification together with the value P' tu to each one of the distributors (1). If the identification is correct and it is previously verified (110) that there is no previous issue of credentials to said user (3), each distributor (1) calculates and sends
- the user (3) can calculate (112) his access credentials as:
- mod p is the only value passed to the distributors and is insufficient to reveal the hidden value P tu .
- access (116) is given to the user (3) by verifying the credential received by the guards (2), or the requested action (116) is performed and the user (3) is provided with a guarantee (117) of having performed the action.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
Método de control de acceso a recursos remotos con D distribuidores, y N guardias, que comprende generar una función qi(x) o un valor mi por parte de cada distribuidor; dividir cada función qi(x) o cada valor mi en N partes; enviar una parte a cada guardia; enviar, un usuario a los distribuidores, un identificador y un valor Ptu; calcular y enviar al usuario el resultado de la función qi(Ptu) o el valor Pmi tu; calcular, un usuario, un valor yu igual al sumatorio de los resultados de qi(Ptu) o al productorio de los Pmi tu ; calcular, cada guardia, una función propia pj (x) o un valor propio nj; enviar, un usuario a cada guardia, los valores Ptu e yu; calcular, cada guardia, el valor de la función propia pj(Ptu) o el productorio de los valores Pnj tu; comunicar, al resto de guardias, los valores pj(x) obtenidos; verificar, yu; y dar acceso al recurso.
Description
MÉTODO DE REGISTRO DISTRIBUIDO PARA EL CONTROL DE ACCESO ANÓNIMO
DESCRIPCIÓN
OBJETO DE LA INVENCIÓN
La invención se refiere a un método y un sistema de registro distribuido para el control de acceso a recursos y servicios de forma anónima.
Un primer objeto de la invención es un método asistido por ordenador de registro distribuido que permite el control de acceso con una comunicación limitada entre partes, una interacción mínima del usuario y sin necesidad de almacenar información de identificación.
Otro objeto de la invención es un sistema de registro distribuido que comprende medios para gestionar el acceso anónimo a recursos y servicios.
ANTECEDENTES DE LA INVENCIÓN
Existen numerosas soluciones en el campo de métodos y sistema de autenticación anónima.
Algunas soluciones, como las reflejadas en los documentos W02008065341A2 (MAIDSAFE FOUND) y GB2444346, se refieren a sistemas de red distribuida que proporcionan privacidad, seguridad y libertad a sus usuarios, facilitando su intercomunicación y los accesos anónimos a recursos propios o compartidos. Estos sistemas permiten el acceso mediante autenticación anónima mediante algoritmos de encriptación.
Por su parte, el documento W02017145010A1 (NCHAIN HOLDINGS) describe un método implementado en ordenador que controla el acceso a una cartera digital implementada mediante tecnología blockchain. El método divide un elemento de verificación (clave privada) en múltiples fracciones que son transmitidas mediante un secreto común entre dos o más nodos. Para la división del secreto S en fracciones (n el
número de participantes) se construye de forma aieatoria o pseudo-aleatoria un polinomio y=f(x) de grado k-1 (módulo p), donde k es un número umbral, y p un número primo, de modo que se puede dividir el secreto en partes y reconstruirlo posteriormente mediante un conjunto de puntos conocidos.
El documento CN111416705A (NANJING RUBAN QUANTUM TECHNOLOGY) introduce un sistema y método para votación electrónica basado en tecnologías de identificación anónima criptográfica, blockchain y compartición de secretos, capaz de resistir ataques de ordenadores cuánticos y que reduce los tiempos de cálculo del uso de firmas digitales ciegas.
El documento ES2255455A1 (SCYTL ON UNE WORLD SECURITY) describe un método para realizar votaciones y consultas de forma electrónica con seguridad a través de una red de comunicaciones mediante procesos y protocolos criptográficos interrelacionados, diseñados para facilitar las tareas de emisión de votos, recuento y verificación de forma segura, permitiendo la privacidad de los votantes, la corrección de los resultados y la imposibilidad de coacción y venta de votos.
Sin embargo, las soluciones proporcionadas por el estado del arte no permiten el control de acceso a un recurso custodiado de manera distribuida, eficiente, más simple y con menos coste computacional para las partes.
DESCRIPCIÓN DE LA INVENCIÓN
La presente invención se refiere a un método asistido por ordenador de control de acceso anónimo y distribuido a recursos o servicios remotos que hace uso de una o más autoridades centrales, o distribuidores, y N autoridades encargadas de controlar el acceso al recurso o servicio, llamadas guardias, donde N es mayor o igual a 1 , y donde el método comprende las etapas de: generar una función o un valor mi por parte de cada uno de los distribuidores; dividir cada función qi(x) o cada valor en N partes qij(x) o mij), de modo que la función qi(x) es combinación lineal de las partes qij(x) o el valor es igual al sumatorio de las N partes
enviar por parte de cada distribuidor una parte de su función qij(x) o de su vaior mij a cada guardia; si hay más de un distribuidor, calcular por parte de cada guardia una función propia p,.(x) igual al sumatorio de las funciones recibidas de cada distribuidor o un valor propio ni igual al sumatorio de los valores mij recibidos de cada distribuidor; enviar a los uno o más distribuidores un identificador y un valor Ptu por parte del usuario; calcular y enviar al usuario, por parte de los uno o más distribuidores, el resultado de la función generada q (x) para Ptu o del valor reducido módulo algún valor p acordado previamente; si hay más de un distribuidor, calcular, por parte del usuario, un valor y igual a la reducción módulo p del sumatorio de los resultados de la función generada qi(x) de cada distribuidor para Ptu o del productorio de los resultados del valor de cada distribuidor; enviar a cada guardia los valores Ptu e Yu; calcular por parte de cada guardia el resultado para Ptu de su función propia p.(x) o el resultado de módulo p usando el valor propio ny,
verificar que y es igual a la reducción módulo p de la suma del resultado de todas las funciones propias pj(x) o del productorio de los valores usando los
valores propios nj; dar acceso a un recurso si la verificación es positiva.
De las etapas del método se pueden obtener, de forma preferida, dos métodos distintos para el control de acceso a un recurso remoto (como por ejemplo una urna para el voto electrónico, una blockchain, o un buzón de paquetería inteligente) que resuelven el problema del control de acceso distribuido y anónimo a un recurso custodiado.
Así, se pretende dar acceso a un recurso custodiado por un conjunto de guardias que desconfían los unos de los otros. Para el acceso al recurso, todos los guardias han de verificar que las credenciales presentadas son correctas. Al mismo tiempo las credenciales no deben revelar ningún tipo de información sobre el usuario que pretende
acceder, garantizando al propietario de ia credencial un único acceso al recurso.
El primer método, preferiblemente, cuenta con una autoridad central (distribuidor) respetable que se asume honesta y está encargada de la generación de las credenciales de acceso, independientemente de la forma que puedan tomar estas.
Además, se incorporan un conjunto de N autoridades encargadas de controlar el acceso a un determinado recurso o servicio (o guardias). El conjunto de guardias no considera el distribuidor como miembro. El escenario se completa con un conjunto de m usuarios debidamente identificados.
La labor del distribuidor es doble: primero establece el sistema distribuyendo las credenciales (independientemente de la forma que estas puedan tomar) a los usuarios y herramientas de validación a los guardias y, en segundo lugar, se encarga de auditar los posibles errores de identificación entre los usuarios y los guardias.
Por un lado, sólo el distribuidor puede relacionar a los usuarios con sus credenciales; por otro lado, no se provee al distribuidor de ninguna información sobre cómo se va a usar ese recurso protegido.
Así, en este primer método se sigue el siguiente conjunto de etapas:
1 . Configuración del sistema
1.1. La autoridad central (o distribuidor) distribuye a las autoridades de control de acceso (o guardias) información suficiente para que sea necesario que todas ellas deban colaborar para acordar la validez de una credencial.
1.2. El distribuidor genera estructuras suficientes para comprobar la emisión previa de credenciales a los usuarios.
2. Identificación y registro de los usuarios
2.1. Un usuario envía su identificación a la autoridad central.
2.2. La autoridad central verifica la identificación recibida y la emisión previa de credenciales a ese usuario.
2.3. Si la comprobación de identificación y emisión previa lo permiten, se devuelve al usuario una credencial anónima de acceso.
3. Control de acceso
3.1. Los usuarios envían a todos los guardias su credencial de acceso y la acción a
realizar sobre el recurso.
3.2. Los guardias acuerdan de forma colegiada la validez o no de la credencial.
3.3. En caso de ser correcta, se realiza la acción indicada por el usuario.
3.4. Los guardias aportan al usuario garantía de haber realizado la acción o proporcionan al usuario permiso para realizar la acción.
4. Auditoría de los guardias
4.1. En caso necesario (denegación de acceso) el usuario puede recurrir al distribuidor para detectar errores o comportamiento malicioso de alguno de los guardias.
El segundo método permite además distribuir la responsabilidad de generación de las credenciales de acceso entre un conjunto de autoridades acreditadas o distribuidores.
Igualmente, se incluyen un conjunto de N autoridades, disjunto respecto al conjunto de distribuidores, encargadas de controlar el acceso (o guardias) y un conjunto de m usuarios debidamente identificados.
Así, en el segundo método se sigue el siguiente conjunto de etapas:
1. Configuración del sistema
1.1. Cada uno de los distribuidores genera estructuras suficientes para poder comprobar la emisión previa de credenciales a los usuarios.
1.2. Cada una de las autoridades de registro (distribuidores) envía a todas las autoridades de control de acceso (guardias) información individualizada para participar en el control de acceso.
1.3. Cada uno de los guardias configura, con la información recibida de todos y cada uno de los distribuidores, su herramienta de control de acceso.
2. Identificación y registro de los usuarios
2.1. Los usuarios envían, a todos y cada uno de los distribuidores, su identificación junto con una credencial previa para construir a partir de ella la acreditación.
2.2. Cada uno de los distribuidores verifica las credenciales de identificación recibidas, devolviendo al usuario en caso de que sean correctas una componente de acreditación anónima de acceso construida a partir de la credencial previa recibida. De modo que, de forma aislada, esta componente de acreditación no es válida para el acceso al recurso.
2.3. Una vez recibidas todas las componentes de acreditaciones, el usuario combina
todas ellas para obtener la acreditación de acceso.
3. Control de acceso
3.1. Los usuarios envían a todos los guardias su credencial de acceso y la acción a realizar sobre el recurso.
3.2. Los guardias acuerdan de forma colegiada la validez o no de la credencial.
3.3. En caso de ser correctas, se realiza la acción indicada o se habilita al usuario a realizarla.
3.4. En caso de realizar la acción, los guardias aportan al usuario garantía de haber realizado la acción.
4. Auditoría de los guardias
4.1. En caso necesario (como por ejemplo la denegación de acceso) un usuario puede recurrir a los distribuidores para detectar errores o comportamiento malicioso de alguno de los guardias.
En este segundo método, se considera que la credencial previa y la componente de acreditación recibida pueden permitirle al usuario obtener una credencial anónima e imposible para los distribuidores de relacionar con su identidad.
La invención también se refiere a un sistema de control de acceso anónimo y distribuido a recursos o servicios remotos que comprende un primer conjunto de una o más unidades de procesamiento que actúan como distribuidores, un segundo conjunto de una o más unidades de procesamiento que actúan como guardias y un tercer conjunto de una o más unidades de procesamiento que actúan como usuarios, configuradas para llevar a cabo las etapas del método descrito.
Algunas de las posibles aplicaciones del método de la invención son, entre otras:
Voto electrónico: Para el control de acceso a la urna de los electores y su acceso único, manteniendo y respetando la privacidad para que el voto se mantenga secreto.
Acceso a Blockchains: En un entorno blockchain para el control del acceso a los usuarios, evitando el problema del “doble gasto” que permitiría a usuarios maliciosos gastar más recursos (monedas) de los que en realidad tiene.
Tarjetas de crédito: Para generar credenciales de acceso, pero requiriendo que la credencial sea sólo conocida por el usuario y no se almacene en ningún servidor.
Acceso a buzones de paquetería inteligente: Permitiendo a las empresas de mensajería controlar el acceso de los usuarios a las consignas (garantizando un acceso único a estas), con posibilidad de distribuir el control del acceso entre la propia consigna, la empresa de mensajería y el usuario.
Compartición de secretos: Mediante un contador custodiado por guardias para gestionar un “secreto” (independientemente de la forma que este pudiera tomar) que sólo debe ser accesible a los miembros de un grupo, pudiendo forzar que el "secreto” fuera sólo accesible si todos los usuarios del grupo así lo consideraran.
Asimismo, se identifican las siguientes ventajas con respecto a las soluciones del estado del arte:
Los protocolos permiten el acceso no identificado de los usuarios, permitiendo su uso en contextos sensibles.
Distribuye el control de acceso, e incluso la obtención de credenciales, manteniendo el anonimato de los usuarios frente a las autoridades de control de acceso o distribuidores.
Pese a distribuir el control de acceso, la comunicación entre las distintas partes es limitada, permitiendo una implementación de bajo coste computacional.
La interacción del usuario es mínima. Sólo necesita un mensaje para obtener sus credenciales y otro para acceder al recurso. Es un protocolo que no requiere de una participación activa por parte del usuario, en la que las autoridades no dependen de la respuesta de los usuarios, reduciendo el diálogo entre las partes implicadas por lo que no se bloquea la ejecución de las fases esperando resultados anteriores, reduciendo la posibilidad de ataques de denegación de servicio.
Puede implementarse sin almacenar información en los servidores que actúan como guardias o distribuidores, siendo resistente a varios tipos de ataque.
En resumen, el método de la invención resuelve el problema del acceso a un recurso custodiado de manera distribuida, eficiente, más simple en la medida en que se reduce el diálogo entre las distintas partes implicadas y con menos coste computacional para las partes.
DESCRIPCIÓN DE LOS DIBUJOS
Para complementar la descripción que se está realizando y con objeto de ayudar a una
mejor comprensión de las características de la invención, de acuerdo con un ejemplo preferente de realización práctica de la misma, se acompaña como parte integrante de dicha descripción, un juego de dibujos en donde con carácter ilustrativo y no limitativo, se ha representado lo siguiente:
Figura 1.- Muestra un esquema de bloques que representa una realización preferente de la primera implementación del método de la invención.
Figura 2.- Muestra un esquema de bloques que representa una realización preferente de la segunda implementación del método de la invención.
Figura 3.- Muestra un esquema de la distribución de los polinomios generados por los distribuidores entre los guardias y la generación de la función propia de cada guardia.
Figura 4.- Muestra un esquema de la identificación y asignación de credenciales a un usuario que envía su identificación a los distribuidores.
Figura 5.- Muestra un esquema de bloques que representa una realización preferente de la tercera implementación del método de la invención.
REALIZACIÓN PREFERENTE DE LA INVENCIÓN
La presente invención se refiere a un método de control de acceso anónimo y distribuido que permite el control de acceso a un recurso o servicio de forma anónima y distribuyendo el control de acceso y la generación de credenciales.
Se presentan a continuación tres ejemplos de implementación con propiedades de seguridad y/o anonimato pos-cuánticas.
El primero de los ejemplos permite proporcionar credenciales de un único uso, garantizando el mantenimiento del anonimato de los usuarios junto con la garantía de que, a no ser que todas las autoridades de control de acceso (guardias) se vean comprometidas, no es posible generar credenciales válidas de forma fraudulenta.
En este caso, se asume la existencia de una entidad central honesta que actúa como
distribuidor (1), el método también comprende un conjunto de N guardias (2) encargados de controlar el acceso y un conjunto de m usuarios (3) debidamente acreditados.
El distribuidor (1) se encarga de establecer el sistema distribuyendo las credenciales a los usuarios (3) y de auditar los posibles errores de identificación entre los usuarios (3) y los guardias (2).
Por un lado, en este caso, sólo el distribuidor (1) puede relacionar a los usuarios (3) con sus credenciales, mientras que, por otro lado, no se provee al distribuidor (1) de ninguna información sobre cómo se va a usar el recurso protegido.
Esta primera realización del método de la invención comienza con la generación (100) de un número primo p suficientemente grande, y la generación (101) de un polinomio de grado m, considerando el resultado módulo p, cuando se necesite calcular el valor del polinomio para un valor concreto x. El valor de m, máximo grado del polinomio, deberá ser menor que p-1 , no siendo necesario considerar un polinomio con todos los coeficientes distintos de cero:
Una vez generado q(x), la autoridad lo divide (102) en N polinomios (p (x)):
de tal manera que los polinomios fraccionados se complementan entre sí para obtener los coeficientes de q(x), es decir:
Cada uno de los polinomios fraccionados se asigna y se envía (103) de forma segura a cada uno de los guardias (2). Así, a menos que todos los guardias (2) colaboren, es imposible para un subconjunto de guardias (2) obtener el polinomio original
Una vez que el sistema se ha configurado, se permite a los usuarios (3) obtener sus
credenciales. Para ello, los usuarios (3) envían (109) sus identificaciones al distribuidor (1), el cual una vez comprobado que es pertinente, el distribuidor (1) genera un valor aleatorio Ptu y usa el polinomio para calcular y enviar (111) al usuario (3) el punto del polinomio q(x) . Estos puntos funcionan como credenciales
anónimas de cara a los guardias (2) que custodian el recurso. El distribuidor (1) es responsable de no generar dos puntos con la misma coordenada Ptu.
A menos que el número de usuarios (3) supere el límite m, es imposible para cualquier conjunto de usuarios (3) falsificar nuevas credenciales.
En el método propuesto, el tamaño del módulo p no tiene influencia relevante en la seguridad del sistema, pero debe ser mayor que m. Además, el uso de la aritmética modular limita el tamaño de las credenciales mientras no restringe el trabajar con un número elevado de usuarios (3). Así, por ejemplo, un valor de m de 30 bits no es grande en términos de tiempo computational y es lo suficientemente grande como para proveer de credenciales a todos los habitantes de la tierra.
Una vez las credenciales han sido entregadas, para que los usuarios (3) puedan acceder al recurso o servicio, estos deben enviar (113) sus credenciales a todos los guardias (2), que calculan (114) el resultado de pj(Ptu) , y colaboran para verificar (115) que la credencial recibida (Ptu, q ( Ptu)) cumple que:
Finalmente, se da acceso (116) al usuario (3) al verificar la credencial recibida por parte de los guardias (2).
La figura 1 muestra un esquema de la primera realización del método de la invención. Esta implementation proporciona la posibilidad de acceder a un recurso de manera anónima.
La segunda implementation distribuye la generación de credenciales entre un conjunto de D distribuidores (1) que se asumen honestos, garantizándose el anonimato de los usuarios (3) frente a los guardias (2) y la imposibilidad de generar acreditaciones fraudulentas, incluso en un escenario pos-cuántico, a no ser que, bien todos los
distribuidores (1), o bien todos los guardias (2), acuerden violentar el sistema.
Para configurar inicialmente el sistema, los distribuidores (1) primero acuerdan (100) un valor modular p y el grado m de un polinomio q(x) a construir. A continuación cada distribuidor (1) genera (101) de manera independiente un polinomio qi(x) de grado m y módulo p. Este polinomio qi(x) se divide (102) de manera independiente y libre en N partes complementarias qij(x), tal que:
A continuación, ios distribuidores (1) envían (103) a través de un canal seguro a cada guardia (2) una de las particiones q... De este modo, cada guardia (2) recibe las particiones de cada uno de los distribuidores (1) y calcula (104) un polinomio propio Pj(x) como:
Así, p.(%) es el resultado de sumar todas las funciones recibidas de cada distribuidor (1), de modo que el polinomio propio de cada guardia (2) no puede ser conocido por ningún distribuidor (1), a no ser que todos ellos acuerden compartir su polinomio qi(x) y violentar el sistema.
Además, con respecto a los polinomios conocidos por los distribuidores (1) y los guardas
Para obtener sus credenciales, los usuarios (3) envían (109) su identificación junto con un entero Ptu tal que p > Ptu a cada uno de los distribuidores (1). Estos son responsables de que no existan duplicados de Ptu, en cuyo caso, el usuario (3) será instado a escoger un Ptu distinto o se le asignará uno acordado por los distribuidores (1).
Cada distribuidor (1) comprueba la identificación del usuario (3) y, si esta es correcta, le responde calculando y enviando (111) el resultado de qi (Ptu) mod p. Una vez recibida la respuesta de todos los distribuidores (1), los usuarios (3) pueden calcular (112) sus credenciales como:
Una vez las credenciales han sido entregadas, para que los usuarios puedan acceder al recurso o servicio, estos deben enviar (113) sus credenciales ( Ptu, Yu ) a todos los guardias, que deben calcular (114) el resultado de Pj(Ptu), y colaborar para verificar (115) que la credencial recibida cumple que:
Finalmente, se da acceso (116) al usuario (3) al verificar la credencial recibida por parte de los guardias (2).
La tercera implementación propuesta, permite mantener el anonimato de los usuarios (3) también frente a los distribuidores (1). De hecho, esta implementación garantiza el anonimato de los usuarios (3) frente a cualquier autoridad implicada, siendo imposible que información extraída de autoridades comprometidas permita generar credenciales maliciosas mientras exista una autoridad no comprometida y no exista una solución para el problema del logaritmo discreto (base actual de la seguridad en sistemas criptográficos de clave pública).
Asi, esta implementación permite proteger la privacidad del usuario (3) durante la fase de registro, eliminando la conexión existente entre la identidad del usuario (3) y sus credenciales. Para esta labor, usamos criptografía homomórfica para esconder la información de la credencial a la que tienen acceso los distribuidores (1). La implementación que se presenta garantiza el anonimato de los usuarios (3) frente a las autoridades (incluso en escenarios pos-cuánticos), impidiendo la generación de credenciales maliciosas mientras el problema del logaritmo discreto (base de muchos protocolos criptográficos actuales de clave pública) siga siendo seguro.
En esta implementación se consideran D distribuidores (1) encargados de generar las credenciales de acceso, y un grupo de N guardias (2).
La configuración del sistema implica que los distribuidores (1) acuerden (100) de antemano un valor modular p primo, y que cada uno de los distribuidores (1) genere
(101) un entero aleatorio mi menor que (p-1). Además, los distribuidores (1) acuerdan (105) una función de redundancia f(x) . A continuación, cada distribuidor (1) divide
Las partes m¡j se envían (103) a los guardias (2) a través de canales seguros. Cada guardia (2) puede entonces calcular (104) un valor propio de las partes recibidas de los distribuidores (1):
Así, al final de la fase de distribución, tanto los distribuidores (1) como los guardias (2) tienen información distinta para construir el mismo número entero secreto m que nunca se llega a almacenar en ningún sitio. Esto es, que m es el resultado de las sumas:
En la fase de identificación, antes de iniciar la comunicación con los distribuidores (1), cada usuario (3) genera (108) un par de enteros s y v tal que el producto v*s reducido modulo (p-1) es igual a 1. La fase de registro comienza cuando el usuario u selecciona privadamente un entero Ptu, el cual, para evitar ataques basados en las propiedades homomórficas del producto modular, contiene el resultado de una función de redundancia previamente acordada (105). Así, Ptu se calcula (107) como el resultado de la concatenación de un valor aleatorio r, previamente generado (106), y el resultado de f(r).
El valor generado será parte de la credencial del usuario (3), por lo que, para que los distribuidores (1) no puedan enlazar la credencial recibida con el identificador de usuario (3), se enmascara el entero Ptu como modp antes de enviar (109) su
identificación junto con el valor P’tu a cada uno de los distribuidores (1).
Si la identificación es correcta y se comprueba (110) previamente que no existe una emisión previa de credenciales a dicho usuario (3), cada distribuidor (1) calcula y envía
Para un valor suficientemente grande de p, la probabilidad de que dos usuarios (3) generen el mismo Ptu , es extremadamente baja, prácticamente despreciable con valores de p de 1024 bits, el cual es un número conservador de bits para los estándares actuales.
Una vez recibida la respuesta de los distribuidores (1), el usuario (3) puede calcular (112) sus credenciales de acceso como:
De modo que:
donde m es el entero previamente acordado, pero desconocido tanto para guardias (2) como para distribuidores (1).
Además, mod p es el único valor transmitido a los distribuidores y es
insuficiente para revelar el valor oculto Ptu . Una vez las credenciales han sigo entregadas, para que los usuarios (3) puedan acceder (116) al recurso o servicio, estos deben enviar (113) sus credenciales a todos los guardias, que deben calcular (114) el resultado de colaborar para verificar (115) que la credencial recibida cumple que:
Finalmente, se da acceso (116) al usuario (3) al verificar la credencial recibida por parte de los guardias (2), o se realiza la acción (116) solicitada y se aporta al usuario (3) garantía (117) de haber realizado la acción.
Claims
1.- Un método asistido por ordenador de control de acceso anónimo y distribuido a recursos o servicios remotos que hace uso de una o más autoridades centrales, o distribuidores (1), y N autoridades encargadas de controlar el acceso al recurso o servicio, llamadas guardias (2), donde N es mayor o igual a 1 , y donde el método comprende las etapas de: acordar (100), por parte de los distribuidores (1), un valor p primo, de modo que el polinomio generado qi(x) se obtiene considerando el resultado reducido módulo p; generar (101) una función o un valor mi por parte de cada uno de los distribuidores (1); dividir (102) cada función qi(x) o cada valor en N partes, de modo que la función qi(x) es combinación lineal de las partes qij(x) o el valor es igual al sumatorio de las N partes mij; enviar (103) por parte de cada distribuidor (1) una parte de su función q;j(x) o de su valor mij a cada guardia (2); si hay más de un distribuidor (1), calcular (104) por parte de cada guardia (2) una función propia p (x) igual al sumatorio de las funciones recibidas de cada distribuidor o un valor propio nj igual al sumatorio de los valores recibidos de cada distribuidor; enviar (109) a los uno o más distribuidores un identificador y, en caso de considerarse más de un distribuidor, un valor Ptu por parte de un usuario (3); calcular y enviar (111) al usuario (3), por parte de los uno o más distribuidores (1), el resultado de la función generada qi(x) para Ptu o del valor si la
identificación es positiva; si hay más de un distribuidor (1), calcular (112), por parte del usuario, un valor y igual a la reducción módulo p del sumatorio de los resultados de la función generada qi(x) de cada distribuidor (1) para Ptu o del productorío de los resultados del valor de cada distribuidor (1);
enviar (113) a cada guardia (2) los valores Ptu e Yu ; calcular (114) por parte de cada guardia (2) el resultado para Ptu de su función
propia p,(x) o el resultado de módulo p usando el valor propio nj; verificar (115) que y es igual a la reducción módulo p de la suma del resultado de todas las funciones propias p¡(x) o del productorio de los valores usando
los valores propios dar acceso (116) a un recurso si la verificación es positiva.
2.~ El método según la reivindicación 1, donde los distribuidores (1) acuerdan (105) una función de redundancia f y el usuario (3) genera aleatoriamente (106) un valor r, de modo que Ptu se calcula (107) como la concatenación de r y f(r).
3.- El método según la cualquiera de las reivindicaciones 1 a 2, donde, si hay más de un distribuidor (1), el usuario (3) genera dos valores (108) s y v, tal que el producto s*v reducido módulo (p-1) es igual a 1 ; y donde el valor que se envía (109) a los uno o más distribuidores junto con el identificador es módulo p e Yu es igual al
productorio de los valores
4.- El método según cualquiera de las reivindicaciones 1 a 3, donde en la etapa de calcular y enviar (111) al usuario (3), por parte de los uno o más distribuidores (1), el resultado de la función generada qi(x) para Ptu o del valor se comprueba (110)
previamente si existe una emisión previa de credenciales a dicho usuario (3).
5.- El método según cualquiera de las reivindicaciones 1 a 4, donde el usuario (3) especifica una acción a realizar sobre un recurso a los guardias (2), que la realizan o permiten el acceso (116) al usuario (3) para realizar la acción si la etapa de verificación es positiva y aportan al usuario (3) garantía (117) de haber realizado la acción.
6.~ Un sistema de control de acceso anónimo y distribuido a recursos o servicios remotos que comprende un primer conjunto de una o más unidades de procesamiento que actúan como distribuidores, un segundo conjunto de una o más unidades de procesamiento que actúan como guardias y un tercer conjunto de una o más unidades de procesamiento que actúan como usuarios, configuradas para llevar a cabo las etapas de: generar (101) una función qi(x) o un valor por parte de cada uno de los
distribuidores (1); dividir (102) cada función qi(x) o cada valor mi en N partes, de modo que la función qi(x) es combinación lineal de las partes qij(x) o el valor mi es igual al sumatorio de las N partes enviar (103) por parte de cada distribuidor (1) una parte de su función qij(x) o de su valor a cada guardia (2); si hay más de un distribuidor (1), calcular (104) por parte de cada guardia (2) una función propia p (x) igual al sumatorio de las funciones recibidas de cada distribuidor o un valor propio nj igual al sumatorio de ios valores recibidos de cada distribuidor; enviar (109) a los uno o más distribuidores un identificador y un valor Ptu por parte de un usuario (3); calcular y enviar (111) al usuario (3), por parte de los uno o más distribuidores (1), el resultado de la función generada qi(x) para Ptu o del valor si la
identificación es positiva; si hay más de un distribuidor (1), calcular (112), por parte del usuario, un valor yu igual a la reducción módulo p del sumatorio de los resultados de la función generada qi(x) de cada distribuidor (1) para Ptu o del productorio de los resultados del valor de cada distribuidor (1);
enviar (113) a cada guardia (2) los valores Ptu e yu; calcular (114) por parte de cada guardia (2) el resultado para Ptu de su función propia p (x) o el resultado de módulo p usando el valor propi nj;
verificar (115) que y es igual a la reducción módulo p de la suma del resultado de todas las funciones propias p (x) o del productorio de los valores usando
los valores propios nj; dar acceso (116) a un recurso si la verificación es positiva,
7.- Un programa de ordenador caracterizado porque está adaptado para causar que las unidades de procesamiento realicen los pasos del método de acuerdo con cualquiera de las reivindicaciones 1 a 5.
8." Un dispositivo de almacenamiento legible por una máquina caracterizado porque
comprende el programa de ordenador de acuerdo con la reivindicación 7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP22872265.8A EP4407924A1 (en) | 2021-09-22 | 2022-09-16 | Distributed registration method for controlling anonymous access |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
ES202130890A ES2904423B2 (es) | 2021-09-22 | 2021-09-22 | Metodo de registro distribuido para el control de acceso anonimo |
ESP202130890 | 2021-09-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023047003A1 true WO2023047003A1 (es) | 2023-03-30 |
Family
ID=80997512
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/ES2022/070587 WO2023047003A1 (es) | 2021-09-22 | 2022-09-16 | Método de registro distribuido para el control de acceso anónimo |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4407924A1 (es) |
ES (1) | ES2904423B2 (es) |
WO (1) | WO2023047003A1 (es) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2255455A1 (es) | 2001-12-12 | 2006-06-16 | Scytl Secure Electronic Voting, S.A. | Metodo para votacion electronica segura y protocolos criptograficos empleados. |
GB2444346A (en) | 2006-12-01 | 2008-06-04 | David Irvine | Anonymous authentication in a distributed system |
WO2008065341A2 (en) | 2006-12-01 | 2008-06-05 | David Irvine | Distributed network system |
WO2017145010A1 (en) | 2016-02-23 | 2017-08-31 | nChain Holdings Limited | Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system |
EP3379767A1 (en) * | 2017-03-24 | 2018-09-26 | Hewlett-Packard Development Company, L.P. | Distributed authentication |
WO2019046651A2 (en) * | 2017-08-30 | 2019-03-07 | Inpher, Inc. | EVALUATION OF REAL-VALUE FUNCTION PRESERVING HIGH PRECISION CONFIDENTIALITY |
CN109495248A (zh) * | 2018-11-23 | 2019-03-19 | 曹鸣佩 | 基于秘密共享方案的可监察隐私通信方法 |
US20190386972A1 (en) * | 2018-06-13 | 2019-12-19 | Paypal, Inc. | Systems and methods for user authentication based on multiple devices |
US20200052890A1 (en) * | 2018-08-09 | 2020-02-13 | Hrl Laboratories, Llc | Anonymous allocation and majority voting in a compromised environment |
CN111416705A (zh) | 2020-02-29 | 2020-07-14 | 南京如般量子科技有限公司 | 基于身份密码学的抗量子计算联盟链投票系统和方法 |
-
2021
- 2021-09-22 ES ES202130890A patent/ES2904423B2/es active Active
-
2022
- 2022-09-16 WO PCT/ES2022/070587 patent/WO2023047003A1/es active Application Filing
- 2022-09-16 EP EP22872265.8A patent/EP4407924A1/en active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
ES2255455A1 (es) | 2001-12-12 | 2006-06-16 | Scytl Secure Electronic Voting, S.A. | Metodo para votacion electronica segura y protocolos criptograficos empleados. |
GB2444346A (en) | 2006-12-01 | 2008-06-04 | David Irvine | Anonymous authentication in a distributed system |
WO2008065341A2 (en) | 2006-12-01 | 2008-06-05 | David Irvine | Distributed network system |
WO2017145010A1 (en) | 2016-02-23 | 2017-08-31 | nChain Holdings Limited | Secure multiparty loss resistant storage and transfer of cryptographic keys for blockchain based systems in conjunction with a wallet management system |
EP3379767A1 (en) * | 2017-03-24 | 2018-09-26 | Hewlett-Packard Development Company, L.P. | Distributed authentication |
WO2019046651A2 (en) * | 2017-08-30 | 2019-03-07 | Inpher, Inc. | EVALUATION OF REAL-VALUE FUNCTION PRESERVING HIGH PRECISION CONFIDENTIALITY |
US20190386972A1 (en) * | 2018-06-13 | 2019-12-19 | Paypal, Inc. | Systems and methods for user authentication based on multiple devices |
US20200052890A1 (en) * | 2018-08-09 | 2020-02-13 | Hrl Laboratories, Llc | Anonymous allocation and majority voting in a compromised environment |
CN109495248A (zh) * | 2018-11-23 | 2019-03-19 | 曹鸣佩 | 基于秘密共享方案的可监察隐私通信方法 |
CN111416705A (zh) | 2020-02-29 | 2020-07-14 | 南京如般量子科技有限公司 | 基于身份密码学的抗量子计算联盟链投票系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
ES2904423B2 (es) | 2023-01-09 |
EP4407924A1 (en) | 2024-07-31 |
ES2904423A1 (es) | 2022-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Qadir et al. | A review paper on cryptography | |
Kaaniche et al. | A blockchain-based data usage auditing architecture with enhanced privacy and availability | |
EP1958374B1 (en) | Proofs of vicinity using cpufs | |
US5748782A (en) | Device for implementing a message signature system and chip card comprising such a device | |
US9397839B2 (en) | Non-hierarchical infrastructure for managing twin-security keys of physical persons or of elements (IGCP/PKI) | |
EP4046325B1 (en) | Digital signature generation using a cold wallet | |
CN101296075B (zh) | 一种基于椭圆曲线的身份认证系统 | |
KR20200085553A (ko) | 투표자 단말, 인증서버, 투표서버, 및 전자투표 시스템 | |
JP2007282295A (ja) | キー寄託機能付き暗号システムおよび方法 | |
CN106059747A (zh) | 基于公钥基础设施的可重用公钥证书方案 | |
CN108551435B (zh) | 一种具有匿名性的可验证加密群签名方法 | |
KR102372718B1 (ko) | 발행인 익명성 인증서 시스템을 위한 분산화된 그룹 서명 방법 | |
US11245514B1 (en) | Blockchain delegation | |
Wang et al. | A regulation scheme based on the ciphertext-policy hierarchical attribute-based encryption in bitcoin system | |
US20210359847A1 (en) | Exchanging Cryptographic Key Information | |
KR102546762B1 (ko) | 블룸 필터를 이용한 블록체인에서의 다중 서명 지갑 시스템 | |
CN103795548B (zh) | 一种基于群签名算法的分布式数据库系统及其实现方法 | |
Islam et al. | A new e-voting scheme based on revised simplified verifiable re-encryption mixnet | |
ES2904423B2 (es) | Metodo de registro distribuido para el control de acceso anonimo | |
Larriba et al. | How to grant anonymous access | |
KR101167647B1 (ko) | 전자투표 시스템 | |
US20170264440A1 (en) | Proximity-Based Collaborative Information Security | |
ES2916846B2 (es) | Metodo de control de voto electronico | |
Dzurenda et al. | Modern physical access control systems and privacy protection | |
EP4456476A1 (en) | Method for controlling electronic voting |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22872265 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2022872265 Country of ref document: EP |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
ENP | Entry into the national phase |
Ref document number: 2022872265 Country of ref document: EP Effective date: 20240422 |