Election-Tech-Initiative / Election-Tech-Initiative/electionguard
🐞 SchnorrProof challenge specification and implementation do not match
- Dominant language
- Python
- Stars
- 872
- Forks
- 131
- PR merge metrics
- No merged PRs in 30d
Description
### Is there an existing issue for this?
- [X] I have searched the existing issues
### Current Behavior
Specification 1.0 for SchnorrProof (p 10, p 27) has the challenge as
`c i,j = H(Q, K i,j , h i,j )
`
But implementation **make_schnorr_proof** in schnorr.py. line 89 has
`c = hash_elems(k, h)
`
This was discussed in
https://github.com/microsoft/electionguard-python/issues/278
and it was decided to leave out the Q.
### Expected Behavior
The specification should be amended after reviewing the decision to leave out the Q.
### Steps To Reproduce
_No response_
### Environment
```markdown
- OS:
```
### Anything else?
The 2.0 document being circulated "_Proofs in ElectionGuard– changes for version 2.0_" section 2 should also be amended.
Contributor guide
Assessment
This issue has not been assessed yet.