20#ifndef RIPPLE_PROTOCOL_SIGN_H_INCLUDED
21#define RIPPLE_PROTOCOL_SIGN_H_INCLUDED
23#include <xrpl/protocol/HashPrefix.h>
24#include <xrpl/protocol/PublicKey.h>
25#include <xrpl/protocol/STObject.h>
26#include <xrpl/protocol/SecretKey.h>
47 SF_VL const& sigField = sfSignature);
62 SF_VL const& sigField = sfSignature);
int addBitString(base_uint< Bits, Tag > const &v)
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
base_uint< 160, detail::AccountIDTag > AccountID
A 160-bit unsigned that uniquely identifies an account.
TypedField< STBlob > SF_VL
void finishMultiSigningData(AccountID const &signingID, Serializer &s)
Serializer startMultiSigningData(STObject const &obj)
Break the multi-signing hash computation into 2 parts for optimization.
bool verify(PublicKey const &publicKey, Slice const &m, Slice const &sig, bool mustBeFullyCanonical=true) noexcept
Verify a signature on a message.
Serializer buildMultiSigningData(STObject const &obj, AccountID const &signingID)
Return a Serializer suitable for computing a multisigning TxnSignature.
Buffer sign(PublicKey const &pk, SecretKey const &sk, Slice const &message)
Generate a signature for a message.
HashPrefix
Prefix for hashing functions.