github.com/darrenli6/fabric-sdk-example@v0.0.0-20220109053535-94b13b56df8c/docs/source/chaincode.rst (about) 1 Chaincode Tutorials 2 =================== 3 4 What is Chaincode? 5 ------------------ 6 7 Chaincode is a program, written in `Go <https://golang.org>`_, and eventually 8 in other programming languages such as Java, that implements a 9 prescribed interface. Chaincode runs in a secured Docker container isolated from 10 the endorsing peer process. Chaincode initializes and manages ledger state 11 through transactions submitted by applications. 12 13 A chaincode typically handles business logic agreed to by members of the 14 network, so it may be considered as a "smart contract". State created by a 15 chaincode is scoped exclusively to that chaincode and can't be accessed 16 directly by another chaincode. However, within the same network, given 17 the appropriate permission a chaincode may invoke another chaincode to 18 access its state. 19 20 Two Personas 21 ------------ 22 23 We offer two different perspectives on chaincode. One, from the perspective of 24 an application developer developing a blockchain application/solution 25 entitled :doc:`chaincode4ade`, and the other, :doc:`chaincode4noah` oriented 26 to the blockchain network operator who is responsible for managing a blockchain 27 network, and who would leverage the Hyperledger Fabric API to install, 28 instantiate, and upgrade chaincode, but would likely not be involved in the 29 development of a chaincode application. 30 31 .. Licensed under Creative Commons Attribution 4.0 International License 32 https://creativecommons.org/licenses/by/4.0/