Skip to content

Commit 62750da

Browse files
committed
Make it clear that hash separation is an advisory for non-aggregatable signatures
1 parent e5a1675 commit 62750da

File tree

1 file changed

+5
-2
lines changed
  • substrate/primitives/core/src

1 file changed

+5
-2
lines changed

substrate/primitives/core/src/pop.rs

+5-2
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,14 @@ where
3232
/// produce a "signature" with unique hash context that should
3333
/// never be used in other signatures. This proves that
3434
/// that the secret key is known to the prover. While prevent
35-
/// malicious actors to trick an honest party to sign their
36-
/// public key to mount a rogue key attack (See: Section 4.3 of
35+
/// malicious actors to trick an honest party to sign an
36+
/// unpossessed public key resulting in a rogue key attack (See: Section 4.3 of
3737
/// - Ristenpart, T., & Yilek, S. (2007). The power of proofs-of-possession: Securing multiparty
3838
/// signatures against rogue-key attacks. In , Annual {{International Conference}} on the
3939
/// {{Theory}} and {{Applications}} of {{Cryptographic Techniques} (pp. 228–245). : Springer.
40+
/// While we enforce hash context separation at the library level in aggregatable schemes, it
41+
/// remains as an advisory for the default implementation using signature API used for
42+
/// non-aggregatable schemes
4043
#[cfg(feature = "full_crypto")]
4144
fn generate_proof_of_possession(&mut self) -> Self::Signature {
4245
let pub_key_as_bytes = self.public().to_raw_vec();

0 commit comments

Comments
 (0)