View Issue Details

IDProjectCategoryView StatusLast Update
0009406Talerdocumentationpublic2026-02-09 09:44
Reporteroec Assigned Tomikolai Resolution deadline
ImplementerReviewer 
Release signed byDeployed by 
VerifierCommunicator 
Data protection authority notification requiredNo  
CSIRT notification requiredNo  
Estimated effort (hours)Actual effort (hours)0 
Fast-trackNo
Work packagenone
PrioritynormalSeveritytextReproducibilityalways
Status implementingResolutionopen 
Product Versiongit (master) 
Target Versionpost-1.0 
Summary0009406: documentation for various hash codes are lacking details
DescriptionIn the "Cryptographic primitives" section
https://docs.taler.net/core/api-common.html#cryptographic-primitives
we find the type declarations of various hashes used in the Taler code base, f.e.

```
struct TALER_BlindedCoinHash {
  struct GNUNET_HashCode hash;
};

struct TALER_CoinPubHash {
  struct GNUNET_HashCode hash;
};

struct TALER_OutputCommitmentHash {
  struct GNUNET_HashCode hash;
};
```
These and others lack information _how_ to compute those hashes, which i quite relevant for their validity.
F.e. according to the implementation, the value for `TALER_BlindedCoinHash` is constructed involving the hash of the denomination's public key and the a computed blinded hash value of the coin's planchet.

We should be explicit about what data is required and how exactly that data is used to compute all those hash values in the documentation.
 
Additional InformationThe header file `include/taler_crypto_lib.h` is not helpful, neither, f.e.

```
/**
 * Hash used to represent a commitment to a blinded
 * coin, i.e. the hash of the envelope.
 */
struct TALER_BlindedCoinHashP
{
  /**
   * Actual hash value.
   */
  struct GNUNET_HashCode hash;
};
```
TagsNo tags attached.

Required notifications

Address or linkRemarkAdded byNotifiedActions

Relationships

related to 0009407 implementingmikolai definition for various hash codes are lacking details 

Activities

There are no notes attached to this issue.

Issue History

Date ModifiedUsernameFieldChange
2024-12-19 13:31oecNew Issue
2024-12-19 13:31oecStatusnew => assigned
2024-12-19 13:31oecAssigned To => Stefan
2024-12-19 13:35oecIssue cloned: 0009407
2024-12-19 13:36oecRelationship addedrelated to 0009407
2024-12-19 13:36oecAssigned ToStefan => oec
2024-12-29 23:04Christian GrothoffTarget Version1.0 => 1.0 stretch goals
2025-04-17 20:21Christian GrothoffTarget Version1.0 stretch goals => post-1.0
2025-05-08 20:44Christian GrothoffAssigned Tooec =>
2025-05-08 20:44Christian GrothoffSeverityminor => text
2025-05-08 20:44Christian GrothoffStatusassigned => implementing
2026-02-09 09:44Christian GrothoffAssigned To => mikolai
2026-02-09 09:44Christian GrothoffStatusimplementing => assigned
2026-11-03 07:21Statusassigned => implementing