Random Block Verification : Improvements to the Norwegian electoral - - PowerPoint PPT Presentation

random block verification
SMART_READER_LITE
LIVE PREVIEW

Random Block Verification : Improvements to the Norwegian electoral - - PowerPoint PPT Presentation

Random Block Verification : Improvements to the Norwegian electoral mix net Denise Demirel, Hugo Jonker , Melanie Volkamer What is mixing?


slide-1
SLIDE 1

Random Block Verification:

Improvements to the Norwegian electoral mix net

Denise Demirel, Hugo Jonker, Melanie Volkamer

slide-2
SLIDE 2

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 2/17

What is mixing?

Mix 1 Mix 2 Mix 3 ‡ ¶ Œ ß

❍ ❍ ❥ ❳ ❳ ③ ✘ ✘ ✿ ✟ ✟ ✯ ✟ ✟ ✯ ✘ ✘ ✿ ❳ ❳ ③ ❍ ❍ ❥

¶ ‡ Œ ß

❍ ❍ ❥ ❳ ❳ ③ ✘ ✘ ✿ ✟ ✟ ✯ ✟ ✟ ✯ ✘ ✘ ✿ ❳ ❳ ③ ❍ ❍ ❥

Œ ¶ ‡ ß

❍ ❍ ❥ ❳ ❳ ③ ✘ ✘ ✿ ✟ ✟ ✯ ✟ ✟ ✯ ✘ ✘ ✿ ❳ ❳ ③ ❍ ❍ ❥

ß ‡ Œ ¶

slide-3
SLIDE 3

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 3/17

How to verify correctness of a mix operation?

■ Using zero knowledge proofs

efficiency problems, hard to understand, detects all fraud, no privacy loss

slide-4
SLIDE 4

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 4/17

Trading detection for efficiency

■ Randomized Partial Checking [JJR02] (RPC)

doubles # operations, not all cheating detected, less privacy.

slide-5
SLIDE 5

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 5/17

Trading detection for efficience (2)

■ Optimistic mixing [GZBJJ02] (OM)

Needs crypto, not all fraud detected, privacy loss.

slide-6
SLIDE 6

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 6/17

Combination: RPC+OM

Can a combination improve the trade-off?

slide-7
SLIDE 7

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 6/17

Combination: RPC+OM

Can a combination improve the trade-off? Puiggalí Allepuz and Guasch Castelló: [PG10].

slide-8
SLIDE 8

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 7/17

Verification of the [PG10] mix net

  • 1. Votes divided into l =

m

√n blocks, for m mix nodes and n votes.

  • 2. For every block:

■ identify corresponding group of outputs ■ publish products of input and output blocks ■ publish zero knowledge proof of equality of products

  • 3. votes in output blocks are somewhat dispersed over the input

blocks of the next mix.

slide-9
SLIDE 9

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 8/17

Remarks on Norwegian mix net

■ efficiency of proofs.

  • reveal re-encryption randomness
  • use more efficient proofs [JJ99]
slide-10
SLIDE 10

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 8/17

Remarks on Norwegian mix net

■ efficiency of proofs.

  • reveal re-encryption randomness
  • use more efficient proofs [JJ99]

■ speedup via parallelisation.

parallel mixing (of blocks) vs sequential mixing. used in Norway too.

slide-11
SLIDE 11

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 8/17

Remarks on Norwegian mix net

■ efficiency of proofs.

  • reveal re-encryption randomness
  • use more efficient proofs [JJ99]

■ speedup via parallelisation.

parallel mixing (of blocks) vs sequential mixing. used in Norway too.

■ Reducing trust assumptions.

  • privacy in [PG10] preserved if all mix nets are honest

(“gradual dispersal”).

  • Use Fiat-Shamir to prevent first mix from predicting block

assignment.

slide-12
SLIDE 12

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 9/17

Randomized Block Verification

slide-13
SLIDE 13

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 10/17

Mixing in RBV

  • 1. Divide the n votes into m subsets (for m mix nodes).
  • 2. Mix i mixes subset i twice, and publishes intermediate and final

results.

  • 3. Next, mix i takes the final result of mix i − 1 as input.

Repeat m times.

slide-14
SLIDE 14

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 11/17

Verification of RBV

■ Divide input into l = ⌊√n⌋ blocks.

  • r = n − l · l blocks with l + 1 elements, and
  • l − r blocks with l elements.
slide-15
SLIDE 15

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 11/17

Verification of RBV

■ Divide input into l = ⌊√n⌋ blocks.

  • r = n − l · l blocks with l + 1 elements, and
  • l − r blocks with l elements.

■ Determine blocks: input blocks = output blocks of previous mix.

slide-16
SLIDE 16

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 11/17

Verification of RBV

■ Divide input into l = ⌊√n⌋ blocks.

  • r = n − l · l blocks with l + 1 elements, and
  • l − r blocks with l elements.

■ Determine blocks: input blocks = output blocks of previous mix. ■ Prove correspondence of input blocks with intermediate blocks

(first mixing operation). Efficient ZK proof or reveal re-encryption randomness.

slide-17
SLIDE 17

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 11/17

Verification of RBV

■ Divide input into l = ⌊√n⌋ blocks.

  • r = n − l · l blocks with l + 1 elements, and
  • l − r blocks with l elements.

■ Determine blocks: input blocks = output blocks of previous mix. ■ Prove correspondence of input blocks with intermediate blocks

(first mixing operation). Efficient ZK proof or reveal re-encryption randomness.

■ Redistribute votes over blocks. l blocks with l elements =

⇒ perfect redistribution. We’re close.

slide-18
SLIDE 18

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 11/17

Verification of RBV

■ Divide input into l = ⌊√n⌋ blocks.

  • r = n − l · l blocks with l + 1 elements, and
  • l − r blocks with l elements.

■ Determine blocks: input blocks = output blocks of previous mix. ■ Prove correspondence of input blocks with intermediate blocks

(first mixing operation). Efficient ZK proof or reveal re-encryption randomness.

■ Redistribute votes over blocks. l blocks with l elements =

⇒ perfect redistribution. We’re close.

■ Prove correspondence intermediate blocks with output blocks.

slide-19
SLIDE 19

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 11/17

Verification of RBV

■ Divide input into l = ⌊√n⌋ blocks.

  • r = n − l · l blocks with l + 1 elements, and
  • l − r blocks with l elements.

■ Determine blocks: input blocks = output blocks of previous mix. ■ Prove correspondence of input blocks with intermediate blocks

(first mixing operation). Efficient ZK proof or reveal re-encryption randomness.

■ Redistribute votes over blocks. l blocks with l elements =

⇒ perfect redistribution. We’re close.

■ Prove correspondence intermediate blocks with output blocks.

Done.

slide-20
SLIDE 20

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 12/17

Comparison

slide-21
SLIDE 21

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 13/17

Detecting fraud

mix chance of not detecting fraud RPC [JJR02] P(k undetected changes) = 2−k. PoS [GZBJJ02] max(P(k + 1 undetected changes)) = 5

8.

Norway [PG10] P(k + 1 undetected changes) =

  • m

√n−1 n−1

k . RBV P(k + 1 undetected changes) = √n−1

n−1

k . Note: RBV not depending on # mix nodes.

slide-22
SLIDE 22

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 14/17

Privacy

mix size of anonymity group RPC |A G| = n

2.

PoS |A G| =

n 2α, (0 < α ≤ 5).

Norway |A G| =

n

m

√n.

RBV |A G| = n.

slide-23
SLIDE 23

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 15/17

Efficiency of RBV

mix #exp per mix node RPC 2n. PoS 2α · (2m − 1), 0 < α ≤ 5. Norway 6 ·

n

m

√n.

RBV 6 ·

n ⌊√n⌋.

slide-24
SLIDE 24

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 16/17

Conclusions

■ Improved privacy of [PG10]. ■ Some efficiency improvements. ■ Main cost: fraud detection.

However, still too good for practical attacks.

■ For future: mix net verification using ZK proofs more and more

efficient.

slide-25
SLIDE 25

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 16/17

Conclusions

■ Improved privacy of [PG10]. ■ Some efficiency improvements. ■ Main cost: fraud detection.

However, still too good for practical attacks.

■ For future: mix net verification using ZK proofs more and more

efficient.

Thanks for your attention. Questions?

slide-26
SLIDE 26

evote, 12 July 2012 Random Block Verification, Hugo Jonker - p. 17/17

References

[JJR02] Jakobsson, M., Juels, A., Rivest, R.L.: Making mix nets robust for electronic voting by randomized partial checking. In: Proc. USENIX’02 (2002) [PG10] Puiggal í Allepuz, J., Guasch Castelló, S.: Universally verifiable efficient re-encryption mixnet. In: Proc. EVOTE 2010. LNI, vol. P-167, pp. 241–254. GI (2010) [GZBJJ02] Golle, P ., Zhong, S., Boneh, D., Jakobsson, M., Juels, A.: Optimistic mixing for exit-polls. In: Asiacrypt 2002, LNCS 2501. pp. 451–465. Springer-Verlag (2002) [JJ99] Jakobsson, M., Juels, A.: Millimix: Mixing in small batches. Tech. rep., Center for Discrete Mathematics #38; Theoretical Computer Science (1999)