WO2005071878A1 - 匿名電子投票システム及び匿名電子投票方法 - Google Patents

匿名電子投票システム及び匿名電子投票方法 Download PDF

Info

Publication number
WO2005071878A1
WO2005071878A1 PCT/JP2005/000532 JP2005000532W WO2005071878A1 WO 2005071878 A1 WO2005071878 A1 WO 2005071878A1 JP 2005000532 W JP2005000532 W JP 2005000532W WO 2005071878 A1 WO2005071878 A1 WO 2005071878A1
Authority
WO
WIPO (PCT)
Prior art keywords
voting
data
server
encrypted
voter
Prior art date
Application number
PCT/JP2005/000532
Other languages
English (en)
French (fr)
Inventor
Kengo Mori
Kazue Sako
Original Assignee
Nec Corporation
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 Nec Corporation filed Critical Nec Corporation
Priority to JP2005517238A priority Critical patent/JP4715518B2/ja
Priority to EP05703769A priority patent/EP1710949A4/en
Priority to US10/587,665 priority patent/US7694880B2/en
Publication of WO2005071878A1 publication Critical patent/WO2005071878A1/ja

Links

Classifications

    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07CTIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
    • G07C13/00Voting apparatus

Definitions

  • the present invention relates to an anonymous electronic voting system and method, and more particularly, to an anonymous electronic voting system and an anonymous electronic voting method that can be used from various client environments.
  • An anonymous electronic voting system is a system that electronically implements anonymous secret voting via a network, for example. Examples of a conventional anonymous electronic voting system are described in Patent Document 1 and Non-Patent Document 1. Have been. In the following description, voting means not only voting for election from predetermined candidates but also an
  • a candidate or a candidate name does not simply refer to a candidate or a candidate name in an election, but is an element (item) when a certain element or an item is selected by a voter's will. And element (item) names.
  • a conventional anonymous electronic voting system includes an anonymous decryption system 900 including a contact center 901 and a plurality of decryption shuffle centers 902, and a voting management center to which each voter accesses. (Voting server) 910 and power are also configured.
  • the anonymous decryption system 900 is provided to protect the secret of the voting, and is used to output the decryption result while concealing the correspondence between the voter and the encrypted voting data!
  • the contact center 901 and the decryption shuffle center 902 generate public information of the system such as an encryption key for voting and transmit it to the voting management center 910. Notify the public information.
  • each voter When the voting period starts, each voter encrypts his / her voting content based on public information to create a cryptographic voting sentence, and generates a digital signature of the voter for the cryptographic voting sentence, and The voting sentence and the digital signature are transmitted to the voting management center 910.
  • each voter typically creates a cryptographic voting sentence and a digital signature at his client terminal, and also sends his client terminal power to the voting management center 910 via various networks.
  • the voting sentence and the digital signature are transmitted to voting management center 910.
  • the voting management center 910 verifies the received digital signature, confirms the voter's voting right based on the list of voters, confirms that there is no duplicate voting, and accepts the received encrypted voting sentence.
  • the voting management center 910 terminates the reception of the voting, and sends a list of cryptographic voting sentences received by the end of voting to the contact center 901 of the anonymous decryption system 900.
  • the contact center 901 decrypts the encrypted voting text list via the decryption shuffle center 902, obtains a plain text voting text list by changing the order of the list, and returns the plain text voting text list to the voting management center 910. I do.
  • the voting management center 910 counts up the voting results based on the plain text voting text list received from the contact center 901.
  • Patent Document 1 JP-A-2002-237810
  • Patent Document 2 JP 2001-251289 A
  • Patent Document 3 Japanese Patent Application Laid-Open No. 2002-344445
  • Non-Patent Document 1 Kazue Sako, 6 others, ⁇ Realization of large-scale electronic voting system by shuffling ", IPSJ 62nd Annual Convention, March 2001
  • the conventional anonymous electronic voting system it is difficult to authenticate voters in voting in which the general public is a voter (for example, a public office election), and it is possible to prevent voting by non-votes and double voting. There is also a problem that it is difficult. The reason for this is that the conventional anonymous electronic voting system assumes that all voters are registered in a common public key authentication platform for digital signatures used to authenticate voters. This is because such a base has become widespread.
  • a second object of the present invention is to perform voter authentication even if all voters are registered in a common public key authentication infrastructure and conditions are established. It is to provide an anonymous electronic voting system and an anonymous electronic voting method.
  • data including a list of a combination of a candidate name and an encryption candidate name is received, and the encryption candidate name of the selected candidate is received.
  • a voter terminal sending via the network,
  • the encryption candidate name is received and encrypted again to create encrypted voting data, and the encrypted voting data is returned to the voter terminal that transmitted the encryption candidate name via the network.
  • a voting server that receives encrypted voting data from the voter terminal, creates a list of valid encrypted voting data in the received encrypted voting data, and transmits the created list via the network;
  • a decryption server for decrypting the list of valid encrypted voting data received from the voting server, and transmitting, via the network, a list of plaintext candidate names in which the order of the list has been changed,
  • the voting server provides an electronic voting system, wherein the voting server receives the plaintext candidate name list from the decryption server, and counts voting results based on the received candidate name list.
  • the voting server is connected to a decryption server (anonymous decryption system), and the voting server is provided with encryption means.
  • the voter terminal without the dangling means is connected to the encryption server, and the voter terminal without the common infrastructure signature generation means is connected to the authentication server.
  • the encryption server has re-encryption means, and the authentication server has ID linkage means and common infrastructure signature generation means.
  • the voting server transmits a pair of a plaintext candidate name and an encrypted candidate name to a voter terminal having no encryption means, and has an encryption means.
  • the voter terminal transmits the encrypted candidate name corresponding to the candidate name selected by the voter again to the voting server by encrypting the encrypted candidate name again via the encryption server. Then, all the received encrypted data is decrypted by the anonymous decryption system. Thereby, the first object of the present invention can be achieved.
  • the voter terminal which has a common base signature generation means, performs personal authentication within the organization by communicating with the authentication server! / ⁇ , and the authentication server closes the vote within the organization.
  • the user ID is converted into an ID on the common platform by ID linking means, a set of this ID and voting data is given a common platform digital signature of the authentication server, and transmitted to the voting server.
  • the second object of the present invention can be achieved by certifying that personal authentication has been performed using the existing authentication infrastructure by the digital signature of the authentication server.
  • the present invention provides, in a second aspect, a voter terminal connected to a network
  • a first encryption server that has first data conversion means for generating a first encryption parameter for each voter terminal from public information, and transmits the first encryption parameter to the voter terminal;
  • a second encryption server having second data conversion means for generating a second encryption parameter for each voter terminal from the public information, and transmitting the second encryption parameter to the voter terminal;
  • a voting server that receives encrypted voting data from the voter terminal, creates a list of valid encrypted voting data in the received encrypted voting data, and transmits the created list via the network;
  • a decryption server that decrypts the list of valid encrypted voting data received from the voting server, generates a plaintext candidate name list with the order of the list replaced, and transmits the list via the network,
  • the voting server receives the plaintext candidate name list from the decryption server, and counts the voting results based on the received candidate name list, and
  • the voter terminal has encryption means for encrypting voting contents based on the first and second encryption parameters to generate encrypted voting data.
  • An anonymous electronic voting system is provided which transmits the voting data to the voting server.
  • the voting server includes a first conversion means instead of the encryption means in the anonymous electronic voting system of the first aspect,
  • the second conversion means is provided in place of the re-encryption means of the encryption server in the anonymous electronic voting system of the first aspect, and the voter terminal is provided with an encryption means (encrypted data creation means).
  • the voting server performs a part of the operation necessary for the encryption processing of the voting content by the first conversion means and obtains the result.
  • the cryptographic parameter is transmitted to the voter terminal, and the cryptographic server also performs a part of the operation necessary for the cryptographic processing of the voting content by the second conversion means, and transmits the resulting cryptographic parameter to the voter terminal.
  • the voter terminal inputs the first conversion result received from the voting server and the second conversion result received from the encryption server to the encryption data creation means, together with the content of the vote, and encrypts the voting data.
  • the anonymous electronic voting system of the present invention has an effect that an electronic voting can be performed even from a device having a small storage capacity and a small processing capacity. The reason is that it is not necessary to perform the conversion processing that requires a large amount of calculation in the entire encryption processing or the encryption processing in the voter terminal.
  • the anonymous electronic voting system of the present invention has an effect that the secret of voting can be protected even if electronic voting is performed using a device having a small storage capacity or processing capacity.
  • the reason is that the decryption of the encrypted voting data is performed by the decryption server, so that even if all the encrypted voting data is decrypted, it is difficult to determine which voter's encrypted voting data corresponds to which plaintext.
  • the reason is that the plaintext of the voting content is encrypted by the processing of both the voting server and the encryption server, and the voting server and the encryption server cannot decrypt the encrypted voting data voted alone.
  • the anonymous electronic voting system is capable of preventing an unauthorized voting even if all voters are registered in a common public key authentication infrastructure and conditions are not established. This has the effect that voting can be performed while preventing voting.
  • the reason for this is that the authentication server authenticates the voters, and the voting data is digitally signed by the authentication server. This is the ability to confirm that the data is valid.
  • FIG. 1 shows the configuration of the anonymous electronic voting system according to the first embodiment of the present invention.
  • This anonymous electronic voting system consists of a voter terminal 100, 110, 120, 130, 140, 150, which has different components and processing capabilities, a voting center (voting sano) 200, and an authentication sano 300. , B-consonant Sano 400, 410, 440, and anonymous decryption system 500.
  • B-note Sano 400, 410, and 440 are connected to voter terminals 100, 110, and 140, respectively.
  • connection form from the voter terminals 100, 110, 120, 130, 140, 150 to the voting center 200 is various, and some of them are directly connected to the voting center 200, Another connects to the voting center 200 via the authentication server 300, and another uses both direct connection and connection via the authentication server 300.
  • power is omitted from the drawings.
  • Voter terminals 100, 110, 120, 130, 140, 150, and so on are employed.
  • a configuration in which one cryptographic server is connected to one voter terminal, or a configuration in which several voter terminals are connected to one cryptographic server may be employed. It is also possible for the encryption server and the authentication server to operate on the same server.
  • each voter terminal 100, 110, 120, 130, 140, 150 will be described.
  • the voter terminal 100 includes a display device 101 such as a display, an input device 102 such as a button and a keyboard, and a device-side authentication unit 103.
  • the voter terminal 200, the authentication server 300, and the encryption server 400 are connected to a communication line. It is connected by such as.
  • the voter terminal 110 includes a display device 111 such as a display and buttons and a keyboard.
  • the system includes an input device 112 and an in-house signature generation means 113, and is connected to a voting server 200, an authentication server 300, and an encryption server 410 via a communication line.
  • the voter terminal 120 includes a display device 121 such as a display, an input device 122 such as a button or a keyboard, a device-side authentication unit 123, and an encryption unit 124.
  • the voter terminal 130 includes a display device 131 such as a display, an input device 132 such as a button or a keyboard, an in-house signature generation unit 133, and an encryption unit 134. It is connected to the server 300 by a communication line or the like.
  • the voter terminal 140 includes a display device 141 such as a display, an input device 142 such as a button and a keyboard, and a common infrastructure signature generation means 143.
  • the voter terminal 140 is connected to a voting server 200, a cryptographic server 440, and a communication line. It is connected.
  • the voter terminal 150 includes a display device 151 such as a display, an input device 152 such as a button or a keyboard, a common base signature generation unit 153, and a encryption unit 154. They are connected by a communication line or the like.
  • the voting server 200 includes a voter list database 201, a common infrastructure signature verification unit 202, an encryption unit 203, and a recording device 204 such as a hard disk drive, and the voter terminals 100, 110, 120, 130, It is connected to 140, 150 and authentication Sano 300 by communication lines.
  • the authentication server 300 includes a server-side authentication unit 301, an in-house base signature verification unit 302, a common base signature generation unit 303, and an ID cooperation unit 304.
  • the encryption servers 400, 410, and 440 have re-encryption means 401, 411, and 441, respectively.
  • the device-side authentication means 103, 123 of the voter terminals 100, 120 communicate with the server-side authentication means 301 of the authentication server 300, and the identifier of the voter operating the voter terminal is IDj. , And communicates with the server-side authentication means 301 to notify the authentication server 300 of the identifier IDj of the voter j operating the voter terminals 100 and 120.
  • Ciphers provided in voter terminals 120, 130, 140, 150 and voting server 200 respectively
  • the encrypting means 124, 134, 144, 154, 203 receive the encrypted public key Y and the plaintext voting data v, and output encrypted V voting data E (V) obtained by encrypting V with Y.
  • Each of the B-note sano 400, 410, and 440 re-B-note siding means 401, 411, and 441 receives the B-note public key Y and the encrypted voting data E (V) as inputs, The encrypted voting data E '(V) obtained by encrypting E (V) again by Y is output.
  • the internal signature generation means 113, 133 of the voter terminals 110, 130 provide the encrypted voting data E
  • the in-house signature verification means 302 of the authentication server 300 receives the encrypted voting data E (vj), the in-house identifier IIDj, the in-house digital signature Sej, and the verification public key Pj, and the Sej receives the data. (E (vj), IIDj) to determine whether they were correctly calculated by the signature private key dj.
  • the common base signature generation means 143, 153 of the voter terminals 140, 150 receives the encrypted voting data E (vj), the common identifier CIDj of the voter j, and the secret key dj for signature, and receives the data (E ( vj) and CI Dj) output the common base digital signature Sej of voter j.
  • the common infrastructure signature generation means 303 of the authentication server 300 receives the encrypted voting data E (vj), the common identifier CIDj of the voter j, and the signature private key dk of the authentication server as inputs, and inputs the data (E (vj ), Output the common infrastructure digital signature Sek of the authentication server for CIDj).
  • the common base signature verification means 202 of the voting center 200 receives the encrypted voting data E (vj), the common identifier CIdj, and the common base digital signature Sek as inputs, and Sek checks the data (E (vj), CIDj). It is determined whether or not it has been correctly calculated using the signature private key dk.
  • the correspondence between the organization identifier IIDj and the common identifier CIDj is recorded, and when the organization identifier IIDj is input, the corresponding common identifier CIDj is output. .
  • the anonymous decryption system 500 generates and outputs an encrypted public key Y according to externally input initial setting information.
  • E a list of encrypted shadow voting data E (vj) is externally input
  • E There is a one-to-one correspondence between the list of plaintext voting data vj in which the list of (vj) is decrypted and rearranged in random order, and the list of input E (vj) and the list of output vj. Proof of existence And output the data.
  • the internal signature generation means 113 and 133 of the voter terminals 110 and 130, the common base signature generation means 143 and 153 of the voter terminals 140 and 150, and the common base signature generation means 303 of the authentication server 300 In both cases, a digital signature is created.
  • the in-house signature verification unit 302 of the authentication server 300 and the common base signature verification unit 202 of the voting server 200 verify the digital signature.
  • the digital signature here, for example, a digital signature using a public key encryption such as RSA encryption can be used.
  • the signature Sjv for the signer j's data V is obtained by using V and the signing secret key dj of the signer j.
  • V is a symbol that represents a power
  • V "dj represents the result of V raised to the power dj (ie, Vdj).
  • dj, ej, n are two prime numbers p, q,
  • the identifier IDj is disclosed only inside a certain organization such as an employee number. It is possible that the identifier assigned to another individual belonging to the organization may be the same IDj, and the correspondence between the identifier of the voters registered in the voters list (such as the names of voters) is not disclosed. Not exclusively. Similarly, the set of signature verification public keys (n, ej) corresponding to IDj may be disclosed only inside the organization.
  • the identifiers IDj and (n, ej) of the signer are widely disclosed to the public, and the same identifier is assigned to another individual. Is a common identifier that is not allocated, and information including the common identifier is recorded in the voters list database 201.
  • the device-side authentication means 103 and 123 of the voter terminals 100 and 120 and the server-side authentication means 301 of the authentication server 300 perform personal authentication.
  • personal authentication using an ID character string and a password personal authentication based on mobile phone terminal authentication, and the like can be used.
  • the authentication server 300 When performing personal authentication using an ID character string and a password, the authentication server 300 records the correspondence between the in-house identifier of the voter and the password in advance.
  • Device-side authentication means
  • the authentication server 300 confirms by the server-side authentication means 301 that the received II Dj is included in the list of the in-house identifiers recorded in advance, generates a random number c, and generates the random number c. Reply to 120.
  • the device-side authentication means 103, 123 inputs the password pw and the random number c input from the input devices 102, 122 to a hash function such as SHA1, and returns the output value r to the authentication server 300.
  • the server-side authentication means 301 searches a list of previously recorded in-house identifiers and passwords using IIDj as a key, obtains pw corresponding to IIDj, and inputs pw and c into a hash function such as SHA1. If the output value matches the value!: Returned from the voter terminals 100 and 120, the voter operating the voter terminals 100 and 120 is recognized as the voter indicated by IIDj.
  • the B-notes 123, 133, 153, 203 provided in the voter terminals 120, 130, 150 and the voting server 200 and the B-notes Sano 400, 410, 440 are provided.
  • the re-encryption means 401, 411, 441 and the anonymous decryption system 500 for example, the technology disclosed in Patent Document 1 can be used.
  • anonymous decryption system 500 receives (pL, qL, t) when security parameters (pL, qL, t) and a session ID are input from voting center 200. ) To generate public information (p, q, g) and a secret key X, output the public information (P, q, g, Y) obtained by adding the public key Y to the public information, and return it to the voting center 200.
  • ⁇ and q are El Gamar A cryptographic parameter, given by an integer k
  • the session ID is an identifier for identifying a processing target.
  • the processing target is, for example, a prefectural governor's election, a city council election, or the like.
  • the public key Y is
  • Y g "X is a value obtained by the calculation of mod q, and the decryption key X is a random number less than q selected at random.
  • the encryption means 123, 133, 153, 203 receive the public information (p, q, g, Y) and the plaintext voting data vi, and output the encrypted voting data E (vi).
  • E (vi) is represented by the pair (Gi, Vi)
  • r is a random number randomly selected for the plaintext voting data vi.
  • HASH (p, q, g, Y, Gi, Vi, ai) is a value obtained by inputting p, q, g, Y, Gi, Vi, ai to a hash function such as SHA1.
  • E '(vi) is represented by the pair (G' i, V i),
  • s is a random number randomly selected for the cipher droid voting data E (vi).
  • E (vi) and E '(vi) can be handled in the same way with regard to decryption processing.
  • the anonymous decryption system 500 transmits the public information (p, q, g) specified by the session ID. , Y) and the decryption key X to decrypt the (Gi, Vi) list, and arrange the randomized order of the plaintext voting data vi and the list of (Gi, Vi) and vi
  • the proof data indicating that there is a one-to-one correspondence is returned to the voting center 200.
  • Patent Document 2 Japanese Unexamined Patent Application Publication No. 2001-251289 (Patent Document 2) and Japanese Unexamined Patent Application Publication No. 2002-344445 (Patent Document 3). These techniques are used for encrypting means 123, 133, 153, It is also possible to realize the encryption means 401, 411, 441 and the anonymous decryption system 500.
  • FIG. 2 describes an initial setting operation in the anonymous electronic voting system.
  • the voting server 200 anonymously decrypts the security parameters (pL, qL, t) and the session ID.
  • Send to system 500 (step Al).
  • the anonymous decryption system 500 creates public information (p, q, g, Y) according to (pL, qL, t) (step A2) and returns it to the voting server 200 (step A3).
  • the voting server 200 records (p, q, g, Y) in the recording device 204 (step # 4).
  • the initial setting is completed.
  • Figures 3 to 8 show the processing at the voter terminals 100, 110, 120, 130, 140, and 150 (and the vote server, authentication server, and encryption Server processing).
  • FIG. 9 illustrates the process from receiving a vote to the operation corresponding to counting votes.
  • a voter who is a voter accesses the voting server 200 by using one of the voter terminals 100, 110, 120, 130, 140, and 150.
  • a cryptographic voting information request is transmitted (step # 5-1 in FIGS. 3, 4, and 7), and the vote from the voter terminals 120, 130, and 150 is transmitted.
  • a simple voting information request is sent (step # 5-2 in Figs. 5, 6, and 8).
  • the voting server 200 receives the cryptographic voting information request from the voter terminals 100, 110, and 140, the voting server 203 converts all the candidate names vj with the public information ( ⁇ , q, g, Y) by the cryptographic device 203.
  • a list of (vj, E (vj)) is created by encryption (step A6 in FIGS. 3, 4, and 7), and the public information (p, q, g, Y) and (vj, E ( vj)) is returned to the voter terminals 100, 110, and 140 (step A7-1 in Figs. 3, 4, and 7). Also, upon receiving a simple voting information request from the voter terminals 120, 130, 150, the voting server 200 compares the public information (p, q, g, Y) and the list of plaintext candidate names vj with the voter terminal. Reply to 120, 130, 150 (Step A7-2 in Figs. 5, 6, and 8).
  • the voter terminal 100 When the voter terminal 100 receives the list of (p, q, g, Y) and the list of (vj, E (vj)) as shown in FIG. Displayed to the voter, the voter selects and inputs the candidate name vi from the list of vj using the input device 102 (step A100-l). Then, the voter terminal 100 transmits E (vi) corresponding to vi and the public information (p, q, g, Y) to the encryption server 00 (step A100-2).
  • the cryptographic server 400 receives the received E (vi)
  • the public information (P, q, g, Y) is input to the re-encryption means 401, and E (vi) is calculated by re-encrypting E (vi) (step AlOO-3), and E '(vi ) Is returned to the voter terminal 100 (step A100-4).
  • the voter terminal 100 obtains the voter's organization identifier IIDi by the input device 102 and authenticates the voter i's organization identifier IIDi to the authentication server 300 by the device-side authentication means 103. (Step A100-5), E ′ (vi) is transmitted to the authentication server 300 (Step A100-6).
  • the authentication server 300 inputs the in-house identifier IIDi of the voter confirmed by the server-side authentication means 301 to the ID linking means 304, and obtains the corresponding common identifier CIDi (step A100-7).
  • the set of ( ⁇ '(vi), CIDi) and the signature private key dk of the authentication server 300 are input to the common infrastructure signature generation means 303, and (E' (vi), CIDi) ),
  • the common base signature Sek of the authentication server 300 is generated (step A100-8).
  • the voter terminal 110 When the voter terminal 110 receives the list of (p, q, g, Y) and the list of (vj, E (vj)) as shown in FIG. It is displayed to the voter, and the voter selects and inputs the candidate name vi from the list of vj using the input device 112 (step Al 10-1 in FIG. 4). Then, the voter terminal 110 transmits E (vi) corresponding to vi and public information (p, q, g, Y) to the encryption server 410 (step A110-2 in FIG. 4).
  • the encryption server 410 inputs the received E (vi) and the public information (p, q, g, Y) to the re-encryption means 411, and calculates E '(vi) which is a re-encryption of E (vi). (Step A110-3), and returns E '(vi) to the voter terminal 110 (Step A110-4).
  • the voter terminal 110 inputs the institutional identifier IIDi of the voter i, the signature private key di and E ′ (vi) to the in-house signature generation means 113, and ( ⁇ ′ (vi), IIDi) Calculates the in-house digital signature Sei for (step A110-5), and sends ( ⁇ '(vi), IIDi) and Sei to the authentication server 300 (step A110-6).
  • the display device 121 displays the list of vj to the voter. Then, the voter selects and inputs the candidate name vi from the list of vj using the input device 122 (step A120-l). Then, the voter terminal 120 inputs the vi and the public information (p, q, g, Y) to the encryption means 124, and obtains E (vi) obtained by encrypting the vi with Y (step A120). -2). Next, the voter terminal 120 authenticates the in-house identifier IIDi of the voter i to the authentication server 300 by the device-side authentication means 123 (step A120-3), and transmits E (vi) to the authentication server 300. (Step A120— 4
  • the display device 131 displays the list of vj to the voter. Then, the voter selects and inputs the candidate name vi from the list of vj using the input device 132 (step A130-l). Then, the voter terminal 130 inputs the vi and the public information (p, q, g, Y) to the encryption means 134, and obtains E (vi) obtained by encrypting vi with Y (step A130). -2).
  • the voter terminal 130 inputs the in-house identifier IIDi of the voter i, the signature private key di and E (vi) to the in-house signature generation means 133, and enters the organization for (E (vi), IIDi).
  • An internal digital signature Sei is calculated (step Al30-3), and (E (vi), IIDi) and Sei are transmitted to the authentication server 300 (step A130-4).
  • the voter terminal 140 When the voter terminal 140 receives the list of (p, q, g, Y) and the list of (vj, E (vj)), as shown in FIG. Displayed to the voter, the voter selects and inputs the candidate name vi from the list of vj using the input device 142 (step A140-1). Then, voter terminal 140 transmits E (vi) corresponding to vi and public information (p, q, g, Y) to encryption server 440 (step A140-2). Next, the encryption Sano 40 inputs the received E (vi) and the public information (P, q, g, Y) to the re-encryption means 441, and encrypts E (vi) again.
  • the display device 151 displays the list of vj to the voter. Then, the voter selects and inputs the candidate name vi from the list of vj using the input device 152 (step A150-l). Then, the voter terminal 150 inputs the vi and the public information (p, q, g, Y) to the encryption means 154, and obtains E (vi) obtained by encrypting the vi with Y (step A150). -2).
  • the voter terminal 150 inputs the common base identifier CIDi of the voter i, the signature private key di and E (vi) to the common base signature generation means 153, and sets the common base for (E (vi), CIDi).
  • voting server 200 When voting server 200 receives (Ei, CIDi) and Sek from authentication server 300, voting server 200 The board signature verification means 202 confirms that Sek is the correct signature of the authentication server 300 for (Ei, CIDi) (step A8-1), searches the voter list database 201, and registers the CI Di. And that the CIDi vote has not yet been accepted (step A9-1), the (Ei, CIDi) and Sek are recorded in the voting data recorder 204, and in the voter list database 201. Record that CIDi has been voted (step A10-1).
  • voting server 200 receives (Ei, CIDi) and Sei from voter terminals 140 and 150, common voting signature verification means 202 confirms that Sei is the correct signature of voter i for (Ei, CIDi) (step A8-2), searches the voter directory database 201 and registers that CIDi is registered, Confirm that it is still accepted, what it is, (Step A9-2) and vote Over data recording apparatus 204 (Ei, CIDI) ⁇ This also for scoring and Sek with, CIDI the voters list database 201 records that already Vote (Step A10- 2
  • the voting server 200 transmits to the anonymous decryption system 500 the list of all Ei recorded in the voting data recording device 204 and the session ID transmitted to the anonymous decryption system 500 in step A2.
  • the anonymous decryption system 500 decrypts the list of Ei based on the public information (p, q, g, Y) specified by the session ID and the secret key X, and reorders the plaintext voting data at random.
  • a list of vj and proof data z that a one-to-one correspondence exists between the list of Ei and the list of vj are created (step A12), and the list of vj is Reply z (Step A13).
  • the voting server 200 counts the votes based on the received list of the plaintext voting data vj, and announces the counting result (step A14).
  • the voting server 200 sends the encrypted voting data to the voter terminals 100, 110, 140, and encrypts the encrypted voting data selected by the voter using the encryption sano 00, 410, 440. Since the voting is performed and transmitted to the voting server 200, the voting can be performed while protecting the secret of voting even with a voter terminal having no encryption means.
  • the voter terminals 100 and 120 are provided with the device-side authentication means 103 and 123, and the authentication server 300 is provided with the server-side authentication means 301 to perform authentication without relying on a digital signature. By transmitting the encrypted signature voting data to the voting server 200 with the signature, a voting can be performed even from a voter terminal having no signature generation means.
  • the voter terminals 110 and 130 are provided with in-house base signature generation means 113 and 133
  • the authentication server 300 is provided with the in-house base signature verification means 302 and the ID linking means 304, so that an in-house digital signature is given.
  • the authentication server 300 verifies the encrypted voting data, converts the data into a common base identifier from the in-house identifier, and adds the common base digital signature of the authentication server 300 to the voting server 200. By sending to, all voters are registered on a common public key authentication infrastructure! At least you can vote.
  • the anonymous electronic voting system of the second embodiment shown in FIG. 10 is different from the anonymous electronic voting system of the first embodiment shown in FIG.
  • the first conversion means 206 and the encryption verification test means 207 are provided in place of the encryption means 203 of the voting server 200, and the encryption servers 400, 410, and 440 Second conversion means 405, 415, and 445 are provided in place of the re-encryption means 401, 411, and 441, respectively, and a conversion verification server 700 including a conversion verification means 701 is provided.
  • the first conversion means 206 receives public information as input, and outputs first conversion data (first encryption parameter) and first conversion proof data.
  • Second conversion means 405, 415, and 445 receive public information as input and output second conversion data (second encryption parameter) and second conversion proof data.
  • the encrypted data creation means 104, 114, and 144 generate the public information, the first conversion data, the first conversion proof data, the second conversion data, the second conversion proof data, and the plaintext voting content vi. As input, it outputs cipher voting data E (vi) and outputs an encryption certifying that E (vi) has been generated correctly.
  • Encryption proof verification means 207 receives public information, encrypted voting data E (vi) and encrypted proof data as input, and verifies whether E (vi) is correctly generated. .
  • the first conversion means 206, the second conversion means 405, 415, 445, the encrypted data creation means 104, 114, 144 and the encryption verification test means 207 are described in Patent Document 1 for the anonymous decryption system 500.
  • the technique described in (1) is used, the following operation is performed.
  • the first conversion means 206 randomly selects random numbers r and d less than q, and outputs the first converted data (Gr, Yr, r)
  • the second conversion means 405, 415, 445 selects a random number s less than q, and converts the second conversion data (Gs, Ys, s)
  • u is a random number less than q selected at random.
  • the encrypted data creation means includes the first converted data (Gr, Yr, r), the first converted proof data (Gd, d), the second converted data (Gs, Ys, s), When the conversion proof data (Gu, u) and the plaintext voting content vi are input, the encrypted voting data E (vi) is
  • the proof by the encrypted proof data is encrypted by the encrypted proof verification means 207.
  • the conversion verification means 701 determines whether the conversion data (Gr, Yr, r) and the conversion proof data (Gd, d) are correctly created from public information (P, q, g, Y). Verify whether.
  • the conversion verification means 701 uses public information ( ⁇ , q, g, Y), conversion data (Gr, Yr, r), and conversion proof data ( Gd, d) and
  • FIG. 11 to 13 show the processing at the voter terminals 100, 110, and 140 (and the processing at the voting server, authentication server, and encryption server related to the processing at the voter terminals), respectively.
  • FIG. 14 illustrates the process from receiving a vote to the operation corresponding to counting votes.
  • the operation of the initial setting in the present embodiment is the same as that of the first embodiment, and the operation of the voter terminals 120, 130, and 150 is the same as that of the first embodiment. The description of these operations is omitted.
  • the voter terminals 100, 110, and 140 transmit a voting information request and a conversion data request to the voting server 200 (Step B5 in FIGS. 11, 12, and 13).
  • the voting server 200 inputs the public information (p, q, g, Y) to the first conversion means 206, and outputs the first conversion data (Gr, Yr, r) and the first conversion data. (Gd, d) and the conversion proof data (Gd, d) of Fig. 11, Fig. 12, and Fig. 13 (step B6), and these (p, q, g, Y), (Gr, Yr , r), (Gd, d) (Step B7 in FIGS. 11, 12, and 13).
  • Voter terminals 100, 110 When 140 receives (p, q, g, Y), (Gr, Yr, r), and (Gd, d) from the voting server 200, the crypto server 400, 410, and 440 respectively provide (p, q, g, Y) and the conversion data request (steps B100-1, B110-1, B140-1 in FIGS. 11, 12, and 13). Upon receiving the public information ( ⁇ , q, g, Y) and the conversion data request, the ⁇ ⁇ ⁇ Sano 00, 410, 440 respectively transmits the public information ( ⁇ , q, g, Y) to its second conversion means 405, 415, 445.
  • the voter terminal 100 includes first conversion data (Gr, Yr, r), first conversion proof data (Gd, d), and second conversion data (Gs, Ys, s) and the second conversion proof data (Gu, u), upon receiving the encrypted data creation means 104, the vote content vi input by the voter i, and (Gr, Yr, r), (Gd, d), (Gs, Ys, s) and (Gu, u) are input, and the encrypted voting data E (vi) and the encrypted voting proof data, t) are calculated (step B100-4). ). Then, after IIDi authentication, E (vi) and ( ⁇ , t) are transmitted to authentication server 300 (step B100-6).
  • the authentication server 300 creates a common base digital signature Sek of the authentication server 300 for (E (vi), ( ⁇ , t), CIDi) (step B 100-8), and (E (vi), ( ⁇ , t) ), CIDi) and Sek are sent to the voting server 200 (step B100-9).
  • the voter terminal 110 includes first conversion data (Gr, Yr, r), first conversion proof data (Gd, d), and second conversion data (Gs, Ys, s) and the second conversion proof data (Gu, u), the voting content vi input by the voter i and (Gr, Yr, r), (Gd, d), (Gs, Ys , s) and (Gu, u) are input to the encrypted data creation means 114, and encrypted voting data E (vi) and encrypted proof data (h, t) are calculated (step B110-4).
  • the voter terminal 110 creates an in-house digital signature Sei for (E (vi), ( ⁇ , t), IIDi) (step B110-5), and (E (vi), ( ⁇ , t) ), IIDi) and Sei are transmitted to the authentication server 300 (step B110-6).
  • the voter terminal 140 includes first conversion data (Gr, Yr, r), first conversion proof data (Gd, d), and second conversion data (Gs, Ys, s) and the second conversion proof data (Gu, u), the voting content vi input by the voter i and (Gr, Yr, r), (Gd, d), (Gs, Ys, s ) And (Gu, u) are input to the encrypted data creation means 144 to calculate the encrypted voting data E (vi) and the encrypted proof data, t) (step B140-4).
  • the voting server 200 When the voting server 200 receives (Ei, ( ⁇ , t), CIDi) and Sek from the authentication server 300, the voting server 200 corrects the authentication server 300 for (Ei, CIDi) with respect to (Ei, CIDi). It is confirmed that the signature is a signature (step B8-1), and that the Ei is correctly created by the encryption / deletion proof verification means 207 (step B9-1). After searching 201, it is confirmed that CIDi is registered! And that the CIDi vote is still accepted !, na!
  • Step B10-1 the voting data recorder 204 (Ei,, t), CIDi) and Sek are recorded, and the fact that CIDi has been voted is recorded in the voters list database 201 (step B11-1).
  • the voting server 200 receives (Ei,, t), CIDi) and Sei from the voter terminals 140, 150, the common infrastructure signature verification unit 202 causes Sei to vote on (Ei,, t), CIDi). Confirm that the signature is correct for the person i (step B8-2), and verify that Ei is correctly created by the encryption verification test means 207 (step B9-2).
  • the database 201 is searched to confirm that CIDi has been registered and that CIDi has not yet been voted (step B10-2), and that the voting data has been obtained. Record (Ei, CIDi) and Sek in the recording device 204, and record that CIDi has been voted in the voter list database 201 (step B11-2).
  • the voter who has voted using the voter terminals 100, 110, and 140 receives the public information (p, q, g, Y) received from the voting server and receives the first
  • the conversion data (Gr, Yr, r) and the first conversion proof data (Gd, d) are input to the conversion proof means 701 of the conversion verification server 700, and the first conversion data and the first conversion proof You may verify that the data was correctly created with public information (P, q, g, Y) capabilities.
  • the second conversion data (Gs, Ys, s) and the second conversion proof data (Gu, u) received from the encryption servers 400, 410, and 440 are also converted by the conversion verification means of the conversion verification server 700.
  • 701 may verify that the public information (P, q, g, Y) force has also been correctly created.
  • the voter terminals 100, 110, and 140 are provided with encrypted data creation means 104, 114, and 144, respectively, and the voting server 200 is provided with the first conversion means 206.
  • the voting server 200 can create encrypted data without performing complicated calculations.
  • the voting server 200 and the cryptographic servers 400, 410, and 440 can independently operate the voter's cryptographic data.
  • the plaintext voting contents cannot be known from the dani voting data.
  • the encrypted data generated by the encrypted data generating means 104, 114, 144 is generated by the encrypted data generated by the encrypted data 124, 134, 154 of the voter terminals 120, 130, 150. Verification is possible with the same process as data.
  • the voter terminals 100, 110, and 140 are provided with means for creating encrypted data 104, 114, and 144, the names of candidates to be voted on are determined without limitation.
  • the present embodiment is also applicable to voting (or a questionnaire) based on a free description in which a voter freely determines the content of voting.
  • the first conversion data and the first conversion proof data transmitted by the voting server 200 and the second conversion data and the second conversion proof data transmitted by the cryptographic servers 400, 410 and 440, respectively.
  • the conversion verification means 701 the data can check whether the information is correctly created from the public information (p, q, g, Y). Therefore, if the voting server 200 or the cryptographic servers 400, 410, and 440 send unauthorized conversion data and conversion proof data to the voter terminal to block the voting, the fraud is detected. As a result, fraudulent activities at the voting server 200 and the encryption servers 400, 410, 440 can be suppressed.
  • the anonymous electronic voting system according to the third embodiment shown in FIG. 15 differs from the anonymous electronic voting system according to the first embodiment shown in FIG.
  • a certificated encryption means 205 is provided in place of the encryption means 203, and a re-encryption means 402 with a certificate is provided in place of the encryption means 400, 410, and 440. 412 and 442 are provided, and the encryption proof verification server 600 is provided with an encryption proof verification means 601 and a re-encryption proof verification means 602.
  • the certified encryption means 205 receives public information including the encryption public key ⁇ and plaintext data V as input, encrypts V with ⁇ , and ⁇ ( ⁇ ) Then, proof data w indicating that V has been correctly encrypted is output.
  • the re-encryption means 402, 412, and 442 with the certificate receive public information including the encryption public key ⁇ and the encrypted data ⁇ (V) as input, and encrypt ⁇ (V) again with ⁇ (( V) and proof data w 'indicating that ⁇ ' (V) correctly re-encrypted ⁇ ( ⁇ ) by ⁇ .
  • the encryption key proof verification means 601 receives the public information including the encryption key public key ⁇ , the plaintext data V, the encryption data) (V) and the proof data w, and ⁇ (V) Verifies whether V is correctly encrypted.
  • the re-encryption proof verification means 602 generates public information including the encryption key public key ⁇ , encrypted data ⁇ (V), and ⁇ ′ (V) obtained by re-encrypting ⁇ (V) and proof data w ′. , And verify that ⁇ '(V) is a correct encryption of ⁇ ( ⁇ ) by ⁇ .
  • the certified encryption device 205 receives public information ( ⁇ , q, g, Y) and plaintext voting data vi as input and performs (vi) and proof data w are output.
  • E (vi) is expressed as (Gi, Vi) t,
  • the re-encrypted dangling means 205 with the proof includes the public information (p, q, g, Y) and the encrypted voting data E (vi)
  • s is a random number randomly selected for the plaintext voting data vi. Then, s is output as proof data w '.
  • Vi vi X Y "w mod p
  • V 'i Vi XY "w' mod p
  • Figure 16 Figure 16— Figure 18 shows the processing at the voter terminals 100, 110, and 140 (and the processing at the voting server, authentication server, and encryption server related to the processing at the voter terminals, respectively).
  • FIG. 19 illustrates the processing from the reception of a vote to the operation corresponding to counting votes.
  • the operation of the initial setting in the present embodiment is the same as that of the first embodiment, and the operation of the voter terminals 120, 130, and 150 is the same as that of the first embodiment. The description of these operations is omitted.
  • the voter terminals 100, 110, and 140 transmit a cryptographic voting information request to the voting server 200.
  • the voting server 200 Upon receiving the cryptographic voting information request, the voting server 200 encrypts vj with public information (p, q, g, Y) for all the candidate names vj by the certified encryption means 205, and E ( vj), and proof data wj that E (vj) is a correctly encrypted version of vj by (p, q, g, Y) is created (Figs. 17, 18 and 19).
  • Step C6 the public information (p, q, g, Y) and the list of (vj, E (vj), wj) are returned to the voter terminals 100, 110, 140 (FIGS. 16, 17 and 18).
  • Step C7 the public information (p, q, g, Y) and the list of (vj, E (vj), wj) are returned to the voter terminals 100, 110, 140 (FIGS. 16, 17 and 18).
  • the cryptographic servers 400, 410, and 440 also receive the voter terminal power E (vi) and the public information (p, q, g, Y), respectively, the authenticated re-encryption means 402, 412, and 442, respectively.
  • E (vi) and ( ⁇ , q, g, Y) To E (vi) and ( ⁇ , q, g, Y), and then re-encrypt E (vi) .
  • E '(vi) and E (vi) (p, q, g, Y)
  • the proof data w 'i that has been correctly encrypted is created (steps C100-1, C110-1, C140-1 in Fig. 16, Fig. 17, and Fig. 18), and the data is sent to the voter terminals 100, 110, 140.
  • Reply E '(vi) and w' i steps C100-2, C110-2, C140-2 in Figs. 16, 17 and 18).
  • the voter who has voted using the voter terminals 100, 110, and 140 receives the public information (p, q, g, Y) and (vj,
  • the list of E (vj), wj), ( ⁇ ′ (vi), w ′ i) and E (vi) received from the encryption server are transmitted to the encryption proof verification server 600 (step C15).
  • the cryptographic proof verification server 600 inputs the public information (p, q, g, ⁇ ) and the list of (vj, E (vj), wj) to the encryption proof verification means 601 and outputs all E (vj) Verifies that vj is correctly encrypted by ( ⁇ , q, g, Y) (step C16), and further re-encrypts ( ⁇ '(vi), E (vi), w'). It is input to the dangling verification means 602, and it is verified whether E, (vi) has correctly re-encrypted E (vi) by (p, q, g, Y) (step C17), and the verification result is output (Step C18).
  • the voting server 200 is provided with the certified encryption device 205 and the voter end. At the end, the list of (vj, E (vj), wj) is transmitted, and E (vj) is correctly encrypted by (p, q, g, Y) to vj by (p, q, g, Y) by the encryption verification test means 601. If the voting server 200 sends (vj, E (v'j), w) to the voter terminal falsely as if the voting server 200 encrypted vj, the fraud is found. As a result, fraudulent activities at the voting server 200 can be suppressed.
  • cryptographic servers 400, 410, and 440 are provided with certified re-encryption means 402, 412, and 442, respectively, and E '(vi), E (vi), and w' are transmitted to the voter terminal,
  • the encryption server can verify whether E, (vi) is a correct encryption of E (vi) by (p, q, g, Y) by the encryption proof verification means 602. ) Is re-encrypted, and if E '(V), E (vi), w' is returned to the voter terminal, the fraud is detected. As a result, fraudulent activities at the encryption servers 400, 410, and 440 can be suppressed.
  • the encryption / decryption proof verification means 601 is provided in another server (encryption proof verification server 600) and verification is performed after voting is completed. It is also possible to provide an encryption proof verification means so that verification can be performed during voting. It is also possible to provide a cryptographic device verification means as a component in the cryptographic server so that only the verification of the cryptographic proof of the voting server is performed during the voting, and only the verification of the proof data of the cryptographic server is performed after the voting. It is. Further, the voter terminal may be provided with an encryption proof verification means 601 and a re-encryption proof verification means 602 so that all verification is performed during voting.
  • the anonymous electronic voting system according to the fourth embodiment shown in FIG. 20 differs from the anonymous voting system according to the first embodiment shown in FIG. Connected to k cryptographic sanos OO—1—400—k, as well as voter terminals 110 and 140, respectively. It is designed to be connected to the No. server 410-1—410—k and the encryption server 440—1—440—k. Each cryptographic sano OO— 1—400— k, 410— 1—410— k, 440— 1— 440— k has the re-B-sounding means 401—1— 401— k, 411— 1—, respectively. 411-k, 441-1-441 -k are provided.
  • the configurations of the voter terminals 100, 110, 120, 130, 140, 150, the voting server 200 and the authentication server 300 are the same as those of the first embodiment shown in FIG.
  • Figures 21 to 23 show the processing at the voter terminals 100, 110, and 140 (and the processing at the voting server, authentication server, and encryption server related to the processing at the voter terminals, respectively).
  • the operation of the initial setting in the present embodiment is the same as that of the first embodiment
  • the operation of the voter terminals 120, 130, and 150 is the same as that of the first embodiment. The description of these operations is omitted.
  • the voter terminals 100, 110, and 140 transmit a cryptographic voting information request to the voting server 200.
  • Step A5-1 in Figure 21, Figure 22, and Figure 23 Upon receiving the cryptographic voting information request, the voting server 200 encrypts vj with public information (p, q, g, Y) for all the candidate names vj by using the encrypting means 203, and executes E. (vj) is created (Step A6 in Figs. 21, 22, and 23), and the public information (P, q, g, Y) and the list of (vj, E (vj)) are Reply to 110, 140 (Step A7-1 in Figures 21, 22, and 23).
  • the voter terminals 100, 110, 140 When the voter terminals 100, 110, 140 receive the (p, q, g, ⁇ ) and the list of (vj, E (vj)), the voter terminals 100, 110, 140 display the list of vj on their display devices 101, 111, 141. The voter selects and inputs the candidate vi from the list of vj using the input devices 102, 112, and 142 (steps A100-1, A110-1, A140-1 in FIGS. 21, 22, and 23). ).
  • the voter terminals 100, 110, and 140 transmit the encrypted data E (vi) corresponding to vi and the public information (p, q, g, Y) to the first B-syllable Sano 400-1. , 410-1 and 440-1 (steps D101-1, Dill-1 and D141-1 in FIGS. 21, 22, and 23).
  • B-No. Sano OO— 1, 41 0-1, 440-1 re-encrypts received encrypted data E (vi) and public information (p, q, g, Y).
  • Means 401—1, 410-1, and 440—1 are input to each other and E (vi) is re-encrypted to calculate E, l (vi) (Steps D101—2 in FIGS.
  • Di li— 2, D141— 2), E, 1 (vi) are returned to the voter terminals 100, 110, and 140 (steps D101—3, Di li—3, D141— in FIGS. 21, 22, and 23). 3).
  • the voter terminals 100, 110, and 140, and the first ⁇ ongo Sano 400—1, 410-1, 440—1 obtained E, l (vi) from the second ⁇ ongo Sano 400 — 2, 410— 2, 440— 2, E ′ l (vi) is encrypted once more to obtain E ′ 2 (vi).
  • the voter terminals 100, 110, and 140 respectively, cryptographic servers 400—1—400—k, cryptographic servers 410—1—410—k, and cryptographic servers 440—1—440—k. Is connected, and the voter terminals 100, 110, and 140 send E ′ (vi) obtained by re-encrypting the encrypted data E (vi) received from the voting server 200 a total of k times to the voting server 200. . Therefore, as long as the voting server and the k cryptographic servers are not all colluded, the secret of the voting can be more strongly sought without the fact that the plaintext voting content vi is known from E '(vi).
  • the number of cryptographic servers connected to the voter terminals 100, 110, and 140 may be different numbers that do not need to be the same as k. Also, some voter terminals can share some cryptographic servers as in the first embodiment.
  • each cryptographic server may be provided with a re-encryption device with a certificate to create encrypted proof data.
  • a re-encryption device with a certificate to create encrypted proof data.
  • the voter terminal can use more than one cryptographic server to protect the secret of voting more robustly.
  • the number of encryption servers corresponding to one voter terminal is increased.
  • the anonymous electronic voting system according to the fifth embodiment shown in FIG. 24 is different from the anonymous voting system according to the second embodiment shown in FIG. k cryptographic servers OO—1—400—k are connected, and the voter terminals 110 and 140 are also connected to the No. server 410—1—410—k and the cryptographic server 440—1—440—k, respectively. It was made to be done.
  • Each cryptographic sano OO— 1—400—k, 410—1—410—k, 440—1—440—k has the second conversion means 405—1—405—k, 415—l—415—, respectively. k, 445—1— 445—k are provided.
  • m is an integer satisfying l ⁇ m ⁇ k
  • the second conversion means 405—m, 415—m, 445—m of the m-th cryptographic server 400-m, 410—m, 440—m is the second The conversion data (Gsm, Ysm, sm) and the second conversion proof data (Gum, um) are created.
  • the configurations of the voter terminals 120, 130, 150, the voting server 200, and the authentication server 300 are the same as in the case of the second embodiment shown in FIG.
  • Figure 25- Figure 27 show the processing at the voter terminals 100, 110, and 140 (and the processing at the voting server, authentication server, and encryption server related to the processing at the voter terminals), respectively.
  • the operation of the initial setting in this embodiment is the same as that of the second embodiment, and the operation of the voter terminals 120, 130, and 150 is the same as that of the second embodiment. The description of these operations is omitted.
  • the voter terminals 100, 110, and 140 transmit a conversion data request to the voting server 200 (step B5 in FIGS. 25, 26, and 27).
  • the voting server 200 Upon receiving the conversion data request, the voting server 200 inputs the public information (p, q, g, Y) to the first conversion means 206, and outputs the first conversion data (Gr, Yr, r) and the first conversion data. (Gd, d) and the conversion proof data (Step B6 in FIG. 25, FIG. 26, and FIG. 27), and (p, q, g, Y), (Gr , Yr, r) and (Gd, d) (Step B7 in Figs. 25, 26 and 27).
  • the voter terminals 100, 110, 140 and the voting Sano 200 force also receive ( ⁇ , q, g, Y), (Gr, Yr, r), (Gd, d), the cryptographic servers 400-1, 410 respectively (P, q, g, Y) and the conversion data request are transmitted to -1, 440-1 (steps E101-1, Elll-1, E141-1 in FIGS. 25, 26 and 27).
  • the voter terminals 100, 110, and 140 display the vi input by the voter, the first conversion data (Gr, Yr, r), the first conversion proof data (Gd, d), and k
  • the subsequent processing is the same as in the second embodiment.
  • the voter terminals 100, 110, and 140 respectively, the cryptographic servers 400—1—400—k, the cryptographic servers 410—1—410—k, and the cryptographic servers 440—1—440—k, respectively.
  • the voter terminals 100, 110, and 140 convert the encrypted data E (vi) by the first converted data received from the voting server 200 and the k second converted data received from the k cryptographic servers. Create and send the encrypted data E (vi) to the voting server 200. Therefore, as long as the voting server and the k cryptographic servers are not all colluded, the secret of the voting can be sought more strongly than E '(vi) does not know the plaintext voting content vi.
  • the number of cryptographic servers connected to the voter terminals 100, 110, and 140 may be different numbers that do not need to be the same as k.
  • some voter terminals share some cryptographic servers as in the second embodiment. It is also possible.
  • the voting server 200 is not provided with the first conversion means, and uses only the second conversion data and the second conversion proof data received from the k cryptographic servers to encrypt the voting data.
  • the data E (vi) and the encrypted data (t) may be created.
  • all voter terminals including the voter terminals 100, 110, and 140 simply send a vote information request to the voting server 200, and the voting server 200 sends public information (p. , q, g, Y) and the candidate information.
  • the cipher data generating means 104, 114, 144 of the voter terminals 100, 110, 140 are configured to transmit k second converted data (Gsl, Ysl, si) — (Gsk, Ysk, sk) and k second converted data.
  • k second converted data Gsl, Ysl, si
  • k second converted data Gsk, Ysk, sk
  • k second converted data k second converted data
  • the encrypted voting data E (vi) and the encrypted proof data, t) are calculated as follows.
  • the voting server can calculate the first conversion data and the first conversion proof data in advance, and similarly, publish public information (p, q, g, Y). It is also possible to distribute the data to the cryptographic server and calculate the second conversion data and the second conversion proof data in advance.
  • the voter terminal, the voting server, the authentication server, the encryption server, and the encryption certificate verification server which constitute the anonymous electronic voting system described above are all
  • the present invention can also be realized by reading a computer program for realizing the above functions into a computer such as a server computer or a personal computer and executing the program.
  • a computer program is read into a computer by a recording medium such as a magnetic tape or a CD-ROM or via a network.
  • each component in the voter terminal, the voting server, the authentication server, the encryption server, and the cryptographic verification server is These can be realized by software or hardware.
  • the present invention can be applied to the use of an anonymous electronic voting system via a network or the like. Also, by allowing free description as voting content, it can be applied to the use of an anonymous electronic questionnaire system via a network.
  • FIG. 1 is a block diagram showing a configuration of an anonymous electronic voting system according to a first embodiment of the present invention.
  • FIG. 2 is a flowchart showing an operation of an initial setting in the first embodiment.
  • FIG. 3 is a flowchart showing an operation of the voter terminal 100 according to the first embodiment.
  • FIG. 4 is a flowchart showing an operation of the voter terminal 110 according to the first embodiment.
  • FIG. 5 is a flowchart showing an operation of the voter terminal 120 according to the first embodiment.
  • FIG. 6 is a flowchart showing an operation of the voter terminal 130 in the first embodiment.
  • FIG. 7 is a flowchart showing an operation of the voter terminal 140 in the first embodiment.
  • FIG. 8 is a flowchart showing an operation of the voter terminal 150 in the first embodiment.
  • FIG. 9 is a flowchart showing an operation of the voting server 200 in the first embodiment.
  • FIG. 10 is a block diagram showing a configuration of an anonymous electronic voting system according to a second embodiment of the present invention.
  • FIG. 11 is a flowchart showing an operation of the voter terminal 100 according to the second embodiment.
  • FIG. 12 is a flowchart showing an operation of a voter terminal 110 according to the second embodiment.
  • FIG. 13 is a flowchart showing the operation of the voter terminal 140 in the second embodiment.
  • FIG. 14 is a flowchart showing an operation of the voting server 200 in the second embodiment.
  • FIG. 15 is a block diagram showing a configuration of an anonymous electronic voting system according to a third embodiment of the present invention.
  • ⁇ 16 ⁇ is a flowchart showing the operation of the voter terminal 100 in the third embodiment.
  • FIG. 17 is a flowchart showing the operation of the voter terminal 110 in the third embodiment.
  • FIG. 18 is a flowchart showing the operation of the voter terminal 140 in the third embodiment.
  • FIG. 19 is a flowchart showing an operation of a cryptographic verification server 600 according to the third embodiment.
  • FIG. 20 is a block diagram showing a configuration of a fourth embodiment of the present invention.
  • FIG. 21 is a flowchart showing the operation of the voter terminal 100 in the fourth embodiment.
  • FIG. 22 is a flowchart showing the operation of the voter terminal 110 in the fourth embodiment.
  • It is a flowchart showing the operation of the voter terminal 140 in the fourth embodiment.
  • FIG. 24 is a block diagram showing a configuration of a fifth embodiment of the present invention.
  • FIG. 26 is a flowchart showing the operation of the voter terminal 110 in the fifth embodiment.
  • Fig. 27 is a flowchart showing the operation of the voter terminal 140 in the fifth embodiment.
  • FIG. 28 is a block diagram showing a configuration of a conventional anonymous electronic voting system.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Time Recorders, Dirve Recorders, Access Control (AREA)

Description

明 細 書
匿名電子投票システム及び匿名電子投票方法
技術分野
[0001] 本発明は、匿名電子投票システム及び方法に関し、更に詳しくは、多様なクライア ント環境から利用可能な匿名電子投票システム及び匿名電子投票方法に関する。 背景技術
[0002] 匿名電子投票システムは、例えばネットワークなどを介して無記名の秘密投票を電 子的に実現するシステムであり、従来の匿名電子投票システムの一例が、特許文献 1や非特許文献 1に記載されている。なお、以下の説明において、投票には、予め定 められている候補者から選挙を行うための投票のみならず、自由記述を許すアンケ
—トなども含まれるものとする。また、候補者や候補者名は、単に選挙における候補 者や候補者名を指すものではなぐある集合カゝら投票者の意思によってある要素ある いは項目を選択する場合のその要素 (項目)や要素 (項目)名をも含むものである。
[0003] 図 28に示すように、従来の匿名電子投票システムは、窓口センタ 901と複数の復 号シャッフルセンタ 902とからなる匿名復号システム 900と、各投票者がアクセスする こととなる投票管理センタ (投票サーバ) 910と、力も構成されている。匿名復号シス テム 900は、投票の秘密を守るために設けられており、投票者と暗号化投票データと の対応を秘匿して復号結果を出力するために用いられて!/、る。
[0004] 上記構成を有する従来の匿名電子投票システムは、次のように動作する。
[0005] まず、窓口センタ 901と復号シャッフルセンタ 902は、投票用の暗号化鍵などのシ ステムの公開情報を生成して投票管理センタ 910に送信し、投票管理センタ 910は 、各投票者にその公開情報を通知する。
[0006] 投票期間が始まると各投票者は、公開情報に基づいて自分の投票内容を暗号化し て暗号投票文を作成し、その暗号投票文に対して投票者のデジタル署名を生成し、 暗号投票文とデジタル署名とを投票管理センタ 910に送信する。その際、各投票者 は、典型的には、自己のクライアント端末において暗号投票文やデジタル署名を作 成し、各種のネットワークを介して自己のクライアント端末力も投票管理センタ 910に 対して暗号投票文とデジタル署名とを投票管理センタ 910に送信する。投票管理セ ンタ 910は、受信したデジタル署名を検証し、有権者名簿をもとに投票者の投票権を 確認し、重複投票がないことを確認した後、受信した暗号投票文を受け付ける。
[0007] 投票期間が終わると、投票管理センタ 910は、投票の受け付けを終了し、投票開始 力も終了までに受け付けた暗号投票文のリストを匿名復号システム 900の窓口センタ 901に送付する。窓口センタ 901は、復号シャッフルセンタ 902を介して暗号投票文 のリストを復号し、リストの順序を入れ替えることで平文の投票文のリストを得、平文の 投票文のリストを投票管理センタ 910に返送する。
[0008] 投票管理センタ 910は、窓口センタ 901から受け取った平文の投票文のリストにより 、投票結果の集計を行なう。
特許文献 1:特開 2002-237810号公報
特許文献 2 :特開 2001— 251289号公報
特許文献 3:特開 2002 - 344445号公報
非特許文献 1 :佐古 和恵、外 6名、〃シャッフリングによる大規模電子投票システムの 実現"、情報処理学会第 62回全国大会、 2001年 3月
発明の開示
発明が解決しょうとする課題
[0009] 従来の匿名電子投票システムでは、投票者が使用するクライアント端末が携帯電 話機のような記憶容量や処理能力の乏しい機器である場合には、投票の秘密が守ら れた投票が難しい、という問題点がある。その理由は、従来の匿名電子投票システム で投票者が行なう暗号ィ匕処理プログラムは、記憶容量や処理能力の乏し 、機器には 実装するのが難しぐ一方、他の機器に投票内容を送って暗号化処理を行なうことと すると、暗号ィ匕処理を行なう機器には投票内容がわ力つてしまうからである。
[0010] また、従来の匿名電子投票システムでは、広く一般の人を有権者とするような投票( 例えば公職選挙)において、有権者の認証が困難であり、非有権者の投票や重複投 票を防止することが難しい、という問題点もある。その理由は、従来の匿名電子投票 システムでは、有権者の認証に利用するデジタル署名において、すべての投票者が 共通の公開鍵認証基盤に登録されていることを前提としているが、現在、一般にはそ のような基盤が普及して 、な 、ためである。
[0011] そこで本発明の第 1の目的は、携帯電話機などの記憶容量や処理能力の小さい機 器からも投票の秘密を守りつつ投票を行なえる電子投票システム及び匿名電子投票 方法を提供することである。
[0012] 本発明の第 2の目的は、すべての有権者が共通の公開鍵認証基盤に登録されて V、るような条件が整備されて 、な 、場合であっても、有権者認証の行なえる匿名電 子投票システム及び匿名電子投票方法を提供することである。
課題を解決するための手段
[0013] 本発明は、第 1の視点において、候補者名と暗号ィ匕候補者名との組合わせをリスト として含むデータを受信して、選択された候補者の前記暗号化候補者名をネットヮー ク経由で送信する投票者端末と、
前記暗号化候補者名を受信し再度暗号化して暗号化投票データを作成し、該喑 号化投票データを、前記暗号化候補者名を送信した当該投票者端末に前記ネットヮ ーク経由で返信する少なくとも 1つの暗号サーバと、
前記投票者端末から暗号化投票データを受信し、該受信した暗号化投票データの 内で有効な暗号ィ匕投票データのリストを作成し、該作成したリストを前記ネットワーク 経由で送信する投票サーバと、
前記投票サーバから受信した前記有効な暗号化投票データのリストを復号し、該リ ストの順序を入れ換えた平文の候補者名リストを前記ネットワーク経由で送信する復 号サーバとを備え、
前記投票サーバは、前記復号サーバから前記平文の候補者名リストを受信し、該 受信した候補者名リストに基づいて投票結果を集計することを特徴とする電子投票シ ステムを提供する。
[0014] 本発明の第 1の視点に係る匿名電子投票システムの好ましい態様では、投票サー バは復号サーバ(匿名復号システム)と接続され、投票サーバには暗号ィ匕手段を備 え、暗号ィ匕手段をもたない投票者端末は暗号サーバと接続されており、共通基盤署 名生成手段をもたない投票者端末は認証サーバと接続される。暗号サーバには再 暗号化手段を備え、認証サーバには ID連携手段と共通基盤署名生成手段を備える [0015] 上記構成において、投票サーバは暗号ィ匕手段をもたない投票者端末に対しては 平文の候補者名と暗号化された候補者名の組を送信し、暗号化手段をもたな!ヽ投票 者端末は、投票者の選んだ候補者名に対応する、暗号化された候補者名を、暗号 サーバを介して再度暗号ィ匕して力も投票サーバに送信し、投票サーバは、受信した すべての暗号データを匿名復号システムにより復号する。これにより、本発明の第 1 の目的を達成することができる。
[0016] また、共通基盤署名生成手段をもたな ヽ投票者端末は、認証サーバと通信を行な つて組織内での個人認証を行な!/ヽ、認証サーバは組織内に閉じた投票者 IDを ID連 携手段により共通基盤における IDに変換し、この IDと投票データの組に認証サーバ の共通基盤デジタル署名を付与して投票サーバに送信する。このように、既存の認 証基盤を利用して個人認証を行なったことを認証サーバのデジタル署名により証明 することで、本発明の第 2の目的を達成することができる。
[0017] 本発明は、第 2の視点において、ネットワークに接続された投票者端末と、
公開情報から前記投票者端末毎に第 1暗号化パラメータを生成する第 1データ変 換手段を有し、前記第 1暗号パラメータを前記投票者端末に送信する第 1の暗号サ ーバと、
前記公開情報から前記投票者端末毎に第 2暗号化パラメータを生成する第 2デー タ変換手段を有し、前記第 2暗号化パラメータを前記投票者端末に送信する第 2の 暗号サーバと、
前記投票者端末から暗号化投票データを受信し、該受信した暗号化投票データの 内で有効な暗号ィ匕投票データのリストを作成し、該作成したリストを前記ネットワーク 経由で送信する投票サーバと、
前記投票サーバから受信した前記有効な暗号化投票データのリストを復号し、該リ ストの順序を入れ換えた平文の候補者名リストを生成し、前記ネットワーク経由で送 信する復号サーバとを備え、
前記投票サーバは、前記復号サーバから前記平文の候補者名リストを受信し、該 受信した候補者名リストに基づ 1ヽて投票結果を集計し、 前記投票者端末は、投票内容を前記第 1及び第 2暗号化パラメータに基づいて暗 号ィ匕して暗号ィ匕投票データを生成する暗号ィ匕手段を有し、該暗号ィ匕投票データを 前記投票サーバに送信することを特徴とする匿名電子投票システムを提供する。
[0018] 上記本発明の第 2の視点に係る匿名電子投票システムの好ましい態様では、投票 サーバが、第 1の視点の匿名電子投票システムにおける暗号化手段にかえて第 1の 変換手段を備え、第 1の視点の匿名電子投票システムにおける暗号サーバの再暗号 化手段にかえて第 2の変換手段を備え、投票者端末が暗号化手段 (暗号データ作成 手段)を備える。
[0019] 上記好ましい態様の第 2の視点に係る匿名電子投票システムでは、投票サーバは 、第 1の変換手段により投票内容の暗号ィ匕処理に必要な演算の一部を行なってその 結果である暗号パラメータを投票者端末へ送信し、暗号サーバも同様に第 2の変換 手段により投票内容の暗号ィヒ処理に必要な演算の一部を行なってその結果である 暗号パラメータを投票者端末へ送信し、投票者端末では投票内容とともに、投票サ ーバから受信した第 1の変換結果と暗号サーバから受信した第 2の変換結果とを暗 号データ作成手段に入力して暗号ィ匕投票データを作成することで、本発明の第 1の 目的を達成することができる。
発明の効果
[0020] 本発明の匿名電子投票システムは、記憶容量や処理能力の小さい機器からも電子 投票を行なえる、という効果を有する。その理由は、暗号化処理のすべて、もしくは、 暗号ィ匕処理のうちで計算量の多い変換処理を、投票者端末で行なう必要がないから である。
[0021] また本発明の匿名電子投票システムは、記憶容量や処理能力の小さい機器を使つ て電子投票を行なっても、投票の秘密を守ることができる、という効果を有する。その 理由は、暗号ィ匕投票データの復号は復号サーバによって行なわれるため、すべての 暗号化投票データが復号されても、どの投票者の暗号ィ匕投票データがどの平文に 対応するかがわ力 な 、ことと、投票内容の平文は投票サーバと暗号サーバの両方 の処理により暗号化され、投票サーバや暗号サーバは、単独では投票された暗号化 投票データを復号できな ヽからである。 [0022] さらに本発明の好ましい態様のの匿名電子投票システムは、すべての有権者が共 通の公開鍵認証基盤に登録されて 、るような条件が整備されて 、なくても、不正投 票を防止しつつ投票を行なえる、という効果を有する。その理由は、組織内に限られ た認証手段し力もたな 、有権者を認証サーバが認証し、その投票データに認証サー バのデジタル署名を付与することで、認証サーバによる投票者の認証が行なわれて V、るデータであることを確認できる力 である。
発明を実施するための最良の形態
[0023] 次に、本発明の好ましい実施の形態について、図面を参照して詳細に説明する。
[0024] 《第 1の実施形態》
図 1は、本発明の第 1の実施形態の匿名電子投票システムの構成を示している。こ の匿名電子投票システムは、それぞれ構成要素や処理能力などが異なっている投 票者端末 100, 110, 120, 130, 140, 150と、投票センタ(投票サーノ) 200と、認 証サーノ 300と、 B音号サーノ 400, 410, 440と、匿名復号システム 500と力ら構成さ れる。 B音号サーノ 400, 410, 440は、それぞれ、投票者端末 100, 110, 140と接 続している。後述する説明から明らかなように、投票者端末 100, 110, 120, 130, 1 40, 150からの投票センタ 200への接続形態は多様であり、あるものは投票センタ 2 00に直接接続し、別のものは認証サーバ 300を介して投票センタ 200に接続し、ま た別のものは、直接接続と認証サーバ 300を介した接続とを併用している。ここでは 簡単のため図示を省略する力 投票者端末 100, 110, 120, 130, 140, 150ίま、 それぞれ、複数存在してもカゝまわない。また、投票者端末ひとつにつきひとつの暗号 サーバが接続される構成としてもよいし、いくつかの投票者端末がひとつの暗号サー ノ と接続される構成としてもよい。また、暗号サーバと認証サーバとが同一のサーバ 上で動作することも可能である。
[0025] まず、各投票者端末 100, 110, 120, 130, 140, 150の構成【こつ!ヽて説明する。
[0026] 投票者端末 100は、ディスプレイなどの表示装置 101と、ボタンやキーボードなどの 入力装置 102と、機器側認証手段 103とを備え、投票サーバ 200、認証サーバ 300 、暗号サーバ 400と通信回線などにより接続されている。
[0027] 投票者端末 110は、ディスプレイなどの表示装置 111と、ボタンやキーボードなどの 入力装置 112と、組織内基盤署名生成手段 113とを備え、投票サーバ 200、認証サ ーバ 300、暗号サーバ 410と通信回線などにより接続されている。
[0028] 投票者端末 120は、ディスプレイなどの表示装置 121と、ボタンやキーボードなどの 入力装置 122と、機器側認証手段 123と、暗号ィ匕手段 124とを備え、投票サーバ 20
0、認証サーバ 300と通信回線などにより接続されている。
[0029] 投票者端末 130は、ディスプレイなどの表示装置 131と、ボタンやキーボードなどの 入力装置 132と、組織内基盤署名生成手段 133と、暗号ィ匕手段 134とを備え、投票 サーバ 200、認証サーバ 300と通信回線などにより接続されている。
[0030] 投票者端末 140は、ディスプレイなどの表示装置 141と、ボタンやキーボードなどの 入力装置 142と、共通基盤署名生成手段 143とを備え、投票サーバ 200、暗号サー ノ 440と通信回線などにより接続されている。
[0031] 投票者端末 150は、ディスプレイなどの表示装置 151と、ボタンやキーボードなどの 入力装置 152と、共通基盤署名生成手段 153と、暗号ィ匕手段 154とを備え、投票サ ーバ 200と通信回線などにより接続されている。
[0032] 投票サーバ 200は、有権者名簿データベース 201と、共通基盤署名検証手段 202 と、暗号化手段 203と、ハードディスクドライブなどの記録装置 204とを備え、投票者 端末 100, 110, 120, 130, 140, 150及び認証サーノ 300と通信回線などにより 接続されている。
[0033] 認証サーバ 300は、サーバ側認証手段 301と、組織内基盤署名検証手段 302と、 共通基盤署名生成手段 303と、 ID連携手段 304とを備えて 、る。
[0034] 暗号サーバ 400, 410, 440は、それぞれ再暗号化手段 401, 411, 441を備えて いる。
[0035] 投票者端末 100, 120の機器側認証手段 103, 123は、認証サーバ 300のサーバ 側認証手段 301と通信を行ない、投票者端末を操作している投票者の識別子が IDj であることの認証を受けるとともに、このサーバ側認証手段 301と通信を行ない、投票 者端末 100, 120を操作している投票者 jの識別子 IDjを認証サーバ 300に通知する
[0036] 投票者端末 120, 130, 140, 150と投票サーバ 200とにそれぞれ設けられた暗号 化手段 124, 134, 144, 154, 203は、暗号ィ匕公開鍵 Yと平文投票データ vを入力 とし、 Yにより Vを暗号ィ匕した暗号ィ匕投票データ E (V)を出力する。
[0037] B音号サーノ 400, 410, 440の再 B音号ィ匕手段 401, 411, 441は、いずれも、 B音号 化公開鍵 Yと暗号化投票データ E (V)を入力とし、 Yにより E (V)を再度暗号化した暗 号化投票データ E' (V)を出力する。
[0038] 投票者端末 110, 130の組織内署名生成手段 113, 133は、暗号化投票データ E
(vj)と投票者 jの組織内識別子 IIDjと署名用秘密鍵 djとを入力とし、データ (E (vj) , I IDj)に対する投票者 jの組織内向けデジタル署名 Sejを出力する。
[0039] 認証サーバ 300の組織内署名検証手段 302は、暗号化投票データ E (vj)と組織内 識別子 IIDjと組織内向けデジタル署名 Sejと検証用公開鍵 Pjとを入力とし、 Sejがデ ータ (E (vj) , IIDj)に対して署名用秘密鍵 djにより正しく計算されたものかどうかを判 定する。
[0040] 投票者端末 140, 150の共通基盤署名生成手段 143, 153は、暗号化投票データ E (vj)と投票者 jの共通識別子 CIDjと署名用秘密鍵 djを入力とし、データ (E (vj) , CI Dj)に対する投票者 jの共通基盤デジタル署名 Sejを出力する。
[0041] 認証サーバ 300の共通基盤署名生成手段 303は、暗号化投票データ E (vj)と投票 者 jの共通識別子 CIDjと、認証サーバの署名用秘密鍵 dkを入力とし、データ (E (vj) , CIDj)に対する認証サーバの共通基盤デジタル署名 Sekを出力する。
[0042] 投票センタ 200の共通基盤署名検証手段 202は、暗号化投票データ E (vj)と共通 識別子 CIdjと共通基盤デジタル署名 Sekを入力とし、 Sekがデータ (E (vj) , CIDj) に対して署名用秘密鍵 dkにより正しく計算されたものかどうかを判定する。
[0043] 認証サーバ 300の ID連携手段 304には、組織内識別子 IIDjと共通識別子 CIDjと の対応関係が記録されており、組織内識別子 IIDjが入力されると対応する共通識別 子 CIDjを出力する。
[0044] 匿名復号システム 500は、外部から入力された初期設定情報に従って暗号化公開 鍵 Yを生成して出力し、外部から暗号ィ匕投票データ E (vj)のリストが入力されると、 E ( vj)のリストを復号し、順番をランダムに並びかえた平文投票データ vjのリストと、入力 された E (vj)のリストと出力した vjのリストとの間に 1対 1の対応関係があることの証明 データとを出力する。
[0045] 投票者端末 110, 130の組織内署名生成手段 113, 133と、投票者端末 140, 15 0の共通基盤署名生成手段 143, 153と、認証サーバ 300の共通基盤署名生成手 段 303は、いずれもデジタル署名を作成するものであり、これに対し認証サーバ 300 の組織内署名検証手段 302と投票サーバ 200の共通基盤署名検証手段 202とは、 デジタル署名の検証を行うものである。ここでのデジタル署名には、例えば RSA暗号 などの公開鍵暗号を用いるデジタル署名を用いることができる。 RSA暗号を用いる 場合、署名者 jのデータ Vに対する署名 Sjvは、 Vと署名者 jの署名用秘密鍵 djを用い て、
Sjv=V dj mod n
により計算され、署名検証は、 Vと Sjvと、 djに対応する検証用公開鍵 ejを用いて、 Sjv ej =V mod n
が成り立てば合格となる。なお、 Ίまべき乗を表わす記号であり, V"djは Vを dj回べき 乗した結果 (すなわち Vdj)を表わす。
[0046] ここで、 dj, ej, nは、二つの素数 p, qに対して、
n=p X q,
dj X e j = 1 mod yp—1) X (q-1)
と表わされる整数であり、あら力じめ各署名者 jごとに相異なる(dj, ej)の組を作成し、 djは各署名者 jが秘密に保持し、 (n, ej)の組は署名者 jの識別子 IDjと関連づけて公 開しておくようにする。署名検証においては、公開されている IDjと (n, ej)との対応関 係を検索して (n, ej)を取得して署名検証の処理を行なう。 djは署名生成用秘密鍵、 (n, ej)は署名検証用公開鍵とよばれる。
[0047] 組織内署名生成手段 113, 133及び組織内署名検証手段 302においては、識別 子 IDjは例えば社員番号など、ある組織の内部でのみ公開 *利用される組織内識別 子であり、別々の組織に属する別の個人に割り振られた識別子が同じ IDjになってい る可能性もあり、また、有権者名簿に登録される有権者の識別子 (有権者名など)との 対応関係は公開されているとは限らない。 IDjに対応する署名検証用公開鍵 (n, ej) の組も同様に、組織の内部にのみ公開される場合もある。 [0048] 一方、共通基盤署名生成手段 143, 153, 303及び共通基盤署名検証手段 202 においては、署名者の識別子 IDjと (n, ej)とは広く一般に公開され、別の個人に同 じ識別子が割り振られることのない、共通識別子であり、有権者名簿データベース 20 1には共通識別子を含む情報が記録される。
[0049] 投票者端末 100, 120の機器側認証手段 103, 123と、認証サーバ 300のサーバ 側認証手段 301は、個人認証を行うものである。ここでは、 ID文字列とパスワードによ る個人認証や、携帯電話の端末認証に基づ 、た個人認証などを用いることができる
[0050] ID文字列とパスワードによる個人認証を行なう場合、認証サーバ 300にはあらかじ め投票者の組織内識別子とパスワードの対応関係を記録しておく。機器側認証手段
103, 123は、入力装置 102, 122から入力された投票者の組織内識別子 IIDjを認 証サーバ 300に送る。認証サーバ 300は、サーバ側認証手段 301により、受信した II Djがあらカゝじめ記録された組織内識別子のリストに含まれることを確認し、乱数 cを生 成して投票者端末 100, 120へ返信する。機器側認証手段 103, 123は、入力装置 102, 122から入力されたパスワード pwと乱数 cとを SHA1などのハッシュ関数に入 力し、出力された値 rを認証サーバ 300に返信する。サーバ側認証手段 301は、あら 力じめ記録された組織内識別子とパスワードのリストを IIDjをキーとして検索し、 IIDj に対応する pwを取得し、 SHA1などのハッシュ関数に pwと cとを入力し、出力された 値が投票者端末 100, 120から返信された値!:と一致すれば、投票者端末 100, 120 を操作している投票者を IIDjで示される投票者であると認める。
[0051] 本実施形態において、投票者端末 120, 130, 150及び投票サーバ 200に設けら れる B音号ィ匕手段 123, 133, 153, 203と、 B音号サーノ 400, 410, 440に設けられる 再暗号化手段 401, 411, 441と、匿名復号システム 500については、例えば特許 文献 1に示された技術を用いることができる。
[0052] 特許文献 1に示された技術を用いる場合、匿名復号システム 500は、投票センタ 20 0からセキュリティパラメータ(pL, qL, t)とセッション IDが入力されると、 (pL, qL, t) に従って公開情報 (p, q, g)と秘密鍵 Xを生成し、公開情報に公開鍵 Yを加えた公開 情報 (P, q, g, Y)を出力して投票センタ 200に返信する。ここで、 ρ, qはエルガマル 暗号のパラメータであり、ある整数 kにより
p = k X q+ lという関係にある素数である。 gは、法 pにおける位数 qの部分群を生 成する生成元である。また、 pL, qLは、素数 p, qの長さであり、 tは、順番入れ替え処 理が正しいことを証明するためにデータの生成時および検証時に使用する繰り返し 回数である。セッション IDは処理対象を識別するための識別子である。ここで、処理 対象は、例えば県知事選挙、市議会議員選挙などである。公開鍵 Yは復号鍵 Xに対 して、
Y=g"X mod qの計算によって得られた値であり、復号鍵 Xは無作為に選ばれた q未満の乱数である。
[0053] 暗号化手段 123, 133, 153, 203は、公開情報 (p, q, g, Y)と平文投票データ vi を入力とし、暗号化投票データ E (vi)を出力する。 E (vi)は (Gi, Vi)という組で表され
(Gi, Vi; = (g r mod p, vi Y r mod p)
の計算によって得られる。ここで rは、平文投票データ viに対して無作為に選んだ乱 数である。
[0054] なお本実施形態にお!、ては、このとき、正しく rを知って暗号ィ匕投票データを作成し たことの証明を作成することができる。例えば、 viの暗号ィ匕において乱数 siを生成し、 a i=g si
mod p,
ci = HASH (p, q, g, Y, Gi, Vi, a i) ,
ti=ci Xri+si mod p
により、乱数証明データ a i、 tiを生成する。この証明は、
ci=HASH (p, q, g, Gi, a i)を計算し、
g"tiX {— ci} = a i mod p
が成り立つかどうかを確認することで検証できる。ここで、 HASH (p, q, g, Y, Gi, Vi , a i)は SHA1などのハッシュ関数に p, q, g, Y, Gi, Vi, a iを入力して得られる値 である。
[0055] 再暗号化手段 401, 411, 441は、公開情報 (p, q, g, Y)と暗号化投票データ Ε (ν i) = (Gi, Vi)を入力とし、暗号化投票データ E' (vi)を出力する。 E' (vi)は(G' i, V i)という組で表され、
(G' i, V' i) = (GiX g's mod p, ViXY's mod p)
の計算によって得られる。ここで、 sは暗号ィ匕投票データ E (vi)に対して無作為に選 んだ乱数である。なお、
(G' i, V' i) = (GiX g's mod p, ViXY's mod p)
= (g" {r+s} mod p, viXY" {r+s} mod p)
の等式が成り立っており、 E (vi)に対する復号処理と同じ処理を E' (vi)に施すことで 平文投票データ viを得ることができる。つまり、 E (vi)と E' (vi)とは復号処理に関して は同様に扱える。
[0056] 投票センタ 200が Ei= (Gi, Vi)のリストと、セッション IDとを匿名復号システム 500 に入力すると、匿名復号システム 500は、セッション IDにより特定された公開情報 (p , q, g, Y)および復号鍵 Xにより(Gi, Vi)のリストを復号し、順番をランダムに並びか えた平文投票データ viのリストと、 (Gi, Vi)のリストと viのリストとの間に 1対 1の対応関 係があることの証明データとを投票センタ 200に返信する。
[0057] p, q, g, Xの生成、 (Gi, Vi)のリストの復号と順番の並べかえ、(Gi, Vi)のリストと vi との間に 1対 1の対応関係があることの証明とその検証方法については、特許文献 1 に記載の方法を用いる。
[0058] ここでは、特許文献 1の技術を用いる場合の、主に各構成要素の入出力について 説明した。なお、暗号データのリストを、復号後に出力されるデータリストとの間に 1対 1の対応関係があることを、具体的な対応関係そのものの情報は一切漏らさずに証 明する技術は、特開 2001— 251289号公報 (特許文献 2)、特開 2002— 344445号 公報 (特許文献 3)などにも示されており、これらの技術を用いて暗号ィ匕手段 123, 13 3, 153,再暗号化手段 401, 411, 441、匿名復号システム 500を実現することも可 能である。
[0059] 次に、本実施形態の匿名電子投票システムの全体の動作について説明する。
[0060] 図 2には、この匿名電子投票システムでの初期設定の動作が記述されている。まず 、投票サーバ 200は、セキュリティパラメータ(pL, qL, t)とセッション IDとを匿名復号 システム 500に送信する(ステップ Al)。匿名復号システム 500は、(pL, qL, t)にし たがって公開情報 (p, q, g, Y)を作成し (ステップ A2)、投票サーバ 200へ返信する (ステップ A3)。投票サーバ 200は、(p, q, g, Y)を記録装置 204に記録する (ステツ プ Α4)。以上により、初期設定が終了する。
[0061] 次に、図 3—図 9を参照して、投票者端末 100, 110, 120, 130, 140, 150を使つ た投票の動作を説明する。ここで、図 3—図 8は、それぞれ、投票者端末 100, 110, 120, 130, 140, 150での処理 (及びそれらの投票者端末での処理に関連する投 票サーバ、認証サーバ及び暗号サーバでの処理)を示している。また、図 9は、投票 受付け後から開票に相当する作業までの処理を説明している。
[0062] 投票期間が始まると、有権者である投票者は、投票者端末 100, 110, 120, 130, 140, 150のいずれかにより投票サーバ 200へアクセスする。このとき、投票者端末 1 00, 110, 140からの投票では暗号投票情報要求を送信し(図 3、図 4、図 7のステツ プ Α5— 1)、投票者端末 120, 130, 150からの投票では単なる投票情報要求を送信 する(図 5、図 6、図 8のステップ Α5— 2)。投票サーバ 200は、投票者端末 100, 110 , 140からの暗号投票情報要求を受信すると、その暗号ィ匕手段 203により、すべての 候補者名 vjを公開情報 (ρ, q, g, Y)で暗号ィ匕することによって (vj, E (vj) )のリストを 作成し(図 3、図 4、図 7のステップ A6)、公開情報 (p, q, g, Y)と (vj, E (vj) )のリスト とを投票者端末 100, 110, 140に返信する(図 3、図 4、図 7のステップ A7— 1)。また 、投票者端末 120, 130, 150からの単なる投票情報要求を受信すると、投票サーバ 200は、公開情報 (p, q, g, Y)と平文の候補者名 vjのリストとを投票者端末 120, 13 0, 150に返信する(図 5、図 6、図 8のステップ A7— 2)。
[0063] 以下、投票データの送信までの処理を、投票者端末 100, 110, 120, 130, 140, 150ごとに別々に説明する。
[0064] 投票者端末 100は、図 3に示すように、(p, q, g, Y)と (vj, E (vj) )のリストとを受信 すると、その表示装置 101において vjのリストを投票者に対して表示し、投票者は入 力装置 102により vjのリストから候補者名 viを選択して入力する (ステップ A100-l)。 そして投票者端末 100は、 viに対応する E (vi)と公開情報 (p, q, g, Y)とを暗号サー ノ 00に送信する(ステップ A100— 2)。次に、暗号サーバ 400は、受信した E (vi)と 公開情報 (P, q, g, Y)とを再暗号手段 401に入力して E (vi)を再度暗号ィ匕した E' (v i)を計算し (ステップ AlOO-3)、 E' (vi)を投票者端末 100に返信する (ステップ A10 0-4)。次に、投票者端末 100は、入力装置 102により投票者の組織内識別子 IIDi を取得し、機器側認証手段 103により認証サーバ 300に対して投票者 iの組織内識 別子 IIDiの認証を行ない(ステップ A100— 5)、 E' (vi)を認証サーバ 300に送信する (ステップ A100—6)。
[0065] 認証サーバ 300は、サーバ側認証手段 301により確認した投票者の組織内識別子 IIDiを ID連携手段 304に入力し、対応する共通識別子 CIDiを得る (ステップ A100 —7)。次に、認証サーバ 300では、共通基盤署名生成手段 303に (Ε' (vi) , CIDi) の組と認証サーバ 300の署名用秘密鍵 dkとが入力されて、(E' (vi) , CIDi)に対す る認証サーバ 300の共通基盤署名 Sekが生成される (ステップ A100-8)。そして、 認証サーバ 300は、(Ei, CIDi) = (E' (vi) , CIDi)と Sekとを投票サーバ 200に送 信する(ステップ A100—9)。
[0066] 投票者端末 110は、図 4に示すように、(p, q, g, Y)と (vj, E (vj) )のリストとを受信 すると、その表示装置 111において vjのリストを投票者に対して表示し、投票者は入 力装置 112により vjのリストから候補者名 viを選択して入力する(図 4のステップ Al 1 0—1)。そして、投票者端末 110は、 viに対応する E (vi)と公開情報 (p, q, g, Y)とを 暗号サーバ 410に送信する(図 4のステップ A110— 2)。暗号サーバ 410は、受信し た E (vi)と公開情報 (p, q, g, Y)とを再暗号手段 411に入力して E (vi)を再度暗号 化した E' (vi)を計算し (ステップ A110-3)、 E' (vi)を投票者端末 110に返信する( ステップ A110— 4)。次に、投票者端末 110は、組織内署名生成手段 113に投票者 i の組織内識別子 IIDiと署名用秘密鍵 diと E' (vi)とを入力し、 (Ε' (vi) , IIDi)に対す る組織内向けデジタル署名 Seiを計算し (ステップ A110— 5)、 (Ε' (vi) , IIDi)と Sei とを認証サーバ 300に送信する(ステップ A110-6)。
[0067] 認証サーバ 300は、その組織内署名検証手段 302により、 Seiが(E' (vi) , IIDi)に 対して署名用秘密鍵 diにより正しく計算されたものかどうかを検証し (ステップ A110— 7)、合格であれば、 ID連携手段 304によって IIDiに対応する共通識別子 CIDiを取 得する (ステップ A110-8)。次に、認証サーバ 300は、共通基盤署名生成手段 303 に E,(vi)と CIDiと認証サーバ 300の署名用秘密鍵 dkとを入力して、(E, (vi) , CIDi )に対する認証サーバ 300の共通基盤デジタル署名 Sekを出力し (ステップ A110-9 )、 (Ei, CIDi) = (E,(vi) , CIDi)と Sekとを投票サーバ 200に送信する(ステップ Al 10—10)。
[0068] 投票者端末 120は、図 5に示すように、(p, q, g, Y)と vjのリストとを受信すると、そ の表示装置 121において vjのリストを投票者に対して表示し、投票者は入力装置 12 2により vjのリストから候補者名 viを選択して入力する (ステップ A120-l)。そして投 票者端末 120は、 viと公開情報 (p, q, g, Y)とを暗号ィ匕手段 124に入力し、 viを Yに より暗号ィ匕した E (vi)を得る (ステップ A120-2)。次に、投票者端末 120は、機器側 認証手段 123により認証サーバ 300に対して投票者 iの組織内識別子 IIDiの認証を 行な 、(ステップ A120—3)、 E (vi)を認証サーノ 300に送信する(ステップ A120— 4
) o
[0069] 認証サーバ 300は、サーバ側認証手段 301により確認した投票者の組織内識別子 IIDiを ID連携手段 304に入力し、対応する共通識別子 CIDiを得る (ステップ A120 —5)。次に、認証サーバ 300は、共通基盤署名生成手段 303に (E (vi) , CIDi)の組 と認証サーバ 300の署名用秘密鍵 dkを入力して、(E (vi) , CIDi)に対する共通基 盤署名 Sekを生成し (ステップ A120—6)、(Ei, CIDi) = (E (vi) , CIDi)と Sekとを投 票サーバ 200に送信する(ステップ A120—7)。
[0070] 投票者端末 130は、図 6に示すように、(p, q, g, Y)と vjのリストとを受信すると、そ の表示装置 131において vjのリストを投票者に対して表示し、投票者は入力装置 13 2により vjのリストから候補者名 viを選択して入力する (ステップ A130-l)。そして投 票者端末 130は、 viと公開情報 (p, q, g, Y)とを暗号ィ匕手段 134に入力し、 viを Yに より暗号ィ匕した E (vi)を得る (ステップ A130-2)。次に投票者端末 130は、組織内署 名生成手段 133に投票者 iの組織内識別子 IIDiと署名用秘密鍵 diと E (vi)とを入力 し、(E (vi) , IIDi)に対する組織内向けデジタル署名 Seiを計算し (ステップ Al 30-3 )、 (E (vi) , IIDi)と Seiとを認証サーバ 300に送信する(ステップ A130— 4)。
[0071] 認証サーバ 300は、組織内署名検証手段 302により、 Seiが(E (vi) , IIDi)に対し て署名用秘密鍵 diにより正しく計算されたものかどうか検証し (ステップ A130— 5)、 合格であれば、 ID連携手段 304により IIDiに対応する共通識別子 CIDiを取得する( ステップ A130— 6)。次に認証サーバ 300は、共通基盤署名生成手段 303に E (vi)と CIDiと認証サーバ 300の署名用秘密鍵 dkとを入力して、(E (vi) , CIDi)に対する認 証サーバ 300の共通基盤デジタル署名 Sekを出力し (ステップ A130— 7)、 (Ei, CI Di) = (E (vi) , CIDi)と Sekとを投票サーバ 200に送信する(ステップ A130— 8)。
[0072] 投票者端末 140は、図 7に示すように、(p, q, g, Y)と (vj, E (vj) )のリストとを受信 すると、その表示装置 141において vjのリストを投票者に対して表示し、投票者は入 力装置 142により vjのリストから候補者名 viを選択して入力する (ステップ A140— 1)。 そして投票者端末 140は、 viに対応する E (vi)と公開情報 (p, q, g, Y)とを暗号サー バ 440に送信する(ステップ A140— 2)。次に暗号サーノ 40は、受信した E (vi)と公 開情報 (P, q, g, Y)とを再暗号手段 441に入力して E (vi)を再度暗号ィ匕した E' (vi) を計算し (ステップ A140-3)、 E' (vi)を投票者端末 140に返信する (ステップ A140 -4)。次に投票者端末 140は、共通基盤署名生成手段 143に投票者 iの共通基盤識 別子 CIDiと署名用秘密鍵 diと E' (vi)とを入力し、 (Ε' (vi) , CIDi)に対する共通基 盤デジタル署名 Seiを計算し (ステップ A140— 5)、 (Ei, CIDi) = (E,(vi) , CIDi)と Seiとを投票サーバ 200に送信する(ステップ A140—6)。
[0073] 投票者端末 150は、図 8に示すように、(p, q, g, Y)と vjのリストとを受信すると、表 示装置 151において vjのリストを投票者に対して表示し、投票者は入力装置 152によ り vjのリストから候補者名 viを選択し入力する (ステップ A150-l)。そして投票者端 末 150は、 viと公開情報 (p, q, g, Y)とを暗号ィ匕手段 154に入力して viを Yにより暗 号ィ匕した E (vi)を得る (ステップ A150-2)。次に投票者端末 150は、共通基盤署名 生成手段 153に投票者 iの共通基盤識別子 CIDiと署名用秘密鍵 diと E (vi)とを入力 し、(E (vi) , CIDi)に対する共通基盤デジタル署名 Seiを計算し (ステップ A150-3) 、 (Ei, CIDi) = (E (vi) , CIDi)と Seiとを投票サーバ 200に送信する(ステップ A150 —4)。
[0074] 以上が、投票データの送信までの処理である。つづ!/、て、投票データの受付けと投 票締切後の開票集計処理について、図 9を用いて説明する。
[0075] 投票サーバ 200は、認証サーバ 300から(Ei, CIDi)と Sekとを受信すると、共通基 盤署名検証手段 202により Sekが(Ei, CIDi)に対する認証サーバ 300の正しい署 名であることを確認し (ステップ A8—1)、有権者名簿データベース 201を検索して CI Diが登録されて 、ることと CIDiの投票をまだ受付けて 、な 、こととを確認し (ステップ A9— 1)、投票データ記録装置 204に (Ei, CIDi)と Sekとを記録するとともに、有権 者名簿データベース 201に CIDiが投票済みであることを記録する (ステップ A10— 1 ) oまた、投票サーバ 200は、投票者端末 140, 150から(Ei, CIDi)と Seiとを受信す ると、共通基盤署名検証手段 202により Seiが (Ei, CIDi)に対する投票者 iの正しい 署名であることを確認し (ステップ A8— 2)、有権者名簿データベース 201を検索して CIDiが登録されて 、ることと CIDiの投票をまだ受付けて 、な 、こととを確認し (ステツ プ A9— 2)、投票データ記録装置 204に(Ei, CIDi)と Sekとを記録するととも〖こ、有権 者名簿データベース 201に CIDiが投票済みであることを記録する (ステップ A10— 2
) o
[0076] 投票が締め切られた後、投票サーバ 200は、投票データ記録装置 204に記録した すべての Eiのリストと、ステップ A2で匿名復号システム 500へ送信したセッション IDと を匿名復号システム 500へ送信する(ステップ Al l)。匿名復号システム 500は、セッ シヨン IDで指定された公開情報 (p, q, g, Y)と秘密鍵 Xとに基づいて Eiのリストを復 号し、順番を無作為に並べかえた平文投票データ vjのリストと、 Eiのリストと vjのリスト との間に 1対 1の対応関係が存在することの証明データ zと、を作成し (ステップ A12) 、投票サーバ 200に対して vjのリストと zとを返信する(ステップ A13)。投票サーバ 20 0は、受信した平文投票データ vjのリストにより投票の集計を行い、集計結果を発表 する(ステップ A14)。
[0077] 次に、本実施形態の効果について説明する。
[0078] 本実施形態では、投票サーバ 200が投票者端末 100, 110, 140に暗号化投票デ ータを送り、投票者が選んだ暗号化投票データを暗号サーノ 00, 410, 440により さらに暗号ィ匕して投票サーバ 200に送信するため、暗号手段を備えない投票者端末 力もでも、投票の秘密を守りつつ、投票を行なえる。また、投票者端末 100, 120に 機器側認証手段 103, 123を備え、認証サーバ 300にサーバ側認証手段 301を備 えることでデジタル署名に依らない認証を行ない、認証サーバ 300の共通基盤デジ タル署名を付与して投票サーバ 200に暗号ィ匕投票データを送ることで、署名生成手 段を備えない投票者端末からも投票を行なえる。また、投票者端末 110, 130に組織 内基盤署名生成手段 113, 133を備え、認証サーバ 300に組織内基盤署名検証手 段 302と ID連携手段 304を備えることで、組織内向けデジタル署名が付与された暗 号ィ匕投票データを認証サーバ 300で検証し、組織内識別子カゝら共通基盤識別子へ の変換を行なったのち、認証サーバ 300の共通基盤デジタル署名を付与して投票サ ーバ 200へ送ることで、すべての投票者が共通の公開鍵認証基盤に登録されて!、な くとも、投票を行なえる。
[0079] なお、ここでは認証サーバ 300はひとつだけとして説明した力 投票者によって異 なる組織に所属して ヽる場合には、組織ごとに別の認証サーバを導入することで対 応が可能である。
[0080] 《第 2の実施形態》
次に、本発明の第 2の実施形態について図面を参照して説明する。図 10に示した 第 2の実施形態の匿名電子投票システムは、図 1に示された第 1の実施形態の匿名 電子投票システムにおいて、投票者端末 100, 110, 140内にそれぞれ暗号データ 作成手段 104, 114, 144を設けるととも〖こ、投票サーバ 200の暗号化手段 203に代 えて第 1の変換手段 206と暗号ィ匕証明検証手段 207とを設け、暗号サーバ 400, 41 0, 440における再暗号ィ匕手段 401, 411, 441に代えてそれぞれ第 2の変換手段 4 05, 415, 445を設け、さらに、変換検証手段 701を備える変換検証サーバ 700をカロ えたものである。
[0081] ここで第 1の変換手段 206は、公開情報を入力とし、第 1の変換データ (第 1暗号パ ラメータ)と第 1の変換証明データとを出力するものである。
[0082] 第 2の変換手段 405, 415, 445は、公開情報を入力とし、第 2の変換データ (第 2 暗号パラメータ)と第 2の変換証明データとを出力する。
[0083] 暗号データ作成手段 104, 114, 144は、公開情報、第 1の変換データ、第 1の変 換証明データ、第 2の変換データ、第 2の変換証明データ及び平文の投票内容 viを 入力として、暗号ィ匕投票データ E (vi)を出力するとともに、 E (vi)を正しく生成したこと を証明する暗号化証明を出力する。 [0084] 暗号ィ匕証明検証手段 207は、公開情報と暗号化投票データ E (vi)と暗号化証明デ 一タとを入力とし、 E (vi)が正しく生成されたものかどうかを検証する。
[0085] 第 1の変換手段 206、第 2の変換手段 405, 415, 445、暗号データ作成手段 104 , 114, 144及び暗号ィ匕証明検証手段 207は、匿名復号システム 500に対して特許 文献 1に示された技術を用いる場合、以下のように動作する。
[0086] 第 1の変換手段 206は、公開情報 (p, q, g, Y)が入力されると、 q未満の乱数 rと d とを無作為に選び、第 1の変換データ (Gr, Yr, r)として、
(Gr, Yr, v) = (g r mod p, Y r mod p, r)
を計算して出力し、第 1の変換証明データ (Gd, d)として、
(Gd, d) = (g"d mod p, d)を計算して出力する。
[0087] 第 2の変換手段 405, 415, 445は、公開情報 (p, q, g, Y)が入力されると、 q未満 の乱数 sを選び、第 2の変換データ(Gs, Ys, s)として、
(Gs, ^s, sノ = (g s mod p, Y s mod p, s)
を計算して出力し、第 2の変換証明データ (Gu, u)として、
(Gu, uノ = (g u mod p, u)
を計算して出力する。ここで、 uは無作為に選んだ q未満の乱数である。
[0088] 暗号データ作成手段は、第 1の変換データ (Gr, Yr, r)、第 1の変換証明データ (G d, d)、第 2の変換データ (Gs, Ys, s)、第 2の変換証明データ(Gu, u)及び平文の 投票内容 viが入力されると、暗号化投票データ E (vi)として、
E (vi) = (Gr X Gs mod p, vi X Yr X Ys mod p)
を計算する。さらに、
= Gu X Gd mod p,
c = HASH (p, q, g, Y, Gi, Vi, a ) ,
t = c X (r + s) +u + d mod q
を計算して暗号ィ匕証明データ(ひ, t)を計算し、暗号ィ匕投票データ (Gi, Vi)とともに この暗号化証明データ , t)を出力する。
[0089] 暗号ィ匕証明データによる証明は、暗号ィ匕証明検証手段 207により
c = HASH (p, q, g, Y, Gi, Vi, a ) を計算し、
g t X ¾ji {— c} = a mod p
が成り立つかどうかを確認することで行う。
[0090] 変換検証手段 701は変換データ (Gr, Yr, r)と変換証明データ (Gd, d)とについ て、公開情報 (P, q, g, Y)カゝら正しく作成されたものかどうかを検証する。匿名復号 システム 500に対して特許文献 1に示された技術を用いる場合、変換検証手段 701 は公開情報 (Ρ, q, g, Y)と変換データ (Gr, Yr, r)と変換証明データ (Gd, d)とを入 力とし、
Gr=G r mod p,
Yr=Y r mod p,
Gd=Y"d mod p
の等式がいずれも成り立てば合格と判定し、どれかひとつでも成り立たなければ不合 格と判定する。
[0091] 次に、本実施形態の匿名電子投票システムの動作について説明する。図 11一図 1 3は、それぞれ、投票者端末 100, 110, 140での処理 (及びそれらの投票者端末で の処理に関連する投票サーバ、認証サーバ及び暗号サーバでの処理)を示しており 、図 14は、投票受付け後から開票に相当する作業までの処理を説明している。なお 、本実施形態での初期設定の動作は第 1の実施の形態と同じであり、また、投票者 端末 120, 130, 150の動作も第 1の実施の形態におけるものと同じであるから、これ らの動作にっ 、ては記載を省略する。
[0092] 以下、投票者端末 100, 110, 140による投票サーバ 200へのアクセス力 投票デ ータの送信までの処理を説明する。
[0093] 投票者端末 100, 110, 140は、投票情報要求と変換データ要求とを投票サーバ 2 00へ送信する(図 11、図 12、図 13のステップ B5)。投票サーバ 200は、変換データ 要求を受信すると、その第 1の変換手段 206に公開情報 (p, q, g, Y)を入力し、第 1 の変換データ(Gr, Yr, r)と第 1の変換証明データ(Gd, d)とを作成し(図 11、図 12 、図 13ステップ B6)、投票者端末 100, 110, 140にこれら(p, q, g, Y) , (Gr, Yr, r ) , (Gd, d)を返信する(図 11、図 12、図 13のステップ B7)。投票者端末 100, 110, 140は、投票サーバ 200から (p, q, g, Y) , (Gr, Yr, r) , (Gd, d)を受信すると、そ れぞれ暗号サーバ 400, 410, 440に、(p, q, g, Y)と変換データ要求とを送信する (図 11、図 12、図 13のステップ B100— 1、 B110— 1、 B140— 1)。 Β音号サーノ 00, 410, 440は、公開情報 (ρ, q, g, Y)と変換データ要求とを受信すると、それぞれそ の第 2の変換手段 405, 415, 445に公開情報 (ρ, q, g, Y)を入力して第 2の変換 データ(Gs, Ys, s)と第 2の変換証明データ(Gu, u)とを生成し(図 11、図 12、図 13 のステップ B100— 2、 B110— 2、 B140— 2)、投票者端末 100, 110, 140に(Gs, Y s, s)と(Gu, u)とを返信する(図 11、図 12、図 13のステップ B100— 3, B110— 3, B 140—3)。
[0094] 以下、投票データの送信までの処理のうち第 1の実施の形態と異なる部分を、投票 者端末 100, 110, 140ごとに別々に説明する。
[0095] 投票者端末 100は、図 11に示すように、第 1の変換データ (Gr, Yr, r)、第 1の変 換証明データ (Gd, d)、第 2の変換データ (Gs, Ys, s)及び第 2の変換証明データ( Gu, u)を受信すると、その暗号データ作成手段 104に対して、投票者 iが入力した投 票内容 viと、 (Gr, Yr, r) , (Gd, d) , (Gs, Ys, s)及び(Gu, u)とを入力し、暗号化 投票データ E (vi)と暗号ィ匕証明データ , t)とを計算する (ステップ B100-4)。そし て IIDiの認証ののち E (vi)と( α , t)とを認証サーバ 300に送信する(ステップ B100 —6)。認証サーバ 300は、 (E (vi) , ( α , t) , CIDi)に対する認証サーバ 300の共通 基盤デジタル署名 Sekを作成し (ステップ B 100—8)、 (E (vi) , ( α , t) , CIDi)と Sek とを投票サーバ 200に送信する(ステップ B100-9)。
[0096] 投票者端末 110は、図 12に示すように、第 1の変換データ (Gr, Yr, r)、第 1の変 換証明データ (Gd, d)、第 2の変換データ (Gs, Ys, s)及び第 2の変換証明データ( Gu, u)を受信すると、投票者 iが入力した投票内容 viと、 (Gr, Yr, r) , (Gd, d) , (G s, Ys, s)及び (Gu, u)とを暗号データ作成手段 114に入力し、暗号化投票データ E (vi)と暗号化証明データ(ひ, t)とを計算する (ステップ B110-4)。そして、投票者端 末 110は、(E (vi) , ( α , t) , IIDi)に対する組織内向けデジタル署名 Seiを作成し( ステップ B110-5)、 (E (vi) , ( α , t) , IIDi)と Seiとを認証サーバ 300に送信する(ス テツプ B110-6)。認証サーバ 300は、 Seiが(E (vi) , ( α , t) , IIDi)に対する IIDiの 正しい署名であることを確認し (ステップ Bl 10— 7)、その ID連携手段 304により IIDi に対応する共通識別子 CIDiを取得し (ステップ A110-8)、 (E (vi) , ( α , t) , CIDi) に対する認証サーバ 300の共通基盤デジタル署名 Sekを作成し (ステップ B110-9) 、 (Ei=E (vi) , ( α , t) , CIDi)と Sekとを投票サーバ 200に送信する(ステップ B110 10)。
[0097] 投票者端末 140は、図 13に示すように、第 1の変換データ (Gr, Yr, r)、第 1の変 換証明データ (Gd, d)、第 2の変換データ (Gs, Ys, s)及び第 2の変換証明データ( Gu, u)を受信すると、投票者 iが入力した投票内容 viと (Gr, Yr, r) , (Gd, d) , (Gs , Ys, s)及び (Gu, u)とを暗号データ作成手段 144に入力し、暗号化投票データ E ( vi)と暗号ィ匕証明データ , t)とを計算する (ステップ B140-4)。そして、 (E (vi) , ( a , t) , CIDi)に対する共通基盤デジタル署名 Seiを作成し (ステップ B140-5)、 (E i=E (vi) , ( α , t) , CIDi)と Seiとを投票サーバ 200に送信する(ステップ B140— 6)
[0098] 以上が投票データの送信までの処理である。続けて、投票データの受付け以降の 処理について、図 14を用いて、第 1の実施の形態と異なる部分を説明する。
[0099] 投票サーバ 200は、認証サーバ 300から(Ei, ( α , t) , CIDi)と Sekとを受信すると 、共通基盤署名検証手段 202により Sekが (Ei, CIDi)に対する認証サーバ 300の 正しい署名であることを確認し (ステップ B8—1)、暗号ィ匕証明検証手段 207により、 E iが正しく作られたものであることを確認し (ステップ B9—1)、有権者名簿データべ一 ス 201を検索して CIDiが登録されて!、ることと CIDiの投票をまだ受付けて!、な!/、こと とを確認し (ステップ B10-1)、投票データ記録装置 204に(Ei, , t) , CIDi)と Se kとを記録するとともに、有権者名簿データベース 201に CIDiが投票済みであること を記録する (ステップ B11-1)。また、投票サーバ 200は、投票者端末 140, 150から (Ei, , t) , CIDi)と Seiとを受信すると、共通基盤署名検証手段 202により Seiが( Ei, , t) , CIDi)に対する投票者 iの正しい署名であることを確認し (ステップ B8— 2)、暗号ィ匕証明検証手段 207により、 Eiが正しく作られたものであることを確認し (ス テツプ B9— 2)、有権者名簿データベース 201を検索して CIDiが登録されていること と CIDiの投票をまだ受付けていないこととを確認し (ステップ B10— 2)、投票データ 記録装置 204に (Ei, CIDi)と Sekとを記録するとともに、有権者名簿データベース 2 01に CIDiが投票済みであることを記録する(ステップ B11—2)。
[0100] なお、投票者端末 100, 110, 140により投票を行なった投票者は、投票データの 受け付けが終わった後、投票サーバから受信した公開情報 (p, q, g, Y)と第 1の変 換データ (Gr, Yr, r)、第 1の変換証明データ (Gd, d)とを変換検証サーバ 700の変 換証明手段 701に入力し、第 1の変換データ、第 1の変換証明データが正しく公開 情報 (P, q, g, Y)力も作成されたものかどうかを検証してもよい。また、暗号サーバ 4 00, 410, 440から受信した第 2の変換データ (Gs, Ys, s)、第 2の変換証明データ( Gu, u)についても、同様に変換検証サーバ 700の変換検証手段 701により、公開 情報 (P, q, g, Y)力も正しく作成されたものかどうかを検証してもよい。
[0101] 投票締切り後の処理については、第 1の実施の形態の場合と同じであるので、ここ では説明を省略する。
[0102] 次に、本実施形態の効果について説明する。
[0103] 本実施形態では、投票者端末 100, 110, 140にそれぞれ暗号データ作成手段 1 04, 114, 144を備え、投票サーバ 200に第 1の変換手段 206を備え、暗号サーノ 00, 410, 440にそれぞれ第 2の変換手段 405, 415, 445を備えることで、投票者 端末 100, 110, 140では複雑な演算を行なうことなぐ暗号ィ匕投票データの作成が 行なえる。また、暗号ィ匕投票データは第 1の変換データと第 2の変換データの両方を もとに計算されるため、投票サーバ 200や暗号サーバ 400, 410, 440は、単独では 、投票者の暗号ィ匕投票データから平文の投票内容を知ることはできない。また、暗号 データ作成手段 104, 114, 144により生成される暗号ィ匕証明データは、投票者端 末 120, 130, 150の喑号ィ匕手段 124, 134, 154が生成する喑号ィ匕証明データと 同じ処理で検証が可能である。また、投票者端末 100, 110, 140に暗号データ作 成手段 104, 114, 144を備えるため、投票内容となる候補者名などあら力じめ決め られて!ヽるような投票に限らず、投票者が自由に投票内容を決める自由記述による 投票 (やアンケート)などにも本実施形態は適用可能である。
[0104] また、投票サーバ 200が送信する第 1の変換データ、第 1の変換証明データ、およ び、暗号サーバ 400, 410, 440が送信する第 2の変換データ、第 2の変換証明デー タは、変換検証手段 701を用いることで、公開情報 (p, q, g, Y)から正しく作成され たものかどうかを確認できる。そのため、投票サーバ 200や暗号サーバ 400, 410, 4 40が不正な変換データ、変換証明データを投票者端末に送信して投票を妨害しょう とした場合、その不正が発覚する。これにより、投票サーバ 200、暗号サーバ 400, 4 10, 440での不正行為を抑止することができる。
[0105] 《第 3の実施形態》
次に、本発明の第 3の発明形態について図面を参照して説明する。図 15に示した 第 3の実施形態の匿名電子投票システムは、図 1に示された第 1の実施形態の匿名 電子投票システムにおいて、さらに暗号証明検証サーバ 600を設けるとともに、投票 サーバ 200の暗号ィ匕手段 203に代えて証明付き暗号ィ匕手段 205を設け、暗号サー ノ 400, 410, 440の再 Β音号ィ匕手段 401, 411, 441に代えてそれぞれ証明付き再 暗号化手段 402, 412, 442を設け、暗号証明検証サーバ 600には暗号ィ匕証明検 証手段 601と再暗号ィ匕証明検証手段 602とを設けたものである。
[0106] 証明付き暗号ィ匕手段 205は、暗号ィ匕公開鍵 Υを含む公開情報と平文データ Vとを 入力とし、 Υにより Vを暗号化した Ε (ν)と、 Ε (ν)が Υにより Vを正しく暗号ィ匕したことを 示す証明データ wとを出力する。証明付き再暗号ィ匕手段 402, 412, 442は、暗号ィ匕 公開鍵 Υを含む公開情報と暗号データ Ε (V)とを入力とし、 Υにより Ε (V)を再度暗号 化した Ε' (V)と、 Ε' (V)が Υにより Ε (ν)を正しく再度暗号ィ匕したことを示す証明デー タ w'とを出力する。
[0107] 暗号ィ匕証明検証手段 601は、暗号ィ匕公開鍵 Υを含む公開情報と平文データ Vと暗 号データ Ε (V)と証明データ wとを入力とし、 Ε (V)が Υにより Vを正しく暗号ィ匕したもの カゝどうかを検証する。再暗号ィ匕証明検証手段 602は、暗号ィ匕公開鍵 Υを含む公開情 報と暗号データ Ε (V)と Ε (V)を再度暗号ィ匕した Ε' (V)と証明データ w'とを入力とし、 Ε' (V)が Υにより Ε (ν)を正しく暗号ィ匕したものかどうかを検証する。
[0108] 特許文献 1に示された技術を用いる場合、証明付き暗号ィ匕手段 205は、公開情報( Ρ, q, g, Y)と平文投票データ viを入力とし、暗号ィ匕投票データ E (vi)と証明データ w とを出力する。 E (vi)は (Gi, Vi) t 、う組で表され、
(Gi, Vi; = (g r mod p, vi Y r mod p) の計算によって得られる。ここで、 rは平文投票データ viに対して無作為に選んだ乱 数である。そして、証明データ wとして rが出力される。
[0109] 証明付き再暗号ィ匕手段 205は、公開情報 (p, q, g, Y)と暗号化投票データ E (vi)
= (Gi, Vi)とを入力とし、暗号化投票データ E' (vi)と証明データ w'とを出力する。 E
,(vi)は(G' i, V' i)という組で表され、
(G' i, V' i) = (Gi's mod p, ViXY's mod p)
の計算によって得られる。ここで、 sは平文投票データ viに対して無作為に選んだ乱 数である。そして、証明データ w'として sが出力される。
[0110] 暗号ィ匕証明検証手段 601は、 viと (p, q, g, Y)と E (vi) = (Gi, Vi)と wとを入力とし
Gi=g w mod p,
Vi=vi X Y"w mod p
の等式が両方とも成り立てば証明を合格と判定し、どちらか一方でも等式が成り立た なければ証明を不正と判定する。
[0111] 再暗号ィ匕証明検証手段 602は、 (Gi, Vi)と (p, q, g, Y)と E, (vi) = (G' i, V' i)と w'とを入力とし、
i=Gi w' mod p,
V' i=Vi XY"w' mod p
の等式が両方とも成り立てば証明を合格と判定とし、どちらか一方でも等式が成り立 たなければ証明を不正と判定する。
[0112] 次に、本実施形態の匿名電子投票システムの動作について説明する。図 16—図 1 8は、それぞれ、投票者端末 100, 110, 140での処理 (及びそれらの投票者端末で の処理に関連する投票サーバ、認証サーバ及び暗号サーバでの処理)を示しており 、図 19は、投票受付け後から開票に相当する作業までの処理を説明している。なお 、本実施形態での初期設定の動作は第 1の実施の形態と同じであり、また、投票者 端末 120, 130, 150の動作も第 1の実施の形態におけるものと同じであるから、これ らの動作にっ 、ては記載を省略する。
[0113] 以下、投票者端末 100, 110, 140による投票サーバ 200へのアクセス力 投票デ ータの送信までの処理を説明する。
[0114] 投票者端末 100, 110, 140は、投票サーバ 200に対し、暗号投票情報要求を送 信する。投票サーバ 200は、暗号投票情報要求を受信すると、証明付き暗号化手段 205により、すべての候補者名 vjについて、 vjを公開情報 (p, q, g, Y)で暗号ィ匕して E (vj)を作成し、その E (vj)が vjを (p, q, g, Y)により正しく暗号ィ匕したものであること の証明データ wjを作成し(図 17、図 18、図 19のステップ C6)、公開情報 (p, q, g, Y )と (vj, E (vj) , wj)のリストとを投票者端末 100, 110, 140に返信する(図 16、図 17 、図 18のステップ C7)。
[0115] また、暗号サーバ 400, 410, 440は、投票者端末力も E (vi)と公開情報 (p, q, g, Y)とを受信すると、それぞれ証明付き再暗号手段 402, 412, 442に E (vi)と (ρ, q, g, Y)を入力し、 E (vi)を再度暗号ィ匕した E' (vi)と E (vi)から (p, q, g, Y)により正し く暗号化したことの証明データ w' iとを作成し(図 16、図 17、図 18のステップ C100— 1, C110-1, C140—l)、投票者端末 100, 110, 140に E' (vi)と w' iとを返信する (図 16、図 17、図 18のステップ C100— 2, C110— 2, C140— 2)。
[0116] 以上が投票データの送信までの処理のうち、第 1の実施形態と異なる部分である。
[0117] 次に、図 19のフローチャートを参照し、投票受付け後の投票者の処理について説 明する。
[0118] 投票者端末 100, 110, 140により投票を行なった投票者は、投票データの受付け が終わった後、投票サーバ 200から受信した公開情報 (p, q, g, Y)と (vj, E (vj) , w j)のリストと、暗号サーバから受信した (Ε' (vi) , w' i)と E (vi)とを暗号証明検証サー ノ 600に送信する (ステップ C15)。暗号証明検証サーバ 600は、公開情報 (p, q, g , Υ)と (vj, E (vj) , wj)のリストとを暗号ィ匕証明検証手段 601に入力し、すべての E (v j)が vjを (ρ, q, g, Y)により正しく暗号ィ匕されているかどうかを検証し (ステップ C16) 、さらに、 (Ε' (vi) , E (vi) , w' )を再暗号ィ匕検証手段 602に入力し、 E, (vi)が E (vi) を (p, q, g, Y)により正しく再度暗号ィ匕したものかどうか検証し (ステップ C17)、検証 結果を出力する (ステップ C18)。
[0119] 次に、本実施形態の効果について説明する。
[0120] 本実施形態では、投票サーバ 200に証明付き暗号ィ匕手段 205を備え、投票者端 末には (vj, E (vj) , wj)のリストが送信され、暗号ィ匕証明検証手段 601により E (vj)が vjを (p, q, g, Y)により正しく暗号ィ匕されたものかどうかを確認できるため、投票サー バ 200が vjを暗号ィ匕したものと偽って (vj, E (v'j) , w)を投票者端末に送信した場合 、その不正が発覚する。これにより、投票サーバ 200での不正行為を抑止することが できる。
[0121] また、暗号サーバ 400, 410, 440にそれぞれ証明付き再暗号手段 402, 412, 44 2を備え、投票者端末には E' (vi) , E (vi) , w'が送信され、暗号ィ匕証明検証手段 60 2により E,(vi)が E (vi)を (p, q, g, Y)により正しく暗号ィ匕したものかどうかを確認で きるため、暗号サーバが E (vi)を再度暗号化したものと偽って E' (V) , E (vi) , w'を 投票者端末に返信した場合、その不正が発覚する。これにより、暗号サーバ 400, 4 10, 440での不正行為を抑止することができる。
[0122] なおここでは、暗号ィ匕証明検証手段 601を別のサーバ(暗号証明検証サーバ 600 )に備え、投票終了後に検証を行なう構成を示したが、投票者端末内にその構成要 素として暗号化証明検証手段を設け、投票中に検証を行なえるようにする構成も可 能である。また、暗号ィ匕検証手段を構成要素として暗号サーバ内に設け、投票サー バの暗号証明の検証のみを投票中に行ない、暗号サーバの証明データの検証のみ を投票後に行なう構成をとることも可能である。また、投票者端末に暗号化証明検証 手段 601と再暗号ィ匕証明検証手段 602とを備え、投票中にすべての検証を行なう構 成にしてもよい。
[0123] 《第 4の実施形態》
次に、本発明の第 4の実施形態について図面を参照して説明する。第 1の実施形 態の匿名電子投票システムにおいて、 1つの投票者端末が複数の暗号サーバを用 いるようにすることによって、投票の秘密をさらに頑強(ロノくスト)に守ることができるよ うになる。本実施形態は、 1つの投票者端末に対応する暗号サーバの台数を増やし たものである。
[0124] 図 20に示した第 4の実施形態の匿名電子投票システムは、図 1に示された第 1の実 施形態の匿名投票システムにおいて、 kを 2以上の整数として、投票者端末 100が k 台の暗号サーノ OO— 1— 400— kと接続し、同様に投票者端末 110, 140がそれぞ れ喑号サーバ 410—1— 410— k、暗号サーバ 440—1— 440— kと接続されるようにし たものである。各暗号サーノ OO— 1— 400— k, 410— 1— 410— k, 440— 1— 440— k には、それぞれ、再 B音号ィ匕手段 401—1— 401— k, 411— 1— 411— k, 441-1—441 -kが備えられている。投票者端末 100, 110, 120, 130, 140, 150、投票サーバ 2 00及び認証サーバ 300の構成は、図 1に示した第 1の実施形態の場合と同じである
[0125] 次に、本実施形態の匿名電子投票システムの動作について説明する。図 21—図 2 3は、それぞれ、投票者端末 100, 110, 140での処理 (及びそれらの投票者端末で の処理に関連する投票サーバ、認証サーバ及び暗号サーバでの処理)を示している 。なお、本実施形態での初期設定の動作は第 1の実施の形態と同じであり、また、投 票者端末 120, 130, 150の動作も第 1の実施の形態におけるものと同じであるから 、これらの動作については記載を省略する。
[0126] 以下、投票者端末 100, 110, 140による投票サーバ 200へのアクセス力 投票デ ータの送信までの処理を説明する。
[0127] 投票者端末 100, 110, 140は、投票サーバ 200へ暗号投票情報要求を送信する
(図 21、図 22、図 23のステップ A5—l)。投票サーバ 200は、暗号投票情報要求を 受信すると、その暗号ィ匕手段 203により、すべての候補者名 vjについて、 vjを公開情 報 (p, q, g, Y)で暗号ィ匕して E (vj)を作成し(図 21、図 22、図 23のステップ A6)、公 開情報 (P, q, g, Y)と (vj, E (vj) )のリストとを投票者端末 100, 110, 140に返信す る(図 21、図 22、図 23のステップ A7— 1)。投票者端末 100, 110, 140は、 (p, q, g , Υ)と (vj, E (vj) )のリストとを受信すると、その表示装置 101, 111, 141において vj のリストを投票者に表示し、投票者は入力装置 102, 112, 142により vjのリストから 候補者 viを選択して入力する(図 21、図 22、図 23のステップ A100— 1、 A110— 1、 A140— 1)。
[0128] そして、投票者端末 100, 110, 140は、 viに対応する暗号データ E (vi)と公開情 報(p, q, g, Y)とを 1番目の B音号サーノ 400— 1, 410—1, 440— 1に送信する(図 21 、図 22、図 23のステップ D101— 1, Di l l— 1, D141— 1)。 B音号サーノ OO— 1, 41 0-1, 440-1は、受信した暗号データ E (vi)と公開情報 (p, q, g, Y)とを再暗号ィ匕 手段 401— 1, 410-1, 440— 1に入力して E (vi)を再度暗号ィ匕した E, l (vi)を計算し (図 21、図 22、図 23のステップ D101— 2, Di l i— 2, D141— 2)、 E, 1 (vi)を投票者 端末 100, 110, 140に返信する(図 21、図 22、図 23のステップ D101— 3, Di l i— 3, D141— 3)。次に、投票者端末 100, 110, 140ίま、 1番目の Β音号サーノ 400— 1, 410-1, 440— 1力ら得た E, l (vi)を 2番目の Β音号サーノ 400— 2, 410— 2, 440— 2 に対して送信することにより、 E' l (vi)をもう一回暗号ィ匕させて E' 2 (vi)を得る。以下 、このような処理を k個の暗号サーバ 400— 1— 400— k, 410— 1一 410— k, 440— 1一 440— kのすべてについて繰り返し、暗号データ E' k(vi)を得る(図 21、図 22、図 23 のステップ DlOk— 3, Dl lk-3, D14k— 3)。暗号データ E,k(vi)は E (vi)を k回にわ たって再暗号化したデータに該当する。投票者端末 100, 110, 140は、 E' k(vi)を 認証サーバ 300や投票サーバ 200へ送る暗号データ E' (vi)とする(図 21、図 22、 図 23のステップ D100— 6, D110-5, D 140-5) 0以降の処理は、第 1の実施形態 における処理と同じである。
[0129] 次に、本実施形態の効果について説明する。
[0130] 本実施形態では、投票者端末 100, 110, 140〖こ、それぞれ、暗号サーバ 400— 1 一 400— k、暗号サーバ 410—1— 410— k、暗号サーバ 440—1— 440— kが接続され 、投票者端末 100, 110, 140は、投票サーバ 200から受信した暗号データ E (vi)を 合計 k回にわたって再暗号ィ匕して得られる E' (vi)を投票サーバ 200に送る。そのた め、投票サーバと k個の暗号サーバとがすべて結託しない限り、 E' (vi)から平文の投 票内容 viが判明することはなぐ投票の秘密をより強く求めることができる。
[0131] なお、ここでは、投票者端末 100, 110, 140に接続される暗号サーバの個数をい ずれも k個とした力 同数である必要はなぐそれぞれ別の数であってもよい。また、 第 1の実施形態と同じぐいくつかの投票者端末がいくつかの暗号サーバを共用する ことも可能である。
[0132] また、図 15に示された第 3の実施形態の場合と同様に、各暗号サーバには証明付 き再暗号ィ匕手段を備え、暗号化の証明データを作成するようにしてもょ 、。
[0133] 《第 5の実施形態》
次に、本発明の第 5の実施形態について図面を参照して説明する。第 2の実施形 態の匿名電子投票システムにおいて、 1つの投票者端末が複数の暗号サーバを用 いるようにすることによって、投票の秘密をさらに頑強(ロノくスト)に守ることができるよ うになる。本実施形態は、 1つの投票者端末に対応する暗号サーバの台数を増やし たものである。
[0134] 図 24に示した第 5の実施形態の匿名電子投票システムは、図 10に示された第 2の 実施形態の匿名投票システムにおいて、 kを 2以上の整数として、投票者端末 100が k台の暗号サーノ OO— 1— 400— kと接続し、同様に投票者端末 110, 140がそれ ぞれ喑号サーバ 410—1— 410— k、暗号サーバ 440—1— 440— kと接続されるように したものである。各暗号サーノ OO— 1— 400— k, 410— 1— 410— k, 440—1—440 —kには、それぞれ、第 2の変換手段 405— 1— 405— k, 415—l—415—k, 445—1— 445— kが備えられている。 mは l≤m≤kである整数として、 m番目の暗号サーバ 40 0-m, 410— m, 440— mの第 2の変換手段 405— m, 415— m, 445— mは、第 2の変 換データ(Gsm, Ysm, sm)と第 2の変換証明データ(Gum, um)を作成する。ここ で、
(Gsm, Ysm, sm) = (g sm mod p, Y sm mod p, smノ ,
(Gum, um) =、g um mod p, um)
である。
[0135] 投票者端末 100, 110, 140の暗号データ作成手段 104, 114, 144は、投票サー バからの第 1の変換データ(Gr, Yr, r) = (g'r mod p, Y"r mop p, r)及び第 1 の変換証明データ(Gd, d) = (g"r mod p, d)と、 k個の暗号サーバからの k個の 第 2の変換データ(Gsl, Ysl, si)—(Gsk, Ysk, sk)及び k個の第 2の変換証明デ ータ(Gul, ul)—(Guk, uk)と、平文の投票内容 viとが入力されると、下記式にした がって、暗号化投票データ E(vi)を計算する。
[0136] E(vi) = (Gi, Vi)
= (GrXGslXGs2X---XGsk mod p, viX YrX Ysl X Ys2X ··· X Ys k mod p)
さらに、暗号データ作成手段 104, 114, 144は、
a=GuXGdlXGd2X---XGdk mod p, c = HASH (p, q, g, Y, Gi, Vi, a) ,
t=c X (r+ sl + s2H—— h sk) +u+dl + d2H—— hdk mod q
を計算して、暗号ィ匕証明データ (a, t)を計算し、暗号化投票データ (Gi, Vi)とともに 出力する。
[0137] この証明は、暗号ィ匕証明検証手段 207により、
c = HASH (p, q, g, Y, Gi, Vi, a)
を計算して、
g t X ¾ji {— c} =a mod p
が成り立つ力どうかを確認することで、検証できる。
[0138] なお、投票者端末 120, 130, 150、投票サーバ 200及び認証サーバ 300の構成 は、図 10に示した第 2の実施形態の場合と同じである。
[0139] 次に、本実施形態の匿名電子投票システムの動作について説明する。図 25—図 2 7は、それぞれ、投票者端末 100, 110, 140での処理 (及びそれらの投票者端末で の処理に関連する投票サーバ、認証サーバ及び暗号サーバでの処理)を示している 。なお、本実施形態での初期設定の動作は第 2の実施の形態と同じであり、また、投 票者端末 120, 130, 150の動作も第 2の実施の形態におけるものと同じであるから 、これらの動作については記載を省略する。
[0140] 以下、投票者端末 100, 110, 140による投票サーバ 200へのアクセス力 投票デ ータの送信までの処理を説明する。
[0141] 投票者端末 100, 110, 140は、投票サーバ 200への変換データ要求を送信する( 図 25、図 26、図 27のステップ B5)。投票サーバ 200は、変換データ要求を受信する と、第 1の変換手段 206に公開情報 (p, q, g, Y)を入力し、第 1の変換データ (Gr, Yr, r)と第 1の変換証明データ(Gd, d)とを作成し(図 25、図 26、図 27のステップ B 6)、投票者端末 100, 110, 140に、(p, q, g, Y) , (Gr, Yr, r) , (Gd, d)を返信す る(図 25、図 26、図 27のステップ B7)。投票者端末 100, 110, 140ίま、投票サーノ 200力も(ρ, q, g, Y) , (Gr, Yr, r) , (Gd, d)を受信すると、それぞれ、暗号サーバ 400-1, 410-1, 440— 1に(p, q, g, Y)と変換データ要求とを送信する(図 25、図 26、図 27のステップ E101— 1, El l l— 1, E141— 1)。 Β音号サーノ OO— 1, 410—1 , 440— 1は、公開情報 (ρ, q, g, Y)と変換データ要求とを受信すると、それぞれ、第 2の変換手段 405— 1, 415-1, 445— 1に(p, q, g, Y)を入力して、第 2の変換デー タ(Gsl, Ysl, si)と第 2の変換証明データ(Gul, ul)とを生成し(図 25、図 26、図 27のステップ E101— 2, El l l-2, E141— 2)、投票者端末 100, 110, 140に、(G si, Ysl, si)と(Gul, ul)とを返信する(図 25、図 26、図 27のステップ E101— 3, El l l-3, E141— 3)。次に、投票者端末 100, 110, 140ίま、 2番目の Β音号サーノ 4 00-1, 410-1, 440— 1に対して同じ処理を繰り返し、以下同様にして、 k個の暗号 サーノ 400— 1一 400— k, 410— 1一 410— k, 440— 1一 440— kのすベて【こつ!ヽて繰 り返し、 k個の第 2の変換データ(Gsl, Ysl, si)—(Gsk, Ysk, sk)と k個の第 2の変 換証明データ(Gul, ul)—(Guk, uk)とを得る(図 25、図 26、図 27のステップ E10 k-3, El lk— 3, E14k— 3まで)。
[0142] 続いて投票者端末 100, 110, 140は、投票者が入力した viと、第 1の変換データ( Gr, Yr, r)、第 1の変換証明データ(Gd, d)、 k個の第 2の変換データ(Gsl, Ysl, s 1)一(Gsk, Ysk, sk)及び k個の第 2の変換証明データ(Gul, ul)—(Guk, uk)と を暗号データ作成手段 104, 114, 144に入力し、暗号ィ匕投票データ E (vi)と暗号 化証明データ(a, t)とを計算する(図 25、図 26、図 27のステップ E100— 4, E110— 4, E 140-4) oこれ以降の処理は、第 2の実施形態の場合と同様である。
[0143] 次に、本実施形態の効果について説明する。
[0144] 本実施形態では、投票者端末 100, 110, 140〖こ、それぞれ、暗号サーバ 400— 1 一 400— k、暗号サーバ 410—1— 410— k、暗号サーバ 440—1— 440— kが接続され 、投票者端末 100, 110, 140は、投票サーバ 200から受信した第 1の変換データと k個の暗号サーバから受信した k個の第 2の変換データにより暗号データ E (vi)を作 成し、この暗号データ E (vi)を投票サーバ 200に送る。そのため、投票サーバと k個 の暗号サーバがすべて結託しない限り、 E' (vi)から平文の投票内容 viが判明するこ とはなぐ投票の秘密をより強く求めることができる。
[0145] なお、ここでは、投票者端末 100, 110, 140に接続される暗号サーバの個数をい ずれも k個とした力 同数である必要はなぐそれぞれ別の数であってもよい。また、 第 2の実施形態と同じぐいくつかの投票者端末がいくつかの暗号サーバを共用する ことも可能である。
[0146] なお、投票サーバ 200に第 1の変換手段を備えない構成とし、 k個の暗号サーバか ら受信した第 2の変換データ、第 2の変換証明データのみを用いて暗号ィ匕投票デー タ E(vi)及び暗号ィ匕証明データ , t)を作成することとしてもよい。この場合、投票 者端末 100, 110, 140を含めすベての投票者端末は投票サーバ 200に単なる投 票情報要求を送信し、投票サーバ 200はすべての投票者端末に対して公開情報 (p , q, g, Y)と候補者情報を送信する。投票者端末 100, 110, 140の暗号データ作 成手段 104, 114, 144は、 k個の第 2の変換データ(Gsl, Ysl, si)—(Gsk, Ysk , sk)及び k個の第 2の変換証明データ(Gdl, dl)—(Gdk, dk)により、下記のよう に暗号ィ匕投票データ E(vi)、暗号ィ匕証明データ , t)を計算する。
[0147] E(vi) = (Gi, Vi)
= (GslXGs2X---XGsk mod p, viX Ysl X Ys2X ---Ysk mod p) a =GdlXGd2X---Gdk mod p,
c = HASH(p, q, g, Y, Gi, Vi, a),
t = cX (sl + s2 + ---sk) +dl + d2---dk mod q
[0148] なお、投票サーバは、第 1の変換データ、第 1の変換証明データをあらかじめ計算 しておくことも可能であるし、同様に、公開情報 (p, q, g, Y)をあら力じめ暗号サーバ に配布しておき、第 2の変換データ、第 2の変換証明データを事前に計算しておくよ うにすることも可能である。
[0149] 以上、本発明の好ましい実施の形態について説明したが、上述した匿名電子投票 システムを構成する投票者端末、投票サーバ、認証サーバ、暗号サーバ及び暗号証 明検証サーバは、いずれも、それらの機能を実現するためのコンピュータプログラム を、サーバ用コンピュータやパーソナルコンピュータなどのコンピュータに読み込ませ 、そのプログラムを実行させることによつても実現できる。こうしたコンピュータプロダラ ムは、磁気テープや CD— ROMなどの記録媒体によって、あるいは、ネットワークを介 してコンピュータに読み込まれる。言い換えれば、投票者端末、投票サーバ、認証サ ーバ、暗号サーバ及び暗号証明検証サーバにおけるそれぞれの構成要素は、いず れも、ソフトウェアによってもハードウェアによっても実現できるものである。
[0150] 特に、投票者端末を実現するためのコンピュータとしては、データ処理能力とネット ワーク接続機能とを有する携帯電話機や各種の携帯情報端末 (PDA)などの、コン ピュータとして見たときには比較的処理能力や記憶能力が小さいものを使用すること ができる。
産業上の利用可能性
[0151] 本発明は、ネットワークなどを介した匿名電子投票システムという用途に適用できる 。また、投票内容として自由記述を許すことにより、ネットワークなどを介した匿名電子 アンケートシステムという用途に適用できる。
図面の簡単な説明
[0152] [図 1]本発明の第 1の発明形態の匿名電子投票システムの構成を示すブロック図であ る。
[図 2]第 1の実施形態における初期設定の動作を示すフローチャートである。
[図 3]第 1の実施形態における投票者端末 100の動作を示すフローチャートである。
[図 4]第 1の実施形態における投票者端末 110の動作を示すフローチャートである。
[図 5]第 1の実施形態における投票者端末 120の動作を示すフローチャートである。
[図 6]第 1の実施形態における投票者端末 130の動作を示すフローチャートである。
[図 7]第 1の実施形態における投票者端末 140の動作を示すフローチャートである。
[図 8]第 1の実施形態における投票者端末 150の動作を示すフローチャートである。
[図 9]第 1の実施形態における投票サーバ 200の動作を示すフローチャートである。
[図 10]本発明の第 2の実施形態の匿名電子投票システムの構成を示すブロック図で ある。
[図 11]第 2の実施形態における投票者端末 100の動作を示すフローチャートである。
[図 12]第 2の実施形態における投票者端末 110の動作を示すフローチャートである。
[図 13]第 2の実施形態における投票者端末 140の動作を示すフローチャートである。
[図 14]第 2の実施形態における投票サーバ 200の動作を示すフローチャートである。
[図 15]本発明の第 3の実施形態の匿名電子投票システムの構成を示すブロック図で ある。 圆 16]第 3の実施形態における投票者端末 100の動作を示すフローチャートである。 圆 17]第 3の実施形態における投票者端末 110の動作を示すフローチャートである。 圆 18]第 3の実施形態における投票者端末 140の動作を示すフローチャートである。
[図 19]第 3の実施形態における暗号検証サーノ 600の動作を示すフローチャートで ある。
圆 20]本発明の第 4の実施形態の構成を示すブロック図である。
圆 21]第 4の実施形態における投票者端末 100の動作を示すフローチャートである。 圆 22]第 4の実施形態における投票者端末 110の動作を示すフローチャートである。 圆 23]第 4の実施形態における投票者端末 140の動作を示すフローチャートである。 圆 24]本発明の第 5の実施形態の構成を示すブロック図である。
圆 25]第 5の実施形態における投票者端末 100の動作を示すフローチャートである。 圆 26]第 5の実施形態における投票者端末 110の動作を示すフローチャートである。 圆 27]第 5の実施形態における投票者端末 140の動作を示すフローチャートである。
[図 28]従来の匿名電子投票システムの構成を示すブロック図である。

Claims

請求の範囲
[1] 候補者名と暗号化候補者名との組合わせをリストとして含むデータを受信して、選 択された候補者の前記暗号化候補者名をネットワーク経由で送信する投票者端末(
100、 110, 140)と、
前記暗号化候補者名を受信し再度暗号化して暗号化投票データを作成し、該喑 号化投票データを、前記暗号化候補者名を送信した当該投票者端末 (100、 110, 140)に前記ネットワーク経由で返信する少なくとも 1つの暗号サーバ(400、 410, 4 40)と、
前記投票者端末 (100, 110, 140)から暗号ィ匕投票データを受信し、該受信した 暗号ィ匕投票データの内で有効な暗号ィ匕投票データのリストを作成し、該作成したリス トを前記ネットワーク経由で送信する投票サーバ(200)と、
前記投票サーバ (200)から受信した前記有効な暗号化投票データのリストを復号 し、該リストの順序を入れ換えた平文の候補者名リストを前記ネットワーク経由で送信 する復号サーバ(500)とを備え、
前記投票サーバ(200)は、前記復号サーバ(500)から前記平文の候補者名リスト を受信し、該受信した候補者名リストに基づ!/ヽて投票結果を集計することを特徴とす る匿名電子投票システム。
[2] 選択した候補者の候補者名を暗号化して暗号化候補者名を生成する暗号化手段
(124, 134, 154)を有する別の投票者端末(120, 130, 150)を更に備える、請求 項 1に記載の匿名電子投票システム。
[3] 投票者名簿に含まれる投票者又は投票者端末の識別情報をリストとして記憶する 記憶装置を有し、前記投票者端末(100, 110, 120, 130)から前記暗号化投票デ ータ及び識別情報を受信し、前記記憶装置に記憶された識別情報に基づ!、て前記 暗号化投票データを認証する認証サーバ(300)を更に備え、前記投票サーバ(200 )は、少なくとも該認証サーバ(300)により認証情報が付加された暗号化投票データ を前記有効な暗号ィ匕投票データとして認める、請求項 1又は 2に記載の匿名電子投 票システム。
[4] 認証サーバ(300)を更に備えており、 前記投票者端末 (110, 130)は、前記暗号化投票データと、組織内識別情報と、 秘密鍵とに基づ!/ヽて、組織内デジタル署名を生成する組織内署名生成手段(113, 133)を有し、
前記認証サーバ(300)は、前記投票者端末(110, 130)から前記暗号化投票デ ータと、組織内識別情報と、組織内デジタル署名とを受信し、公開鍵に基づいて前 記組織内デジタル署名を認証し、
前記投票サーバ(200)は、少なくとも前記認証サーバ(300)により認証情報が付 カロされた暗号ィ匕投票データを前記有効な暗号ィ匕投票データとして認める、請求項 1 又は 2に記載の匿名電子投票システム。
[5] 前記少なくとも 1つの暗号サーバが、前記暗号ィ匕候補者名を順次に多重に暗号ィ匕 する 1群の暗号サーノ (400— 1— 400— k、 410— 1— 410— k、 440— 1— 440— k)を 含み、前記投票サーバ(200)は、該 1群の暗号サーバ(400— 1一 400— k、 410—1 一 410— k、 440— 1一 440— k)で多重に暗号化された暗号化投票データを受信する 、請求項 1一 4の何れか一に記載の匿名電子投票システム。
[6] 前記リストに含まれる各組み合わせが、候補者名及び暗号化候補者名に加えて、 候補者名を正当に暗号ィ匕した旨を示す証明データを含み、
前記暗号サーバ (400、 410, 440)は、前記暗号ィ匕投票データにカ卩えて、該暗号 化投票データの正当性を示す証明データを作成して、前記投票者端末(100, 110 , 140)に返信する、請求項 1又は 2に記載の匿名電子投票システム。
[7] ネットワークに接続された投票者端末(100, 110, 140)と、
公開情報から前記投票者端末(100, 110, 140)毎に第 1暗号化パラメータを生成 する第 1データ変換手段 (206)を有し、前記第 1暗号パラメータを前記投票者端末( 100, 110, 140)に送信する第 1の暗号サーバ(200)と、
前記公開情報から前記投票者端末(100, 110, 140)毎に第 2暗号化パラメータを 生成する第 2データ変換手段 (405, 415, 445)を有し、前記第 2暗号化パラメータ を前記投票者端末(100, 110, 140)に送信する第 2の暗号サーバ (400, 410, 44 0)と、
前記投票者端末 (100, 110, 140)から暗号ィ匕投票データを受信し、該受信した 暗号ィ匕投票データの内で有効な暗号ィ匕投票データのリストを作成し、該作成したリス トを前記ネットワーク経由で送信する投票サーバ(200)と、
前記投票サーバ (200)から受信した前記有効な暗号化投票データのリストを復号 し、該リストの順序を入れ換えた平文の候補者名リストを生成し、前記ネットワーク経 由で送信する復号サーバ(500)とを備え、
前記投票サーバ(200)は、前記復号サーバ(500)から前記平文の候補者名リスト を受信し、該受信した候補者名リストに基づ!/ヽて投票結果を集計し、
前記投票者端末(100, 110, 140)は、投票内容を前記第 1及び第 2暗号化パラメ ータに基づいて暗号化して暗号化投票データを生成する暗号化手段(104, 114, 1 44)を有し、該暗号化投票データを前記投票サーバ(200)に送信することを特徴と する匿名電子投票システム。
[8] 前記第 1の暗号サーバ(200)と前記投票サーバ(200)とが同一のサーバ上で作 動する、請求項 7に記載の匿名電子投票システム。
[9] 前記投票者端末(100, 110, 140)は、前記暗号ィ匕投票データに加えて、暗号ィ匕 証明データを作成して前記投票サーバ(200)に送信し、
前記投票サーバ(200)は、少なくとも前記暗号ィ匕証明データを検証して正当性を 検証した後に、対応する暗号化投票データを前記有効な暗号化投票データとして認 める、請求項 7又は 8に記載の匿名電子投票システム。
[10] 投票者名簿に含まれる投票者又は投票者端末の識別情報をリストとして記憶する 記憶装置を有し、前記投票者端末 (100)から前記暗号化投票データ及び識別情報 を受信し、前記記憶装置に記憶された識別情報に基づ!、て前記暗号化投票データ を認証する認証サーバ(300)を更に備え、前記投票サーバ(200)は、少なくとも前 記認証サーバ(300)により認証情報が付加された暗号ィ匕投票データを前記有効な 暗号ィ匕投票データとして認める、請求項 7— 9の何れか一に記載の匿名電子投票シ ステム。
[11] 認証サーバ(300)を更に備えており、
前記投票者端末 (110)は、前記暗号化投票データと、組織内識別情報と、秘密鍵 とに基づ ヽて、組織内デジタル署名を生成する組織内署名生成手段(113)を有し、 前記認証サーバ(300)は、前記投票者端末(110)から前記暗号化投票データと、 組織内識別情報と、組織内デジタル署名とを受信し、公開鍵に基づいて前記組織内 デジタル署名を認証し、
前記投票サーバ(200)は、少なくとも前記認証サーバ(300)により認証情報が付 カロされた暗号ィ匕投票データを前記有効な暗号ィ匕投票データとして認める、請求項 7 一 9の何れか一に記載の匿名電子投票システム。
[12] 投票サーバと投票者が投票を行うための投票者端末と暗号サーバと復号サーバと を用いる匿名電子投票方法であって、
前記投票サーバ (200)から、候補者名を暗号化して候補者名とその候補者名を暗 号ィ匕した暗号ィ匕候補者名との組のリストを投票者端末(100, 110, 140)に送信する 段階と、
前記投票者端末(100, 110, 140)から、投票者が選択した候補者名と組となった 暗号化候補者名を前記暗号サーバ (400, 410, 440)に送信する段階と、
前記暗号サーバ (400, 410, 440)で、前記暗号化候補者名を再度暗号化して暗 号化投票データを生成し、該生成した暗号化投票データを前記暗号化候補者名を 送信した当該投票者端末(100, 110, 140)に送信する段階と、
前記投票者端末(100, 110, 140)から、前記暗号サーバ(400, 410, 440)から 受信した暗号化投票データを前記投票サーバ (200)に送信する段階と、
前記投票サーバ (200)で、前記暗号化投票データを受付け、有効な暗号化投票 データのリストを作成し送信する段階と、
前記復号サーバ(500)で、前記暗号化投票データのリストを復号して順序を入れ 換えた平文の候補者名のリストを出力する段階と、
前記投票サーバ (200)で、前記平文の候補者名リストを受信し、該受信した候補 者名リストに基づいて投票結果を集計する段階とを備えることを特徴とする匿名電子 投票方法。
[13] 前記投票者端末 (100)から前記暗号化投票データ及び識別情報を認証サーバ (3 00)で受信し、記憶装置に記憶された識別情報に基づ!、て前記暗号化投票データ を認証し前記投票サーバ(100)に送信する段階と、前記投票サーバ(200)で、少な くとも前記認証情報が付加された暗号ィ匕投票データを前記有効な暗号ィ匕投票デー タとして認める段階とを更に備える、請求項 12に記載の匿名電子投票方法。
[14] 前記投票者端末 (110)で、前記暗号化投票データと、組織内識別情報と、秘密鍵 とに基づいて、組織内デジタル署名を生成する段階と、
認証サーバ(220)で、前記投票者端末(110)から前記暗号化投票データと、組織 内識別情報と、組織内デジタル署名とを受信し、公開鍵に基づいて前記組織内デジ タル署名を認証する段階と、
前記投票サーバ(200)で、少なくとも前記認証サーバ(300)により認証情報が付 カロされた暗号ィ匕投票データを前記有効な暗号ィ匕投票データとして認める段階とを更 に備える、請求項 12に記載の匿名電子投票方法。
[15] 前記暗号化候補者名を再度暗号化する段階が、 1群の暗号サーバ (400— 1一 400 k、 410— 1一 410— k、 440— 1一 440— Ok)で前記暗号ィ匕候補者名を順次に多重に 暗号化して前記暗号化投票データを生成する段階である、請求項 12に記載の匿名 電子投票方法。
[16] 前記リストに含まれる各組合わせが、候補者名及び暗号化候補者名に加えて、候 補者名を正当に暗号ィ匕した旨を示す証明データを含み、
前記暗号サーバ (400、 410, 440)が、前記暗号化投票データと共に該暗号化投 票データの正当性を示す証明データを作成して、前記投票者端末(100, 110, 14 0)に返信する、請求項 12に記載の匿名電子投票方法。
[17] 第 1の暗号サーバ(200)で、公開情報力も前記投票者端末(100, 110, 140)毎 に第 1暗号ィ匕パラメータを生成し、該第 1暗号パラメータを投票者端末(100, 110, 1 40)に送信する段階と、
第 2の暗号サーバ (400, 410, 440)で、前記公開情報から前記投票者端末(100 , 110, 140)毎に第 2暗号ィ匕パラメータを生成し、該第 2暗号ィ匕パラメータを前記投 票者端末(100, 110, 140)に送信する段階と、
前記投票者端末(100, 110, 140)で、投票者の投票内容を前記第 1及び第 2暗 号化パラメータに基づいて暗号ィ匕して暗号ィ匕投票データを生成し、該暗号ィ匕投票デ ータを投票サーバ(200)に送信する段階と、 投票サーバ(200)で、受信した暗号化投票データの内で有効な暗号化投票デー タのリストを作成し、該作成したリストを前記ネットワーク経由で送信する段階と、 復号サーバ (500)で、前記投票サーバ (200)から受信した前記有効な暗号化投 票データのリストを復号し、該リストの順序を入れ換えた平文の候補者名リストを作成 して、前記ネットワーク経由で送信する段階と、
前記投票サーバ (200)で、前記平文の候補者名リストを受信し、該受信した候補 者名リストに基づいて投票結果を集計する段階とを備えることを特徴とする匿名電子 投票方法。
[18] 前記暗号化投票データを作成する段階が、前記暗号化投票データの正当性を証 明する暗号ィ匕証明データを作成し、
前記投票サーバ(200)で、少なくとも前記暗号ィ匕証明データを検証して正当性を 検証した後に、対応する暗号化投票データを前記有効な暗号化投票データとして認 める段階を更に備える、請求項 17に記載の匿名電子投票方法。
[19] 認証サーバ (300)で、前記投票者端末 (100)から前記暗号化投票データ及び識 別情報を受信し、記憶装置に記憶された識別情報に基づ!、て前記暗号化投票デー タを認証する段階と、前記投票サーバ(200)で、少なくとも前記認証情報が付加され た暗号ィ匕投票データを前記有効な暗号ィ匕投票データとして認める段階とを更に備え る、請求項 17に記載の匿名電子投票方法。
[20] 前記投票者端末 (110)で、前記暗号化投票データと、組織内識別情報と、秘密鍵 とに基づいて、組織内デジタル署名を生成する段階と、
前記認証サーバ (300)で、前記投票者端末 (110)から前記暗号化投票データと、 組織内識別情報と、組織内デジタル署名とを受信し、公開鍵に基づいて前記組織内 デジタル署名を認証する段階と、
前記投票サーバ (200)で、少なくとも前記認証情報が付加された暗号化投票デー タを前記有効な暗号ィ匕投票データとして認める段階とを更に備える、請求項 17に記 載の匿名電子投票方法。
PCT/JP2005/000532 2004-01-26 2005-01-18 匿名電子投票システム及び匿名電子投票方法 WO2005071878A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005517238A JP4715518B2 (ja) 2004-01-26 2005-01-18 匿名電子投票システム及び匿名電子投票方法
EP05703769A EP1710949A4 (en) 2004-01-26 2005-01-18 ANONYMOUS ELECTRONIC ELECTION SYSTEM AND ANONYMOUS ELECTRONIC ELECTION METHOD
US10/587,665 US7694880B2 (en) 2004-01-26 2005-01-18 Anonymous electronic voting system and anonymous electronic voting method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004016894 2004-01-26
JP2004-016894 2004-01-26

Publications (1)

Publication Number Publication Date
WO2005071878A1 true WO2005071878A1 (ja) 2005-08-04

Family

ID=34805512

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/000532 WO2005071878A1 (ja) 2004-01-26 2005-01-18 匿名電子投票システム及び匿名電子投票方法

Country Status (4)

Country Link
US (1) US7694880B2 (ja)
EP (1) EP1710949A4 (ja)
JP (2) JP4715518B2 (ja)
WO (1) WO2005071878A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011077826A1 (ja) * 2009-12-22 2011-06-30 クオード株式会社 電子投票システム
CN103593899A (zh) * 2013-11-01 2014-02-19 华侨大学 基于蓝牙的匿名团体投票方法
US8983074B2 (en) 2009-12-22 2015-03-17 Quad, Inc. Input content data managing system and method of managing input content data
CN110533822A (zh) * 2019-07-30 2019-12-03 湖南正宇软件技术开发有限公司 一种会议表决方法和系统

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE429747T1 (de) * 2004-06-30 2009-05-15 France Telecom Elektronisches wahlverfahren und -system in einem hochsicherheitskommunikationsnetz
US7533813B2 (en) * 2005-04-21 2009-05-19 Iml Limited Wireless voting method
JP4771053B2 (ja) * 2005-05-27 2011-09-14 日本電気株式会社 統合シャッフル正当性証明装置、証明統合装置、統合シャッフル正当性検証装置及びミックスネットシステム
CA2671269A1 (en) * 2009-07-08 2011-01-08 Ky M. Vu An anti-rigging voting system and its software design
US8090351B2 (en) * 2009-09-01 2012-01-03 Elliot Klein Geographical location authentication method
DK3249616T3 (da) * 2015-01-21 2022-01-31 Correa Parker Cesar Ramon Juan Elektronisk afstemningsfremgangsmåde og -system implementeret i en bærbar enhed
KR102144614B1 (ko) * 2018-07-16 2020-08-13 한양대학교 산학협력단 비밀 선거가 보장된 블록 체인 기반의 전자 투표를 수행하는 단말 장치 및 서버와, 전자 투표 방법
CN109636997B (zh) * 2018-12-10 2021-07-13 顾文菲 一种使用移动智能终端的匿名投票表决方法
CN111800325A (zh) * 2020-07-30 2020-10-20 北京共识数信科技有限公司 一种服务器与加密机分离的环形结构的匿名投票方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02151892A (ja) * 1988-12-05 1990-06-11 Matsushita Electric Ind Co Ltd べき乗剰余演算装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6169789B1 (en) * 1996-12-16 2001-01-02 Sanjay K. Rao Intelligent keyboard system
AUPP971499A0 (en) 1999-04-12 1999-05-06 Opentec Pty. Limited On-line electoral system
JP2001243395A (ja) 2000-02-28 2001-09-07 Ntt Advanced Technology Corp 投票所方式による電子投票システム
JP4181724B2 (ja) 2000-03-03 2008-11-19 日本電気株式会社 証明付再暗号シャッフル方法と装置、再暗号シャッフル検証方法と装置、入力文列生成方法と装置及び記録媒体
JP3788246B2 (ja) 2001-02-13 2006-06-21 日本電気株式会社 匿名復号システム及び匿名復号方法
JP3901471B2 (ja) 2001-05-18 2007-04-04 日本電気株式会社 証明付シャッフル復号システムと証明付シャッフル復号方法、シャッフル復号検証方法
US7306148B1 (en) * 2001-07-26 2007-12-11 Populex Corp. Advanced voting system and method
US6892944B2 (en) * 2001-10-01 2005-05-17 Amerasia International Technology, Inc. Electronic voting apparatus and method for optically scanned ballot
US7395964B2 (en) * 2005-09-06 2008-07-08 International Business Machines Corporation Secure voting system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02151892A (ja) * 1988-12-05 1990-06-11 Matsushita Electric Ind Co Ltd べき乗剰余演算装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
MORI K. ET AL: "Shuffle o Mochiita Denshi Tohyo System no Jiso.", HESEI 14 NEN DENKI GAKKAI DENSHI.JOHO.SYSTEM BUMON TAKAI KOEN RONBUNSHU., vol. 2002, 2 September 2002 (2002-09-02), pages 421 - 424, XP002992139 *
NAKAZATO J. ET AL: "An Evaluation and Implementation of Electronic Voting System Using Oblivious Counter Protocol on Personal Digital Assistance", TRANSACTIONS OF INFORMATION PROCESSING SOCIETY OF JAPAN, vol. 44, no. 8, 15 August 2003 (2003-08-15), pages 1904 - 1912, XP002992140 *
See also references of EP1710949A4 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011077826A1 (ja) * 2009-12-22 2011-06-30 クオード株式会社 電子投票システム
US8983074B2 (en) 2009-12-22 2015-03-17 Quad, Inc. Input content data managing system and method of managing input content data
CN103593899A (zh) * 2013-11-01 2014-02-19 华侨大学 基于蓝牙的匿名团体投票方法
CN103593899B (zh) * 2013-11-01 2016-05-18 华侨大学 基于蓝牙的匿名团体投票方法
CN110533822A (zh) * 2019-07-30 2019-12-03 湖南正宇软件技术开发有限公司 一种会议表决方法和系统

Also Published As

Publication number Publication date
JP2011091864A (ja) 2011-05-06
JPWO2005071878A1 (ja) 2007-12-27
JP5246276B2 (ja) 2013-07-24
JP4715518B2 (ja) 2011-07-06
US7694880B2 (en) 2010-04-13
EP1710949A4 (en) 2010-04-21
EP1710949A1 (en) 2006-10-11
US20070185761A1 (en) 2007-08-09

Similar Documents

Publication Publication Date Title
JP4715518B2 (ja) 匿名電子投票システム及び匿名電子投票方法
CN110224993B (zh) 基于区块链的可追责匿名电子投票方法及系统
Adida et al. Electing a university president using open-audit voting: Analysis of real-world use of Helios
JP4881119B2 (ja) ユーザ認証方法、ユーザ側認証装置、および、プログラム
Bulens et al. Running {Mixnet-Based} Elections with Helios
US20070189519A1 (en) Detecting compromised ballots
Backes et al. Cryptographically sound security proofs for basic and public-key kerberos
WO2005093671A2 (en) Electronic voting systems
Qureshi et al. SeVEP: Secure and verifiable electronic polling system
KR20190076535A (ko) 블록체인을 이용한 익명 투표 시스템 및 그 방법
KR20060127194A (ko) 공정한 블라인드 서명을 이용한 전자 투표 방법 및 시스템
US20120239932A1 (en) Method for verification of the correct recording of information
KR102169695B1 (ko) 자가검증이 가능한 블록체인 전자투표 관리 방법
Sujithra et al. ID based adaptive-key signcryption for data security in cloud environment
EP1361693B1 (en) Handle deciphering system and handle deciphering method, and program
JP2773737B2 (ja) 集計結果分析システム
Rodríguez-Henríquez et al. Yet another improvement over the Mu–Varadharajan e-voting protocol
Cortier et al. A simple alternative to Benaloh challenge for the cast-as-intended property in Helios/Belenios
JP3910529B2 (ja) 電子投票システム
Wu et al. PrivApollo–secret ballot E2E-V internet voting
Krips et al. An internet voting protocol with distributed verification receipt generation
Chaieb et al. Design and practical implementation of verify‐your‐vote protocol
Avetisyan Electronic Voting System Essentials and Problems
EP1371169A2 (en) Detecting compromised ballots
CN111669380B (zh) 一种基于运维审计系统的免密登录方法

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2005703769

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2005517238

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 10587665

Country of ref document: US

Ref document number: 2007185761

Country of ref document: US

WWP Wipo information: published in national office

Ref document number: 2005703769

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 10587665

Country of ref document: US