chamhash_rsa_hw09

Hohenberger-Waters Chameleon Hash (RSA-based) based on the scheme of Ateneise and de Medeiros

From: “S. Hohenberger, B. Waters. Realizing Hash-and-Sign Signatures under Standard Assumptions”, Appendix A.
Published in: Eurocrypt 2009
Notes:
  • type: hash function (chameleon)
  • setting: RSA
  • assumption: RSA
Author:
  1. Ayo Akinyele
Date:

1/2011

class chamhash_rsa_hw09.ChamHash_HW09[source]

Bases: charm.toolbox.Hash.ChamHash

>>> from charm.core.math.integer import integer
>>> p = integer(164960892556379843852747960442703555069442262500242170785496141408191025653791149960117681934982863436763270287998062485836533436731979391762052869620652382502450810563192532079839617163226459506619269739544815249458016088505187490329968102214003929285843634017082702266003694786919671197914296386150563930299)
>>> q = integer(82480446278189921926373980221351777534721131250121085392748070704095512826895574980058840967491431718381635143999031242918266718365989695881026434810326191251225405281596266039919808581613229753309634869772407624729008044252593745164984051107001964642921817008541351133001847393459835598957148193075281965149) 
>>> chamHash = ChamHash_HW09()
>>> (public_key, secret_key) = chamHash.paramgen(1024, p, q)
>>> msg = "Hello world this is the message!"
>>> (hash1, r) = chamHash.hash(public_key, msg)
>>> (hash2, r) = chamHash.hash(public_key, msg, r)
>>> hash1 == hash2
True
hash(pk, message, r=0)[source]
paramgen(secparam, p=0, q=0)[source]