taler-docs

Documentation for GNU Taler components, APIs and protocols
Log | Files | Refs | README | LICENSE

commit 83981154cfe1a2c6359e0e2c14a77aac40499c70
parent da0086d56537f186914b4a47ec15952b1a3cf000
Author: Antoine A <>
Date:   Thu, 26 Feb 2026 16:07:47 +0100

dd80: improvement

Diffstat:
Mdesign-documents/080-short-wire-subject.rst | 16++++++----------
1 file changed, 6 insertions(+), 10 deletions(-)

diff --git a/design-documents/080-short-wire-subject.rst b/design-documents/080-short-wire-subject.rst @@ -146,12 +146,7 @@ The subject derivation must be deterministic and and use the entire coding space We will continue to support the current encoding for simple cases. -All subject derivation starts by making a hash of the key and metadata as follow: - -- SHA-512("RESERVE:ECDSA" + raw key bytes) -- SHA-512("KYC:SLH-DSA" + raw key bytes) - -TODO do we really nead SHA-512. Why not SHA-256 as we will never be able to fit all this entropy. +All subject derivation starts by making a hash of the key using SHA 256. Then the hash bits are encoded differently for each subject format: @@ -225,7 +220,7 @@ Taler Wire Transfer HTTP API account_pub: EddsaPublicKey; // Public key encoded inside the subject - authorization_key: EddsaPublicKey; + authorization_pub: EddsaPublicKey; // Signature of the account_pub public key using the authorization_key private key authorization_signature: EddsaSignature; @@ -242,8 +237,9 @@ Taler Wire Transfer HTTP API :http:statuscode:`400 Bad request`: Input data was invalid. :http:statuscode:`409 Conflict`: - * ``TALER_EC_BANK_UNSUPPORTED_FORMAT``: format is not supported. - * ``TALER_EC_BANK_DERIVATION_REUSE``: derived short subject is already used, you should retry using another key. + * ``TALER_EC_BANK_DUPLICATE_RESERVE_PUB_SUBJECT``: the same reserve public key is already registered, you should retry using another key. + * ``TALER_EC_BANK_UNSUPPORTED_SUBJECT_FORMAT``: format is not supported. + * ``TALER_EC_BANK_DERIVATION_REUSE``: derived subject is already used, you should retry using another key. * ``TALER_EC_BANK_BAD_SIGNATURE``: signature is invalid. @@ -291,7 +287,7 @@ Taler Wire Transfer HTTP API credit_amount: Amount; // 27-digit QR Reference number - reference: string; + qr_reference_number: string; } .. ts:def:: SubjectResult