panurus

FabToken

FabToken is a straightforward implementation of the Driver API. It prioritizes simplicity over privacy, storing all token transaction details openly on the ledger for anyone with access to view ownership and activity. FabToken exclusively supports long-term identities based on a standard X.509 certificate scheme, which reveals the owner’s enrollment ID in plain text. Tokens are directly represented on the ledger as JSON-formatted data based on the token.Token structure. The Owner field of this structure stores the identity information. The Identity Service handles the encoding/decoding of this field.

Public Parameters

The FabToken driver is configured via a set of public parameters that define the rules and constraints of the token system. These parameters are shared among all participants and are typically stored on the ledger within the Token Chaincode (TCC).

Structure

The PublicParams for FabToken (v1) include:

Management

Public parameters can be generated and inspected using the tokengen utility.

# Generate FabToken public parameters
tokengen gen fabtoken.v1 --auditors ./msp/auditor --issuers ./msp/issuer --output ./params

Protobuf Messages

FabToken uses Protocol Buffers for all serialized data structures, ensuring consistent communication between nodes and the ledger. The definitions are located in token/core/fabtoken/protos/.

Public Parameters (ftpp.proto)

The PublicParameters message defines the governance and constraints of the FabToken system:

Tokens and Actions (ftactions.proto)

Security

FabToken does not provide privacy for tokens or identities. The validator guarantees the following: