Since tag v0.4.0 (January 2025), Panurus has undergone a significant architectural and functional evolution, comprising over 850 commits. The evolution can be summarized in several key areas:
Panurus has transitioned toward a more modular and robust internal driver architecture. A major shift involved moving core driver interfaces and shared logic into the token/core/common/driver package. This decoupling allows for more uniform driver implementations and simplifies the introduction of new token technologies.
zkatdlog/noghOne of the most substantial additions is the nogh (No Graph Hiding) variant of the zkatdlog driver. This variant represents an optimization and refinement of the zero-knowledge token logic, providing a more efficient way to handle private transactions by omitting graph-hiding properties.
See also: DLog w/o Graph Hiding (NOGH) Driver
nogh driver explicitly supports token upgradability.
nogh driver. The driver automatically generates Pedersen commitments and an “Upgrade Witness” on the fly, allowing for transparent migration during standard transfer operations. Criteria for compatibility include format inclusion in the driver’s supported list and precision alignment (e.g., legacy precision $\le$ current max precision).upgrade service that handles challenge-response protocols and proof verification to ensure supply consistency during migration.nogh driver introduces a refined data model for tokens and metadata. Tokens are represented as Pedersen commitments to the token type, value, and blinding factor. Newly defined protocol buffers support this optimized model.
nogh driver logic residing in the v1 sub-package (token/core/zkatdlog/nogh/v1). This versioning ensures that future protocol changes can be introduced without breaking backward compatibility for existing ledger data.bls12_381_bbs curve support and improved cryptographic primitives are integrated into the v1 implementation.v1/audit) provides necessary compliance tools for private token systems.A major security enhancement introduced Protocol V2 for token request signatures, addressing critical vulnerabilities in the original implementation:
Backward Compatibility: Protocol V1 remains supported for existing deployments while Protocol V2 is recommended for all new implementations.
Panurus now implements Compressed Sigma Protocol-Based Range Proofs, providing significant performance improvements for zero-knowledge range validation:
ExecutorProvider, WorkerPoolExecutor, and UnboundedExecutor allows fine-tuned control over proof generation and verification parallelism.RangeCorrectnessProver, RangeCorrectnessVerifier) enabling flexible performance tuning.The Token Transaction service, a core component for orchestrating token lifecycles, has been significantly refactored:
dep/ sub-package in the TTX service enables better dependency management, reducing circular dependencies and drastically improving unit testability.token/services/ttx/multisig.token/services/ttx/finality package, including a new TTXRecoveryHandler for synchronous transaction recovery.Panurus’s foundational services have been matured:
SearchDirection support in QueryTransactionsParams for flexible result orderingSignificant investments in performance measurement and optimization:
cmd/benchmarking/) for running comprehensive performance tests and generating detailed reports.IssueService and AuditorService to measure end-to-end performance.Benchmark Service: New dedicated service (token/services/benchmark) providing a flexible framework for performance testing with configurable workloads and detailed reporting.
Panurus has seen a major push in both testing infrastructure and documentation:
token/services/tokens: 80%+ coveragetoken/services/auditor: 0% → 97.7% coveragetoken/services/certifier: 41% → 62% coveragetoken/services/network: 87% coveragetoken/services/ttx: Comprehensive coverage with new teststoken/services/nfttx: 80% coveragetoken/core/common/driver/mock, etc.) simplifies application testing and improves SDK maintainability.docs/ directory has been substantially populated with detailed guides on driver APIs, Panurus usage, architectural diagrams, and development best practices.integration/ tests have been expanded to cover new use cases, ensuring the stability of the evolved features.
Numerous critical bug fixes and security improvements:
IsValid checks with debug-level gating for better integrity verificationThe developer-facing Token API has been refined for better usability, consistency, and cross-version stability:
WalletManager, Vault, TMS, etc.) now accept a context.Context. This enables standard Go practices for cancellation, timeouts, and request-scoped tracing.opts.go and the functional options pattern (e.g., WithTMSID, WithDuration) provides a consistent and extensible way to configure API calls.TokensService: A high-level service for advanced token operations, including de-obfuscation and support for the new in-place upgrade challenge/proof protocol.ManagementService now performs more thorough eager initialization of its sub-services and supports dynamic cache clearing via the Update mechanism, facilitating seamless public parameter rotations.Vault and QueryEngine have been expanded with new methods like GetTokenOutputs and WhoDeletedTokens, providing deeper insights into the token lifecycle on the ledger.Request structures now leverage versioned Protobuf messages internally, ensuring that transaction blueprints created by one node version can be understood by others.IssuerWallet, AuditorWallet, CertifierWallet, OwnerWallet) now return errors instead of panicking, enabling better error handling and recovery.Clone Support: Added Clone() methods for safe copying of critical data structures.
The evolution since v0.4.0 marks Panurus’s transition into a mature, production-ready, and feature-rich framework. The focus on security (Protocol V2), reliability (Recovery Service), performance (Compressed Range Proofs, Benchmarking), and quality (80%+ test coverage) has solidified its role as a robust tool for building tokenized applications on Hyperledger Fabric. The architectural clarity, optimized privacy-preserving drivers, and comprehensive developer experience through documentation and testability position Panurus for continued growth and adoption.