IP Library Granted Patent US 10,686,599
Granted Patent B2
US 10,686,599 · App. 15/538,033 · Granted Jun 16, 2020

Method for the verification of the correct content of an encoded message

Inventors: Sandra Guasch Castelló (Terrassa, ES); Alex Escala Ribas (Barcelona, ES); Jordi Puiggalí Allepuz (Sant Cugat del Vallès, ES)
Assignee: SCYTL SECURE ELECTRONIC VOTING, SA
H04L9/32H04L9/3218H04L9/3226H04L9/3263H04L63/123H04L9/0861H04L9/3247H04L2209/08H04L2209/34H04L2209/463
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,686,599
App. No.
15/538,033
Granted
Jun 16, 2020
Kind
B2
Abstract

The method comprising: a) receiving, by an encoding module computer device ( 103 ), from a user ( 100 ), a message ( 101 ) including a content to be encoded; b) generating, by the encoding module ( 103 ), a generated encoding ( 104 ) of the content of the provided message ( 101 ) using encoding information ( 112 ); c) sending, by the encoding module computer device ( 103 ), the generated encoding ( 104 ) to a reception module computer device ( 106 ) and verifying, by the reception module computer device ( 106 ), that the generated encoding ( 104 ) corresponds to the encoding of the content of the message ( 101 ) by using a generated verification information ( 105 ) and public information ( 107 ), wherein the at least one code ( 102 ) having a cryptographic relationship with the public information ( 107 ) and the message ( 101 ), and the public information ( 107 ) and the message ( 101 ) having a cryptographic or a public relationship.

Claims (45)

1. A method for the verification of the correct content of an encoded message, the method comprising:

a) receiving, by an encoding module computer device ( 103 ), from a user ( 100 ), a message ( 101 ) including a content to be encoded;

b) generating, by the encoding module computer device ( 103 ), a generated encoding ( 104 ) of the content of the received message ( 101 ) using encoding information ( 112 );

c) sending, by the encoding module computer device ( 103 ), said generated encoding ( 104 ) to a reception module computer device ( 106 );

d) verifying, by the reception module computer device ( 106 ), that the generated encoding ( 104 ) corresponds to the encoding of the content of the message ( 101 ), without decoding the generated encoding ( 104 ) and neither compromising the message ( 101 ) privacy, using a generated verification information ( 105 ) and public information ( 107 ); and

e) executing a preliminary configuration step in which a configuration module computer device ( 109 ) generates, from a list of possible messages ( 101 ) and a list of users ( 100 ), said public information ( 107 ) and a validation list ( 108 ) of each user ( 100 ), and provides the validation list ( 108 ) to each user ( 100 ) and the public information ( 107 ) to the encoding module computer device ( 103 ) and to the reception module computer device ( 106 ),

wherein:

the verification information ( 105 ) is generated either by the encoding module computer device ( 103 ), a verification information generator module computer device ( 111 ), or both together, by using the generated encoding ( 104 ), the encoding information ( 112 ), said public information ( 107 ) and at least one code ( 102 ) associated with the message ( 101 ) provided by the user ( 100 ), and by using a OR zero-knowledge proof of knowledge or a AND zero-knowledge proof of knowledge procedure,

the at least one code ( 102 ) is selected by the user ( 100 ) from the validation list ( 108 ),

the encoding information ( 112 ) comprises random or pseudo-random data,

the validation list ( 108 ) contains the list of possible messages ( 101 ), each one correlated with one of more different codes ( 102 ),

the public information ( 107 ) contains at least as many public lists ( 116 ) of information as validation lists ( 108 ), each public list ( 116 ) being related to a validation list ( 108 ) and containing at least one public code ( 117 ) per valid messages ( 101 ),

the at least one code ( 102 ) is a private key and has a cryptographic relationship with the public information ( 107 ) and with the message ( 101 ), and

the public information ( 107 ) and the message ( 101 ) have a cryptographic or a public relationship.

2. The method of claim 1 , wherein the verification information ( 105 ) being generated by the verification information generator module computer device ( 111 ) to which the encoding module ( 103 ) is connected thereto, the verification information ( 105 ) being generated upon the verification information generator module computer device ( 111 ) having received, from the encoding module computer device ( 103 ), the generated encoding ( 104 ) and an auxiliary information ( 113 ) and, from the user ( 100 ), the at least one code ( 102 ).

3. The method of claim 1 , wherein the verification information ( 105 ) being generated by the verification information generator module computer device ( 111 ) upon the latter having received, from an auxiliary information generator module computer device ( 114 ), the generated encoding ( 104 ) and an auxiliary information ( 113 ) and, from the user ( 100 ), the at least one code ( 102 ), said auxiliary information ( 113 ) being generated by said auxiliary information generator module computer device ( 114 ) by using at least one of the generated encoding ( 104 ) and the at least one code ( 102 ), and one or more cryptographic secret keys, wherein said generated encoding ( 104 ) and/or said at least one code ( 102 ) being received from the encoding module ( 103 ) and the one or more cryptographic secret keys being received from the configuration module ( 109 ).

4. The method of claim 1 , wherein the at least one code ( 102 ) being received by the encoding module computer device ( 103 ) or by the verification information generator module computer device ( 111 ) at the same time of said reception of the message ( 101 ) in step a), or after the encoding module computer device ( 103 ) having generated the generated encoding ( 104 ) of the content of the received message ( 101 ).

5. The method of claim 4 , comprising receiving the at least one code ( 102 ), by the encoding module computer device ( 103 ) or by the verification information generator module computer device ( 111 ), via an input interface at least including: a wired or a wireless connection, an USB connection, a Smartcard, a QR/barcode scanning, or a keyboard input.

6. The method of claim 1 , wherein said encoding information ( 112 ) being generated by the encoding module computer device ( 103 ) or by a computer device remote to the encoding module computer device ( 103 ).

7. The method of claim 1 , wherein said validation list ( 108 ) being provided to the user ( 100 ) at least by means of a paper support, a presentation on a display of a computing device, a hardware token with storage capabilities including RFID, and/or a hardware token with storage and logic capabilities including a SmartCard.

8. The method of claim 1 , wherein the public information ( 107 ) being provided to the encoding module computer device ( 103 ) and to the reception module computer device ( 106 ):

as part of an initial configuration of the modules ( 103 ), ( 106 ); or

from a central or distributed repository ( 110 ); or

from an external source through a wired or wireless connection, a USB connection, a Smartcard, a QR/barcode scanning or a keyboard input.

9. The method of claim 1 , wherein the at least one code ( 102 ) being generated by a code discloser module computer device ( 115 ) by performing a cryptographic operation, including an encryption with deterministic properties with a private/secret cryptographic key, over the message ( 101 ) received from the user ( 100 ), the message ( 101 ) being received by the code discloser module computer device ( 115 ) via an input interface and the cryptographic key being internally generated by the code discloser module computer device ( 115 ).

10. The method of claim 1 , wherein the at least one code ( 102 ) being generated by a code discloser module computer device ( 115 ), upon the code discloser module computer device ( 115 ) having received the at least one code from the configuration module computer device ( 109 ) in an encrypted form and having decrypted the at least one code ( 102 ) with a cryptographic key, the cryptographic key being internally generated by the code discloser module computer device ( 115 ).

11. The method of claim 2 , wherein:

the auxiliary information ( 113 ) contains the encoding information ( 112 ), or,

the auxiliary information ( 113 ) contains a cryptographic transformation of the message ( 101 ) using a cryptographic secret key, or,

the auxiliary information ( 113 ) is empty.

12. The method of claim 2 , wherein the verification information generator module computer device ( 111 ) comprises using a secret key/secret information or a cryptographic key containing cryptographically related secret and public information for generating the verification information ( 105 ).

13. The method of claim 1 , wherein the reception module computer device ( 106 ) performs several actions depending on the result of said verification that the generated encoding ( 104 ) corresponds to the encoding of the content of the message ( 101 ), comprising:

notifying the result of the validation to another user through an output interface including a screen or an audio signal; and/or

sending back to the encoding module computer device ( 103 ) the result of the validation; and/or

sending back the result of the validation directly to the user ( 100 ); and/or

publishing the result of the validation with a reference of the generated encoding ( 104 ); and/or

attaching the result of the verification to at least the generated encoding ( 104 ) and the verification information ( 105 ), storing the attached result and further retransmiting it to another module computer device.

14. The method of claim 1 , comprising performing said verification that the generated encoding ( 104 ) corresponds to the encoding of the content of the message ( 101 ), automatically after the reception module computer device ( 106 ) having received the generated encoding ( 104 ) and the verification information ( 105 ), or periodically every certain period of time.

15. The method of claim 1 , wherein the generated encoding ( 104 ) is the encryption of the whole or at least part of the message ( 101 ), and the encoding information ( 112 ) is the randomness, or at least part of it, used for said encryption.

16. The method of claim 1 , wherein in said step b) the public information ( 107 ) is further used for generating the generated encoding ( 104 ) of the content of the received message ( 101 ).

17. The method of claim 3 , wherein:

the auxiliary information ( 113 ) contains the encoding information ( 112 ), or,

the auxiliary information ( 113 ) contains a cryptographic transformation of the message ( 101 ) using a cryptographic secret key, or,

the auxiliary information ( 113 ) is empty, and

wherein the verification information generator module computer device ( 111 ) comprises using a secret key/secret information or a cryptographic key containing cryptographically related secret and public information for generating the verification information ( 105 ).

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 16, 2026
From: SCYTL ELECTION TECHNOLOGIES S.L.
To: COMITIA EU, S.L.U.
Reel/Frame 074383/0854 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2022
From: SCYTL SECURE ELETRONIC VOTING SA
To: SCYTL ELECTION TECHNOLOGIES S.L.
Reel/Frame 061190/0869 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2018
From: GUASCH CASTELLO, SANDRA; ESCALA RIBAS, ALEX; PUIGGALI ALLEPUZ, JORDI
To: SCYTL SECURE ELETRONIC VOTING SA
Reel/Frame 045113/0439 →
Priority Claims (1)
EP 14004456 · Dec 31, 2014 · regional
Continuity (1)
Related Publication 20170353310A1 · Dec 7, 2017