Index
All Classes and Interfaces|All Packages
A
- Algorithm - Search tag in class xyz.tcheeric.cashu.voucher.domain.VoucherFingerprint
- Section
- A warrant attests a SALE, not a voucher - Search tag in class xyz.tcheeric.cashu.voucher.domain.IssuanceWarrant
- Section
B
- BackingStrategy - Enum Class in xyz.tcheeric.cashu.voucher.domain
-
Backing strategy for voucher token amounts.
C
- canBeRedeemed() - Method in enum class xyz.tcheeric.cashu.voucher.domain.VoucherStatus
-
Checks if this status allows the voucher to be redeemed.
- carriesSignature(WellKnownSecret) - Static method in class xyz.tcheeric.cashu.voucher.domain.UnlockedVoucherBlob
-
Whether this secret is an unlocked voucher whose blob names an issuer signature.
- compute(String, String, String) - Method in class xyz.tcheeric.cashu.voucher.domain.VoucherFingerprint
-
Computes the fingerprint from raw voucher components.
- compute(VoucherSecret) - Method in class xyz.tcheeric.cashu.voucher.domain.VoucherFingerprint
-
Computes the fingerprint for a voucher secret.
- compute(SignedVoucher) - Method in class xyz.tcheeric.cashu.voucher.domain.VoucherFingerprint
-
Computes the fingerprint for a signed voucher.
- coversFaceValue(long, long) - Static method in class xyz.tcheeric.cashu.voucher.domain.IssuanceWarrant
-
Whether a warranted sale total covers a coupon's face value.
- create(UUID, String, String, long, Long, String, BackingStrategy, double, int, String, String) - Static method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
-
Creates a signed voucher with all voucher details.
- createSigned(P2PKVoucherSecret, String, String) - Static method in class xyz.tcheeric.cashu.voucher.domain.SignedLockedVoucher
-
Signs a locked voucher and wraps the result.
- createSigned(VoucherSecret, String, String) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherSignatureService
-
Creates a signed voucher by signing the secret and setting the signature/pubkey tags.
- Cryptographic Details - Search tag in class xyz.tcheeric.cashu.voucher.domain.VoucherSignatureService
- Section
- CURRENT - Enum constant in enum class xyz.tcheeric.cashu.voucher.domain.VoucherCanonicalBytes.NumericTagForm
D
- DELEGATED - Enum constant in enum class xyz.tcheeric.cashu.voucher.domain.IssuanceWarrant.Form
-
A terminal credential the stall issued, and can burn, signed the digest.
E
- equals(Object) - Method in class xyz.tcheeric.cashu.voucher.domain.SignedLockedVoucher
- equals(Object) - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
- EXPIRED - Enum constant in enum class xyz.tcheeric.cashu.voucher.domain.VoucherStatus
-
Voucher's expiry time has passed without being redeemed.
- expiresAt(WellKnownSecret) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherMetadata
-
Expiry as a Unix timestamp in seconds, or
nullwhen the voucher does not expire.
F
- failure(String) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherValidator.ValidationResult
-
Creates a failed validation result with a single error.
- failure(List<String>) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherValidator.ValidationResult
-
Creates a failed validation result with multiple errors.
- FIXED - Enum constant in enum class xyz.tcheeric.cashu.voucher.domain.BackingStrategy
-
Fixed minimal sat backing for non-splittable vouchers.
- fromCbor(byte[]) - Static method in class xyz.tcheeric.cashu.voucher.domain.util.VoucherSerializationUtils
-
Deserializes CBOR bytes to a map.
- fromWire(String) - Static method in enum class xyz.tcheeric.cashu.voucher.domain.IssuanceWarrant.Form
-
Parses a wire token, or throws.
G
- getBackingStrategy() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
- getDescription() - Method in enum class xyz.tcheeric.cashu.voucher.domain.VoucherStatus
-
Returns a human-readable description of this status.
- getErrorMessage() - Method in class xyz.tcheeric.cashu.voucher.domain.VoucherValidator.ValidationResult
-
Returns a formatted string of all errors.
- getErrors() - Method in class xyz.tcheeric.cashu.voucher.domain.VoucherValidator.ValidationResult
-
Returns an unmodifiable view of the errors list.
- getExpiresAt() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
- getFaceDecimals() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
- getFaceValue() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
- getIssuanceRatio() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
- getIssuerId() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
- getIssuerPublicKey() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
-
Returns the issuer public key.
- getIssuerSignature() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
-
Returns the issuer signature as bytes.
- getLockKey() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedLockedVoucher
-
The key a spender must produce a witness signature for, hex-encoded.
- getMemo() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
- getSecret() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedLockedVoucher
- getUnit() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
- getVoucherId() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
H
- hasCanonicalNumericTags(WellKnownSecret) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherCanonicalBytes
-
Whether every numeric tag is already written in its canonical form.
- hasFineGrainedSplits() - Method in enum class xyz.tcheeric.cashu.voucher.domain.BackingStrategy
-
Returns true if this strategy supports fine-grained splits.
- hashCode() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedLockedVoucher
- hashCode() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
I
- isExpired() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedLockedVoucher
- isExpired() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
-
Checks if this voucher has expired.
- isExpired(WellKnownSecret) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherMetadata
-
Whether the expiry has passed.
- isSigned(WellKnownSecret) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherMetadata
-
Whether both issuer fields are present.
- isSplittable() - Method in enum class xyz.tcheeric.cashu.voucher.domain.BackingStrategy
-
Returns true if this strategy allows splitting.
- IssuanceWarrant - Class in xyz.tcheeric.cashu.voucher.domain
-
What, outside the issuing service, authorised an issuance.
- IssuanceWarrant.Form - Enum Class in xyz.tcheeric.cashu.voucher.domain
-
The four shapes a warrant can take.
- ISSUED - Enum constant in enum class xyz.tcheeric.cashu.voucher.domain.VoucherStatus
-
Voucher has been issued and published to the Nostr ledger.
- issuerId(WellKnownSecret) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherMetadata
-
The issuing merchant's identifier, or
null. - issuerPublicKey(WellKnownSecret) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherMetadata
-
The issuer's public key, or
nullwhen unset. - issuerSignature(WellKnownSecret) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherMetadata
-
The issuer's signature over the canonical bytes, or
nullwhen unsigned. - isTerminal() - Method in enum class xyz.tcheeric.cashu.voucher.domain.VoucherStatus
-
Checks if this status represents a terminal state.
- isValid() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedLockedVoucher
-
Signed and unexpired.
- isValid() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
-
Checks if this voucher is fully valid (signature valid AND not expired).
- isValid(String) - Method in class xyz.tcheeric.cashu.voucher.domain.VoucherFingerprint
-
Validates that a fingerprint matches the expected format.
- isValid(SignedVoucher) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherValidator
-
Quick check if a voucher is valid (no detailed errors).
- isVoucherCarrying(WellKnownSecret) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherMetadata
-
Whether this kind carries voucher metadata at all.
K
- Key Format - Search tag in class xyz.tcheeric.cashu.voucher.domain.VoucherSignatureService
- Section
M
- MERCHANT - Enum constant in enum class xyz.tcheeric.cashu.voucher.domain.IssuanceWarrant.Form
-
The stall itself signed the sale digest.
- MINIMAL - Enum constant in enum class xyz.tcheeric.cashu.voucher.domain.BackingStrategy
-
Low constant sat backing for occasional splits.
- Model B Constraint - Search tag in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
- Section
- Model B Constraints - Search tag in enum class xyz.tcheeric.cashu.voucher.domain.VoucherStatus
- Section
N
- NONE - Enum constant in enum class xyz.tcheeric.cashu.voucher.domain.IssuanceWarrant.Form
-
Nothing outside the issuing service authorised this, and the issuer has SIGNED that.
O
- of(WellKnownSecret) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherCanonicalBytes
-
Renders the canonical signing bytes for a voucher secret.
- of(WellKnownSecret, VoucherCanonicalBytes.NumericTagForm) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherCanonicalBytes
-
Renders the canonical signing bytes, choosing how numeric values are written.
P
- PROCESSOR - Enum constant in enum class xyz.tcheeric.cashu.voucher.domain.IssuanceWarrant.Form
-
A payment processor moved money into the stall's own account.
- PROPORTIONAL - Enum constant in enum class xyz.tcheeric.cashu.voucher.domain.BackingStrategy
-
Proportional sat backing scaled to face value for precise splits.
R
- read(WellKnownSecret) - Static method in class xyz.tcheeric.cashu.voucher.domain.UnlockedVoucherBlob
-
The voucher described by an unlocked voucher secret's blob, or
null. - REDEEMED - Enum constant in enum class xyz.tcheeric.cashu.voucher.domain.VoucherStatus
-
Voucher has been successfully redeemed by the merchant.
- REVOKED - Enum constant in enum class xyz.tcheeric.cashu.voucher.domain.VoucherStatus
-
Voucher has been revoked by the issuer before redemption.
S
- saleDigest(String, long, int, String, String) - Static method in class xyz.tcheeric.cashu.voucher.domain.IssuanceWarrant
-
The digest a warrant signs: one sale, by one stall, for one total.
- Security Properties - Search tag in class xyz.tcheeric.cashu.voucher.domain.VoucherFingerprint
- Section
- sign(WellKnownSecret, String) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherSignatureService
-
Signs a voucher secret with an issuer's private key using Schnorr signatures.
- Signature Format - Search tag in class xyz.tcheeric.cashu.voucher.domain.VoucherSignatureService
- Section
- SignedLockedVoucher - Class in xyz.tcheeric.cashu.voucher.domain
-
A signed voucher that is also P2PK-locked.
- SignedLockedVoucher(P2PKVoucherSecret) - Constructor for class xyz.tcheeric.cashu.voucher.domain.SignedLockedVoucher
-
Wraps a secret that already carries its signature and public key.
- SignedVoucher - Class in xyz.tcheeric.cashu.voucher.domain
-
A voucher secret with an issuer's cryptographic signature.
- SignedVoucher(VoucherSecret) - Constructor for class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
-
Creates a signed voucher from a VoucherSecret that already has signature and public key set.
- SignedVoucher(VoucherSecret, byte[], String) - Constructor for class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
-
Creates a signed voucher from components (for deserialization compatibility).
- Status Descriptions - Search tag in enum class xyz.tcheeric.cashu.voucher.domain.VoucherStatus
- Section
- Strategy Comparison - Search tag in enum class xyz.tcheeric.cashu.voucher.domain.BackingStrategy
- Section
- success() - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherValidator.ValidationResult
-
Creates a successful validation result.
T
- The ceiling is also why splits keep working - Search tag in class xyz.tcheeric.cashu.voucher.domain.IssuanceWarrant
- Section
- The kind is read from the secret - Search tag in class xyz.tcheeric.cashu.voucher.domain.VoucherCanonicalBytes
- Section
- The lock is not advisory - Search tag in class xyz.tcheeric.cashu.voucher.domain.SignedLockedVoucher
- Section
- Thread Safety - Search tag in class xyz.tcheeric.cashu.voucher.domain.VoucherSignatureService
- Section
- Thread Safety - Search tag in class xyz.tcheeric.cashu.voucher.domain.VoucherValidator
- Section
- toCbor(Map<String, Object>) - Static method in class xyz.tcheeric.cashu.voucher.domain.util.VoucherSerializationUtils
-
Serializes a map to CBOR bytes in canonical form.
- toString() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedLockedVoucher
- toString() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
-
Returns a string representation for debugging.
- toString() - Method in class xyz.tcheeric.cashu.voucher.domain.VoucherValidator.ValidationResult
- toStringWithMetadata() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
-
Returns a detailed string representation including full secret metadata.
- TRUNCATED_TO_LONG - Enum constant in enum class xyz.tcheeric.cashu.voucher.domain.VoucherCanonicalBytes.NumericTagForm
U
- UnlockedVoucherBlob - Class in xyz.tcheeric.cashu.voucher.domain
-
Reads the voucher inside an UNLOCKED voucher secret's
datablob. - Usage Examples - Search tag in class xyz.tcheeric.cashu.voucher.domain.VoucherValidator
- Section
V
- validate(SignedVoucher) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherValidator
-
Validates a signed voucher.
- validateExpiryOnly(SignedVoucher) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherValidator
-
Validates just the expiry of a voucher.
- validateSignatureOnly(SignedVoucher) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherValidator
-
Validates just the cryptographic signature of a voucher.
- validateWithIssuer(SignedVoucher, String) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherValidator
-
Validates a signed voucher and checks that it was issued by the expected issuer.
- ValidationResult() - Constructor for class xyz.tcheeric.cashu.voucher.domain.VoucherValidator.ValidationResult
- Validation Rules - Search tag in class xyz.tcheeric.cashu.voucher.domain.VoucherValidator
- Section
- valueOf(String) - Static method in enum class xyz.tcheeric.cashu.voucher.domain.BackingStrategy
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class xyz.tcheeric.cashu.voucher.domain.IssuanceWarrant.Form
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class xyz.tcheeric.cashu.voucher.domain.VoucherCanonicalBytes.NumericTagForm
-
Returns the enum constant of this class with the specified name.
- valueOf(String) - Static method in enum class xyz.tcheeric.cashu.voucher.domain.VoucherStatus
-
Returns the enum constant of this class with the specified name.
- values() - Static method in enum class xyz.tcheeric.cashu.voucher.domain.BackingStrategy
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class xyz.tcheeric.cashu.voucher.domain.IssuanceWarrant.Form
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class xyz.tcheeric.cashu.voucher.domain.VoucherCanonicalBytes.NumericTagForm
-
Returns an array containing the constants of this enum class, in the order they are declared.
- values() - Static method in enum class xyz.tcheeric.cashu.voucher.domain.VoucherStatus
-
Returns an array containing the constants of this enum class, in the order they are declared.
- Verification - Search tag in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
- Section
- verify() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedLockedVoucher
-
Whether the issuer's signature checks out over this voucher's canonical bytes.
- verify() - Method in class xyz.tcheeric.cashu.voucher.domain.SignedVoucher
-
Verifies the cryptographic signature of this voucher.
- verify(WellKnownSecret) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherSignatureService
-
Verifies a voucher secret's signature using the signature and public key from its tags.
- verify(WellKnownSecret, byte[], String) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherSignatureService
-
Verifies a voucher signature using the issuer's public key.
- verifyMerchant(String, long, int, String, String, String, long) - Static method in class xyz.tcheeric.cashu.voucher.domain.IssuanceWarrant
-
Verifies a
merchantwarrant offline, against the stall's own key. - VoucherCanonicalBytes - Class in xyz.tcheeric.cashu.voucher.domain
-
Renders the exact bytes an issuer signature commits to.
- VoucherCanonicalBytes.NumericTagForm - Enum Class in xyz.tcheeric.cashu.voucher.domain
-
How numeric tag values are rendered.
- VoucherFingerprint - Class in xyz.tcheeric.cashu.voucher.domain
-
Cryptographic fingerprinting for Cashu vouchers.
- VoucherFingerprint() - Constructor for class xyz.tcheeric.cashu.voucher.domain.VoucherFingerprint
- voucherId(WellKnownSecret) - Static method in class xyz.tcheeric.cashu.voucher.domain.VoucherMetadata
-
The voucher id, from wherever this kind keeps it, or
null. - VoucherMetadata - Class in xyz.tcheeric.cashu.voucher.domain
-
Reads voucher metadata from either kind that carries it.
- VoucherSerializationUtils - Class in xyz.tcheeric.cashu.voucher.domain.util
-
Utility class for canonical CBOR serialization of voucher data.
- VoucherSignatureService - Class in xyz.tcheeric.cashu.voucher.domain
-
Service for secp256k1/Schnorr signature generation and verification of voucher secrets.
- VoucherStatus - Enum Class in xyz.tcheeric.cashu.voucher.domain
-
Represents the lifecycle status of a voucher.
- VoucherValidator - Class in xyz.tcheeric.cashu.voucher.domain
-
Validates vouchers for correctness and authenticity.
- VoucherValidator.ValidationResult - Class in xyz.tcheeric.cashu.voucher.domain
-
Result of voucher validation containing status and error messages.
W
- What it does not do - Search tag in class xyz.tcheeric.cashu.voucher.domain.UnlockedVoucherBlob
- Section
- Why a separate type rather than widening SignedVoucher - Search tag in class xyz.tcheeric.cashu.voucher.domain.SignedLockedVoucher
- Section
- Why a signature is not enough on its own - Search tag in xyz.tcheeric.cashu.voucher.domain.VoucherCanonicalBytes.hasCanonicalNumericTags(WellKnownSecret)
- Section
- Why the tag key decides what is numeric - Search tag in class xyz.tcheeric.cashu.voucher.domain.VoucherCanonicalBytes
- Section
- Why this exists - Search tag in class xyz.tcheeric.cashu.voucher.domain.IssuanceWarrant
- Section
- Why this exists, and why here - Search tag in class xyz.tcheeric.cashu.voucher.domain.UnlockedVoucherBlob
- Section
- wire() - Method in enum class xyz.tcheeric.cashu.voucher.domain.IssuanceWarrant.Form
-
The lowercase token that appears on the wire.
X
- xyz.tcheeric.cashu.voucher.domain - package xyz.tcheeric.cashu.voucher.domain
- xyz.tcheeric.cashu.voucher.domain.util - package xyz.tcheeric.cashu.voucher.domain.util
All Classes and Interfaces|All Packages