|
purify
C++ Purify implementation with native circuit and BPP support
|
Move-only prepared nonce bundled with its public statement proof. More...
#include <legacy.hpp>
Public Member Functions | |
| PreparedNonceWithProof (const PreparedNonceWithProof &)=delete | |
| PreparedNonceWithProof & | operator= (const PreparedNonceWithProof &)=delete |
| PreparedNonceWithProof (PreparedNonceWithProof &&other) noexcept=default | |
| PreparedNonceWithProof & | operator= (PreparedNonceWithProof &&other) noexcept=default |
| ~PreparedNonceWithProof ()=default | |
| const Nonce & | public_nonce () const noexcept |
| Returns the public nonce proved by this bundle. | |
| const NonceProof & | proof () const noexcept |
| Returns the public nonce proof carried by this bundle. | |
| Scalar32 | scalar () const |
| Explicitly exports the secret nonce scalar from the wrapped prepared nonce. | |
| Result< ProvenSignature > | sign_message (const SecretKey &secret, std::span< const unsigned char > message, purify_secp_context *secp_context) && |
| Consumes this message-bound prepared proof bundle and signs the message. | |
| Result< ProvenSignature > | sign_topic_message (const SecretKey &secret, std::span< const unsigned char > message, purify_secp_context *secp_context) && |
| Consumes this topic-bound prepared proof bundle and signs the message. | |
Static Public Member Functions | |
| static PreparedNonceWithProof | from_parts (PreparedNonce prepared, NonceProof proof) |
| Bundles a prepared nonce with its matching public nonce proof. | |
The proof is always present and the secret nonce scalar remains non-serializable. This avoids forcing callers to branch on a maybe-present proof after the type has already crossed an API boundary.
Definition at line 376 of file legacy.hpp.
|
delete |
|
defaultnoexcept |
|
default |
|
static |
| prepared | The prepared nonce carrying the secret scalar. |
| proof | The public nonce proof matching prepared. |
Definition at line 358 of file legacy.cpp.
|
delete |
|
defaultnoexcept |
|
inlinenoexcept |
Definition at line 397 of file legacy.hpp.
|
inlinenoexcept |
Definition at line 389 of file legacy.hpp.
References purify::puresign::PreparedNonce::public_nonce().
|
inline |
Definition at line 405 of file legacy.hpp.
References purify::puresign::PreparedNonce::scalar().
| Result< ProvenSignature > purify::puresign::PreparedNonceWithProof::sign_message | ( | const SecretKey & | secret, |
| std::span< const unsigned char > | message, | ||
| purify_secp_context * | secp_context | ||
| ) | && |
| secret | The owned secret corresponding to the prepared nonce. |
| message | The message that must match the nonce binding. |
Definition at line 362 of file legacy.cpp.
References purify::puresign::NonceProof::nonce, PURIFY_ASSIGN_OR_RETURN, purify::unexpected_error(), and purify::puresign::Nonce::xonly.
| Result< ProvenSignature > purify::puresign::PreparedNonceWithProof::sign_topic_message | ( | const SecretKey & | secret, |
| std::span< const unsigned char > | message, | ||
| purify_secp_context * | secp_context | ||
| ) | && |
| secret | The owned secret corresponding to the prepared nonce. |
| message | The message to sign. |
Definition at line 375 of file legacy.cpp.
References purify::puresign::NonceProof::nonce, PURIFY_ASSIGN_OR_RETURN, purify::unexpected_error(), and purify::puresign::Nonce::xonly.