Once members have decided to participate in a channel, they may choose to deploy and instantiate chaincode (a.k.a smart contract). A chaincode defines how key/value pairs which are scoped to a channel will be updated or read from. A chaincode can define its endorsement policy—that is, it may require a digital signature from some or all peers in the network. Due to the permissioned nature of Hyperledger Fabric, a chaincode requiring a digital signature from a peer (endorsement) must be installed and instantiated on a peer. See Chapter 5, Exposing Network Assets and Transactions and Chapter 7, A Business Network Example, for more details on deploying chaincode.
Before deploying chaincode on a channel, it is expected that network members will want to review the chaincode to ensure that it conforms to their policy. This process can be formalized into chaincode governance to require mandatory reviews from all relevant members who will instantiate the chaincode on their nodes.