Blockchain is developing so fast this year! From an unfamiliar concept at the beginning, it has now taken off in various industries. A single spark has the potential to start a prairie fire. I really hope I can have my own blockchain to practice with! But how can one person and one computer set up a blockchain environment that is so popular? It is not easy to say that I love you!
Don’t Worry! The editor has become obsessed with blockchain and smart contracts and can’t help himself! Now I will take you step by step to start from scratch and create your own blockchain in 5 minutes! ~
The SuperVessel platform developed by IBM China Research Institute provides a blockchain development and testing environment for blockchain enthusiasts and developers. Through this platform, users can create multi-node blockchains based on Hyperledger Fabric for free and super quickly, and play with smart contracts on their own chains.
----
0.
Preparation
All you need is your local browser!
1. Register an account
Access the public beta address of SuperVessel blockchain service: 8800/bc.
Click the Log in button in the upper right corner, click Register in the pop-up window, fill in your email and password and submit. At this time, it is recommended to check the activation email in your mailbox and activate your account (Editor's tip: It doesn't matter if you activate lazily, but some advanced services must be activated before they can be used).
2.
Quickly create your own blockchain
After registration is completed, return to the homepage and click on the huge GIVE ME A BLOCKCHAIN ??(Give me a block Blockchain! ) button. Select the Consensus Plugin (consensus plug-in) and Size (number of blockchain network nodes) you want in the pop-up box.
Editor's note: Currently, there are two authentication plug-ins officially provided by Hyperledger Fabric: noops and pbft.
After clicking Submit, you will get your own blockchain in a few seconds and automatically enter the monitoring panel. That’s right, getting your own blockchain is that simple!
After entering the monitoring panel, you can see that the left side is the smart contract management panel, including the management and deployment of smart contracts; the right side is the network panel, which displays the applied blockchain network status, topology, The delay information between nodes is clear at a glance; click the telescope icon in the upper right corner to monitor the log information of each node in real time. The bottom is the blockchain panel, which shows the overall situation of the current blockchain. In the initial state, there is only one block.
3. Deploy and use smart contracts
Next, the editor will teach you how to deploy and use smart contracts on your own blockchain.
Under the Smart Contracts tab of the smart contract management panel, two smart contracts are listed as examples, namely map and chaincode_example02. The map contract can store key-value pairs, and the chaincode_example02 contract can simulate transfers and queries between two people.
Editor’s note: The codes for these two sample contracts can be found in the Hyperledger Fabric source code.
Take the deployment and use of the chaincode_example02 contract as an example:
Deploy the contract
Click the Deploy button corresponding to the chaincode_example02 contract and fill in the initialization value of the contract. Including contract name, initial function, and initial parameters.
The initial function of the contract is init, and the initial parameters need to be filled in according to the format, such as ["a", "100", "b", "200"], which means registering two people a and b, giving them 100 units and 200 units respectively.
Click the Deploy button and the contract will be deployed in your blockchain. The process will take about 20 to 40 seconds. When a new block appears on the blockchain panel, it usually means that the contract has been deployed.
Calling the contract
After the deployment is completed, view the deployed contract instance under the My Deployment tab of the smart contract management panel.
Click the Invoke button below the Action to call the smart contract, and fill in the called method name and corresponding parameters (the method names and parameters of different contracts have different meanings, which are related to the content of the contract). For this contract, call the invoke method name and fill in the parameters ["a", "b", "50"], which means a transfers 50 units to b.
After clicking Submit to complete the call, you can view the blockchain situation and a new block will be generated.
Query Contract
After the call is completed, you can query the contract execution results. Still under the My Deployment tab, click the Query button under Action to query the smart contract, and fill in the query method name and corresponding parameters. If you select the query method name and fill in the parameter ["a"], it means querying the current unit of a.
After clicking Submit, you can see that the current unit of a is 50. You can try query b again!
OK, then you can continue to operate the contract, observe the blockchain, or deploy a new smart contract, such as map, on the blockchain. For ease of use, the method names and parameter formats for deploying, calling, and querying contracts are all filled in by default. You only need to select a method name and change the parameters as you like! See how long you can play with the chain~
4. Upload and test your own private smart contract
In addition to the two public smart contracts currently provided, you can also upload and test Test your own private contract! Private contracts can only be seen by you.
Click Import private smart contract under the Smart Contracts tab.
After filling in the contract name and description, and uploading the contract code file, click Import to complete the upload.
Afterwards, the contract I uploaded will appear in the Smart Contracts list, and it can be deployed, called and queried as before.