pksig_boyen

Boyen Mesh Signatures (Boyen07)

Authors: X. Boyen

Title: “Mesh Signatures: How to Leak a Secret with Unwitting and Unwilling Participants”
Published in: EUROCRYPT, 2007
Notes:

Scheme Properties

  • Type: signature (ring-based)

  • Setting: bilinear groups (asymmetric)

  • Assumption: q-SDH

Implementation

Authors:
  1. Ayo Akinyele

Date:

11/2011

class pksig_boyen.Boyen(groupObj)[source]

Bases: PKSig

>>> from charm.toolbox.pairinggroup import PairingGroup
>>> group = PairingGroup('MNT224')
>>> boyen = Boyen(group)
>>> master_public_key = boyen.setup()
>>> num_signers = 3
>>> keys = [ boyen.keygen(master_public_key) for i in range(num_signers)]     
>>> public_keys, secret_keys = {},{}
>>> for i in range(len(keys)):
...     public_keys[ i+1 ] = keys[ i ][ 0 ]
...     secret_keys[ i+1 ] = keys[ i ][ 1 ]
>>> signer = 3
>>> secret_key = secret_keys[signer] 
>>> msg = 'please sign this new message!'
>>> signature = boyen.sign(signer, master_public_key, public_keys, secret_key, msg) 
>>> boyen.verify(master_public_key, public_keys, msg, signature) 
True
getPKdict(mpk, pk, k)[source]
keygen(mpk)[source]
setup()[source]
sign(index, mpk, pk, sk, M)[source]
verify(mpk, pk, M, sig)[source]
pksig_boyen.main()[source]