Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Suggestions for pqARKG-H security proof #31

Open
wants to merge 12 commits into
base: pqarkg-h
Choose a base branch
from
17 changes: 8 additions & 9 deletions pqarkg-h-security/pqarkg-h.tex
Original file line number Diff line number Diff line change
Expand Up @@ -238,21 +238,20 @@ \section{\ALGNAME}

A new parameter~$b$ is added to the \algdpk and \algdsk functions.
This~$b$ is an additional blinding factor in the key blinding scheme~\bl,
allowing the ARKG subordinate party (the party generating public keys) to add any number of additional blinding layers
on top of the one performed by the ARKG delegating party (the party holding the ARKG private seed).
allowing the ARKG delegating party (the party holding the ARKG private seed) to add any number of additional blinding layers
on top of the one performed by the ARKG subordinate party (the party generating public keys).
Comment on lines +244 to +245
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is the subordinate party that adds the additional blinding layers - namely reducing them to the single additional blinding factor b passed to the delegating party. I'll keep this as is.

To~prevent choosing $b = -\tau$ so that it cancels the blinding factor~$\tau$
computed in step~2 of~\algdsk of~\ALGBASE, this~$b$ is also mixed into the PRF arguments to compute~$\tau$.
This disrupts any algebraic relationship between $b$ and~$\tau$,
thus preventing the subordinate party from extracting the private seed~\sk by a malicious choice of~$b$.
thus preventing the a compromised subordinate party from extracting the private seed~\sk by a malicious choice of~$b$.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this addition is necessary.


The new argument mixed into the PRF is however not $b$ directly,
but a blinded public key~\pkbd incorporating the blinding factor~$b$.
This enables the subordinate party to prove to a third party that a public key was generated using \ALGNAME
without having to disclose~$b$.
This is desirable if the subordinate party does not wish to reveal
the relationship with keys from other branches of an HDK tree which might be used for unrelated purposes;
knowing~$b$ would enable the third party to unblind the derived public key~\pkp to reveal the root public seed~\pkbl.
Instead, the third party may receive $k$ and~\aux and recompute steps 3-5 of \algdpk with $\pkbl=\pkbd$ and~$b=1$,
This enables the delegating party to share a derived public \ALGNAME seed with a subordinate party without having to disclose~$b$.
This is desirable if the delegating party does not wish to reveal
the relationship with other keys in an HDK tree which might be used for unrelated purposes;
knowing~$b$ would enable the subordinate party to unblind the derived public key~\pkp to reveal the root public seed~\pkbl.
Instead, the subordinate party may determine $k$ and~\aux and compute steps 3--5 of \algdpk with $\pkbl=\pkbd$ and~$b=1$,
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll cherry-pick parts of this but keep the overall structure the same. Thanks!

the identity blinding factor,
and thus be convinced that \pkp was generated from the claimed public seed~\pkbd.

Expand Down