Platform Technical Overview

This section describes a technical overview of the GoChain platform, particularly when it comes to working with Hyperledger Fabric v2.5.0, v3.0.0 and above.

NOTE: Hyperledger Besu technical details are in progress and will be added in a future release.

This section describes the system's inherent characteristics and design principles, providing insight into its intended use, tooling, and architecture.

Hyperledger Fabric Compatibility

The GoChain platform supports Hyperledger Fabric v2.5.x and v3.0.0 versions. The platform is designed to leverage the latest features and improvements available in these versions:

  • Fabric v2.5.x+: Full support for the new chaincode lifecycle, improved performance, and enhanced security features
  • Fabric v3.0.0+: Support for Edwards-curve cryptography and channel-lifecycle improvements
    • BFT Ordering: Support for Byzantine Fault Tolerant (BFT) is not yet available.
  • Forward Compatibility: The platform is designed to work with future Fabric versions as they become available

Peer and Orderer Lifecycle Management

The GoChain orchestration system provides comprehensive lifecycle management capabilities:

  • Initialization: Automatic initialization of peer and orderer nodes as part of network setup
  • Restart Management: Intelligent restart procedures that maintain network consistency
  • Enrollment: Automated enrollment of peers and orderers during network lifecycle operations
  • State Management: Monitoring and management of node states throughout their operational lifecycle

Certificate Infrastructure

The platform provides flexible certificate management to support various organizational needs:

  • External PKI Support: Full compatibility with certificates issued by external Public Key Infrastructures (PKIs)
  • OpenSSL Integration: Support for certificates created using OpenSSL tools
  • Fabric-CA External Certification: Integration with Fabric-CA's External Certification feature for enterprise-grade certificate management
  • Test Environment Support: Self-signed certificates are supported for test and homologation environments
  • Certificate Lifecycle: Automated certificate rotation and renewal capabilities

Asymmetric Cryptography

The platform supports modern cryptographic standards aligned with Hyperledger Fabric's evolution:

  • Edwards-curve Cryptography: Full support for Edwards-curve cryptography (e.g., Ed25519) in Fabric networks v3.x and higher
  • Legacy Support: Continued support for traditional cryptographic algorithms in older Fabric versions
  • Standards Compliance: Implementation follows modern cryptographic standards adopted in Fabric v3+
  • Performance Benefits: Takes advantage of the improved performance characteristics of Edwards-curve cryptography

Event Monitoring

The GoChain platform includes comprehensive event monitoring capabilities:

  • Chaincode Lifecycle Events: Monitoring of approve and commit events during chaincode deployment
  • Network Coordination: Event-driven coordination between organizations during network operations
  • Real-time Notifications: Immediate notification of important network events to relevant stakeholders

Channel Operations

Channel management is handled programmatically to support complex multi-organizational scenarios:

  • Automated Channel Creation: Programmatic creation of channels with proper governance
  • Multi-Organization Support: Coordination of channel operations across multiple organizations
  • Smart Contract Execution: Channels are optimized for efficient smart contract execution
  • Dynamic Management: Runtime modification of channel configurations as needed

Chaincode Lifecycle in Go

The platform provides comprehensive support for Go-based smart contracts:

  • Install Operations: Automated installation of chaincode packages on designated peers
  • Approval Workflows: Streamlined approval processes that coordinate between organizations
  • Initialization: Proper initialization of chaincode with required parameters
  • Upgrade Management: Seamless upgrade flows that maintain data consistency
  • Version Control: Support for multiple chaincode versions with proper lifecycle management

Private Data Support

Private data collections are fully supported with dynamic management capabilities:

  • Collection Instantiation: Automated creation and configuration of private data collections
  • Access Control: Dynamic configuration of access control policies across organizations
  • Runtime Updates: Capability to modify collection configurations during runtime
  • Cross-Organization Coordination: Proper synchronization of private data policies between organizations

External API Integration

The platform exposes comprehensive APIs for external system integration:

  • REST API Endpoints: Well-documented REST APIs for transaction submission and state queries
  • Transaction Submission: Secure endpoints for submitting transactions to the network
  • State Queries: Efficient querying of blockchain state with proper access controls
  • Third-Party Integration: Designed to support integration with existing enterprise systems through REST APIs

Administrative Interfaces

Multiple interfaces are provided for different administrative needs:

  • API-Based Administration: RESTful APIs for programmatic administration of network components
  • Web-Based Management: User-friendly web interfaces for common administrative tasks

Node-Level Operations

The following operations are accessible through various administrative interfaces:

  • Peer Management: Initialization, configuration, and monitoring of peer nodes
  • Orderer Management: Setup and management of orderer nodes
  • Channel Setup: Creation, configuration, and management of channels
  • Chaincode Management: Complete lifecycle management of smart contracts

This information helps users understand the capabilities and expectations of the GoChain platform when planning and implementing their blockchain networks.