Design Effective OS to Manage Blockchain Networks
Description
Cello is aiming to resolve the following challenges, 1) Facilitate creation of blockchain network,
can help user without blockchain background to setup their network quickly. 2) Security, need
to implement mechanism to protect key pairs. 3) Cross organization communication, can connect
blockchain networks among multiple organizations. This project targets to design and implement
a practical operational system equipping with functionalities to solve above challenges, based on
Hyperledger Cello code base.
Additional Information
Project repo, Available TODO features, Governing module
Learning Objectives
- Work closely with community experts and developers to learn the open-source culture and skills
- Advanced knowledge inside the blockchain and distributed ledger areas
- Hand-on experience with web application design and implement
Expected Outcome
- Implemented new governing module to join blockchain networks together
- Advanced capabilities to manage blockchain networks, including life-cycle, chaincode, permission
- Other open objects that align with the existing roadmap
Relation to Hyperledger
Hyperledger Cello
Education Level
Graduate student preferred
Skills
- Interested with blockchain (Hyperledger Fabric) and distributed system
- Back end development skills including Python, Node.Js. Experience with Django is a bonus
- Familiar with Cloud, Docker or Kubernetes is a bonus
- Front end skills including javascripts/css/html, experience with react is a bonus
Future plans
Contribution from this project will be merged to Cello's master branch, participant can keep contributing to the Cello community.
Preferred Hours and Length of Internship
Part-time (20 hours a week for 24 weeks starting in summer and ending in fall)
Mentor(s) Names and Contact Info
Baohua Yang, Haitao Yue, Tong Li, Jiahao chen
Project Plan and Report
Project Presentation :-
Project Challenges to be Solved
- Facilitate creation of blockchain network, can help user without blockchain background to setup their network quickly.
- Security, need to implement mechanism to protect key pairs.
- Cross organization communication, can connect blockchain networks among multiple organizations.
Project Deliverables
- API development
- Adding different agents for deployment of nodes
- Web Front-End Development for User Friendly Interface
- Unit Tests for maintaining code health
- Documentation for the APIs made and their metadata
Project Issues to be done
Phase 1
- Enhancement of Node API
- Implementation of `Peer node` API
- Creating operator for Kubernetes using operator-framework
Phase 2
- Implementation of other APIs
- Creating the Operator Controllers for CA
- Creating Operator Controllers for Peer and Orderer
Phase 3
- Handling the Certificates for the Peer and Orderer Nodes
- Refining of Custom Resource Specifications and Controllers
- Creation of Agent for Kubernetes Operator which handles the parts of frontend
Phase 4
- Deploying Agent images on Docker Hub
- Integration with the API / Dashboard
- Writing Specifications and User Documentation
Methodology
- Quarter basis review according to Hyperledger Internship Programme schedule
- Internal standup and updates:
- Weekly meetings for planning on tasks and problem resolving
- Using Hyperledger Chat for quick discussions
Mentee Name and Contact Info
- Manank Jain manankpatni@gmail.com