@@ -13,134 +13,134 @@ ________________________________________________________
13
13
14
14
## Table of Contents
15
15
#### [ 1. Introduction] ( #1-introduction_1 )
16
- - [ 1.1 What is the fabric?] ( #11-what-is-the-fabric )
17
- - [ 1.2 Why the fabric?] ( #12-why-the-fabric )
18
- - [ 1.3 Terminology] ( #13-terminology )
16
+ * [ 1.1 What is the fabric?] ( #11-what-is-the-fabric )
17
+ * [ 1.2 Why the fabric?] ( #12-why-the-fabric )
18
+ * [ 1.3 Terminology] ( #13-terminology )
19
19
20
20
#### [ 2. Fabric] ( #2-fabric_1 )
21
- - [ 2.1 Architecture] ( #21-architecture )
22
- - [ 2.1.1 Membership Services] ( #211-membership-services )
23
- - [ 2.1.2 Blockchain Services] ( #212-blockchain-services )
24
- - [ 2.1.3 Chaincode Services] ( #213-chaincode-services )
25
- - [ 2.1.4 Events] ( #214-events )
26
- - [ 2.1.5 Application Programming Interface (API)] ( #215-application-programming-interface-api )
27
- - [ 2.1.6 Command Line Interface (CLI)] ( #216-command-line-interface-cli )
28
- - [ 2.2 Topology] ( #22-topology )
29
- - [ 2.2.1 Single Validating Peer] ( #221-single-validating-peer )
30
- - [ 2.2.2 Multiple Validating Peers] ( #222-multiple-validating-peers )
31
- - [ 2.2.3 Multichain] ( #223-multichain )
21
+ * [ 2.1 Architecture] ( #21-architecture )
22
+ - [ 2.1.1 Membership Services] ( #211-membership-services )
23
+ - [ 2.1.2 Blockchain Services] ( #212-blockchain-services )
24
+ - [ 2.1.3 Chaincode Services] ( #213-chaincode-services )
25
+ - [ 2.1.4 Events] ( #214-events )
26
+ - [ 2.1.5 Application Programming Interface (API)] ( #215-application-programming-interface-api )
27
+ - [ 2.1.6 Command Line Interface (CLI)] ( #216-command-line-interface-cli )
28
+ * [ 2.2 Topology] ( #22-topology )
29
+ - [ 2.2.1 Single Validating Peer] ( #221-single-validating-peer )
30
+ - [ 2.2.2 Multiple Validating Peers] ( #222-multiple-validating-peers )
31
+ - [ 2.2.3 Multichain] ( #223-multichain )
32
32
33
33
#### [ 3. Protocol] ( #3-protocol_1 )
34
- - [ 3.1 Message] ( #31-message )
35
- - [ 3.1.1 Discovery Messages] ( #311-discovery-messages )
36
- - [ 3.1.2 Transaction Messages] ( #312-transaction-messages )
37
- - [ 3.1.2.1 Transaction Data Structure] ( #3121-transaction-data-structure )
38
- - [ 3.1.2.2 Transaction Specification] ( #3122-transaction-specification )
39
- - [ 3.1.2.3 Deploy Transaction] ( #3123-deploy-transaction )
40
- - [ 3.1.2.4 Invoke Transaction] ( #3124-invoke-transaction )
41
- - [ 3.1.2.5 Query Transaction] ( #3125-query-transaction )
42
- - [ 3.1.3 Synchronization Messages] ( #313-synchronization-messages )
43
- - [ 3.1.4 Consensus Messages] ( #314-consensus-messages )
44
- - [ 3.2 Ledger] ( #32-ledger )
45
- - [ 3.2.1 Blockchain] ( #321-blockchain )
46
- - [ 3.2.1.1 Block] ( #3211-block )
47
- - [ 3.2.1.2 Block Hashing] ( #3212-block-hashing )
48
- - [ 3.2.1.3 NonHashData] ( #3213-nonhashdata )
49
- - [ 3.2.1.4 Transaction Execution] ( #3214-transaction-execution )
50
- - [ 3.2.2 World State] ( #322-world-state )
51
- - [ 3.2.2.1 Hashing the world state] ( #3221-hashing-the-world-state )
52
- - [ 3.2.2.1.1 Bucket-tree] ( #32211-buckettree )
53
- - [ 3.3 Chaincode] ( #33-chaincode )
54
- - [ 3.3.1 Virtual Machine Instantiation] ( #331-virtual-machine-instantiation )
55
- - [ 3.3.2 Chaincode Protocol] ( #332-chaincode-protocol )
56
- - [ 3.3.2.1 Chaincode Deploy] ( #3321-chaincode-deploy )
57
- - [ 3.3.2.2 Chaincode Invoke] ( #3322-chaincode-invoke )
58
- - [ 3.3.2.3 Chaincode Query] ( #3323-chaincode-query )
59
- - [ 3.3.2.4 Chaincode State] ( #3324-chaincode-state )
60
- - [ 3.4 Pluggable Consensus Framework] ( #34-pluggable-consensus-framework )
61
- - [ 3.4.1 Consenter interface] ( #341-consenter-interface )
62
- - [ 3.4.2 CPI interface] ( #342-cpi-interface )
63
- - [ 3.4.3 Inquirer interface] ( #343-inquirer-interface )
64
- - [ 3.4.4 Communicator interface] ( #344-communicator-interface )
65
- - [ 3.4.5 SecurityUtils interface] ( #345-securityutils-interface )
66
- - [ 3.4.6 LedgerStack interface] ( #346-ledgerstack-interface )
67
- - [ 3.4.7 Executor interface] ( #347-executor-interface )
68
- - [ 3.4.7.1 Beginning a transaction batch] ( #3471-beginning-a-transaction-batch )
69
- - [ 3.4.7.2 Executing transactions] ( #3472-executing-transactions )
70
- - [ 3.4.7.3 Committing and rolling-back transactions] ( #3473-committing-and-rollingback-transactions )
71
- - [ 3.4.8 Ledger interface] ( #348-ledger-interface )
72
- - [ 3.4.8.1 ReadOnlyLedger interface] ( #3481-readonlyledger-interface )
73
- - [ 3.4.8.2 UtilLedger interface] ( #3482-utilledger-interface )
74
- - [ 3.4.8.3 WritableLedger interface] ( #3483-writableledger-interface )
75
- - [ 3.4.9 RemoteLedgers interface] ( #349-remoteledgers-interface )
76
- - [ 3.4.10 controller package] ( #3410-controller-package )
77
- - [ 3.4.10.1 controller.NewConsenter] ( #34101-controllernewconsenter )
78
- - [ 3.4.11 helper package] ( #3411-helper-package )
79
- - [ 3.4.11.1 High-level overview] ( #34111-highlevel-overview )
80
- - [ 3.4.11.2 helper.ConsensusHandler] ( #34112-helperconsensushandler )
81
- - [ 3.4.11.3 helper.NewConsensusHandler] ( #34113-helpernewconsensushandler )
82
- - [ 3.4.11.4 helper.Helper] ( #34114-helperhelper )
83
- - [ 3.4.11.5 helper.NewHelper] ( #34115-helpernewhelper )
84
- - [ 3.4.11.6 helper.HandleMessage] ( #34116-helperhandlemessage )
85
- - [ 3.5 Events] ( #35-events )
86
- - [ 3.5.1 Event Stream] ( #351-event-stream )
87
- - [ 3.5.1.1 Event Producer] ( #3511-event-producer )
88
- - [ 3.5.1.2 Event Consumer] ( #3512-event-consumer )
89
- - [ 3.5.2 Event Adapters] ( #352-event-adapters )
90
- - [ 3.5.3 Event Structure] ( #353-event-structure )
34
+ * [ 3.1 Message] ( #31-message )
35
+ - [ 3.1.1 Discovery Messages] ( #311-discovery-messages )
36
+ - [ 3.1.2 Transaction Messages] ( #312-transaction-messages )
37
+ * [ 3.1.2.1 Transaction Data Structure] ( #3121-transaction-data-structure )
38
+ * [ 3.1.2.2 Transaction Specification] ( #3122-transaction-specification )
39
+ * [ 3.1.2.3 Deploy Transaction] ( #3123-deploy-transaction )
40
+ * [ 3.1.2.4 Invoke Transaction] ( #3124-invoke-transaction )
41
+ * [ 3.1.2.5 Query Transaction] ( #3125-query-transaction )
42
+ - [ 3.1.3 Synchronization Messages] ( #313-synchronization-messages )
43
+ - [ 3.1.4 Consensus Messages] ( #314-consensus-messages )
44
+ * [ 3.2 Ledger] ( #32-ledger )
45
+ - [ 3.2.1 Blockchain] ( #321-blockchain )
46
+ * [ 3.2.1.1 Block] ( #3211-block )
47
+ * [ 3.2.1.2 Block Hashing] ( #3212-block-hashing )
48
+ * [ 3.2.1.3 NonHashData] ( #3213-nonhashdata )
49
+ * [ 3.2.1.4 Transaction Execution] ( #3214-transaction-execution )
50
+ - [ 3.2.2 World State] ( #322-world-state )
51
+ * [ 3.2.2.1 Hashing the world state] ( #3221-hashing-the-world-state )
52
+ * [ 3.2.2.1.1 Bucket-tree] ( #32211-buckettree )
53
+ * [ 3.3 Chaincode] ( #33-chaincode )
54
+ - [ 3.3.1 Virtual Machine Instantiation] ( #331-virtual-machine-instantiation )
55
+ - [ 3.3.2 Chaincode Protocol] ( #332-chaincode-protocol )
56
+ * [ 3.3.2.1 Chaincode Deploy] ( #3321-chaincode-deploy )
57
+ * [ 3.3.2.2 Chaincode Invoke] ( #3322-chaincode-invoke )
58
+ * [ 3.3.2.3 Chaincode Query] ( #3323-chaincode-query )
59
+ * [ 3.3.2.4 Chaincode State] ( #3324-chaincode-state )
60
+ * [ 3.4 Pluggable Consensus Framework] ( #34-pluggable-consensus-framework )
61
+ - [ 3.4.1 Consenter interface] ( #341-consenter-interface )
62
+ - [ 3.4.2 CPI interface] ( #342-cpi-interface )
63
+ - [ 3.4.3 Inquirer interface] ( #343-inquirer-interface )
64
+ - [ 3.4.4 Communicator interface] ( #344-communicator-interface )
65
+ - [ 3.4.5 SecurityUtils interface] ( #345-securityutils-interface )
66
+ - [ 3.4.6 LedgerStack interface] ( #346-ledgerstack-interface )
67
+ - [ 3.4.7 Executor interface] ( #347-executor-interface )
68
+ * [ 3.4.7.1 Beginning a transaction batch] ( #3471-beginning-a-transaction-batch )
69
+ * [ 3.4.7.2 Executing transactions] ( #3472-executing-transactions )
70
+ * [ 3.4.7.3 Committing and rolling-back transactions] ( #3473-committing-and-rollingback-transactions )
71
+ - [ 3.4.8 Ledger interface] ( #348-ledger-interface )
72
+ * [ 3.4.8.1 ReadOnlyLedger interface] ( #3481-readonlyledger-interface )
73
+ * [ 3.4.8.2 UtilLedger interface] ( #3482-utilledger-interface )
74
+ * [ 3.4.8.3 WritableLedger interface] ( #3483-writableledger-interface )
75
+ - [ 3.4.9 RemoteLedgers interface] ( #349-remoteledgers-interface )
76
+ - [ 3.4.10 controller package] ( #3410-controller-package )
77
+ * [ 3.4.10.1 controller.NewConsenter] ( #34101-controllernewconsenter )
78
+ - [ 3.4.11 helper package] ( #3411-helper-package )
79
+ * [ 3.4.11.1 High-level overview] ( #34111-highlevel-overview )
80
+ * [ 3.4.11.2 helper.ConsensusHandler] ( #34112-helperconsensushandler )
81
+ * [ 3.4.11.3 helper.NewConsensusHandler] ( #34113-helpernewconsensushandler )
82
+ * [ 3.4.11.4 helper.Helper] ( #34114-helperhelper )
83
+ * [ 3.4.11.5 helper.NewHelper] ( #34115-helpernewhelper )
84
+ * [ 3.4.11.6 helper.HandleMessage] ( #34116-helperhandlemessage )
85
+ * [ 3.5 Events] ( #35-events )
86
+ - [ 3.5.1 Event Stream] ( #351-event-stream )
87
+ * [ 3.5.1.1 Event Producer] ( #3511-event-producer )
88
+ * [ 3.5.1.2 Event Consumer] ( #3512-event-consumer )
89
+ - [ 3.5.2 Event Adapters] ( #352-event-adapters )
90
+ - [ 3.5.3 Event Structure] ( #353-event-structure )
91
91
92
92
#### [ 4. Security] ( #4-security_1 )
93
- - [ 4.1 Business security requirements] ( #41-business-security-requirements )
94
- - [ 4.2 User Privacy through Membership Services] ( #42-user-privacy-through-membership-services )
95
- - [ 4.2.1 User/Client Enrollment Process] ( #421-userclient-enrollment-process )
96
- - [ 4.2.2 Expiration and revocation of certificates] ( #422-expiration-and-revocation-of-certificates )
97
- - [ 4.3 Transaction security offerings at the infrastructure level] ( #43-transaction-security-offerings-at-the-infrastructure-level )
98
- - [ 4.3.1 Security Lifecycle of Transactions] ( #431-security-lifecycle-of-transactions )
99
- - [ 4.3.2 Transaction confidentiality] ( #432-transaction-confidentiality )
100
- - [ 4.3.2.1 Confidentiality against users] ( #4321-confidentiality-against-users )
101
- - [ 4.3.2.2 Confidentiality against validators] ( #4322-confidentiality-against-validators )
102
- - [ 4.3.3 Replay attack resistance] ( #433-replay-attack-resistance )
103
- - [ 4.4 Access control features on the application] ( #44-access-control-features-on-the-application )
104
- - [ 4.4.1 Invocation access control] ( #441-invocation-access-control )
105
- - [ 4.4.2 Read access control] ( #442-read-access-control )
106
- - [ 4.5 Online wallet service] ( #45-online-wallet-service )
107
- - [ 4.6 Network security (TLS)] ( #46-network-security-tls )
108
- - [ 4.7 Restrictions in the current release] ( #47-restrictions-in-the-current-release )
109
- - [ 4.7.1 Simplified client] ( #471-simplified-client )
110
- - [ 4.7.2 Simplified transaction confidentiality] ( #472-simplified-transaction-confidentiality )
93
+ * [ 4.1 Business security requirements] ( #41-business-security-requirements )
94
+ * [ 4.2 User Privacy through Membership Services] ( #42-user-privacy-through-membership-services )
95
+ - [ 4.2.1 User/Client Enrollment Process] ( #421-userclient-enrollment-process )
96
+ - [ 4.2.2 Expiration and revocation of certificates] ( #422-expiration-and-revocation-of-certificates )
97
+ * [ 4.3 Transaction security offerings at the infrastructure level] ( #43-transaction-security-offerings-at-the-infrastructure-level )
98
+ - [ 4.3.1 Security Lifecycle of Transactions] ( #431-security-lifecycle-of-transactions )
99
+ - [ 4.3.2 Transaction confidentiality] ( #432-transaction-confidentiality )
100
+ * [ 4.3.2.1 Confidentiality against users] ( #4321-confidentiality-against-users )
101
+ * [ 4.3.2.2 Confidentiality against validators] ( #4322-confidentiality-against-validators )
102
+ - [ 4.3.3 Replay attack resistance] ( #433-replay-attack-resistance )
103
+ * [ 4.4 Access control features on the application] ( #44-access-control-features-on-the-application )
104
+ - [ 4.4.1 Invocation access control] ( #441-invocation-access-control )
105
+ - [ 4.4.2 Read access control] ( #442-read-access-control )
106
+ * [ 4.5 Online wallet service] ( #45-online-wallet-service )
107
+ * [ 4.6 Network security (TLS)] ( #46-network-security-tls )
108
+ * [ 4.7 Restrictions in the current release] ( #47-restrictions-in-the-current-release )
109
+ - [ 4.7.1 Simplified client] ( #471-simplified-client )
110
+ - [ 4.7.2 Simplified transaction confidentiality] ( #472-simplified-transaction-confidentiality )
111
111
112
112
#### [ 5. Byzantine Consensus] ( #5-byzantine-consensus_1 )
113
- - [ 5.1 Overview] ( #51-overview )
114
- - [ 5.2 Core PBFT Functions] ( #52-core-pbft-functions )
115
- - [ 5.2.1 newPbftCore] ( #521-newpbftcore )
113
+ * [ 5.1 Overview] ( #51-overview )
114
+ * [ 5.2 Core PBFT Functions] ( #52-core-pbft-functions )
115
+ * [ 5.2.1 newPbftCore] ( #521-newpbftcore )
116
116
117
117
#### [ 6. Application Programming Interface] ( #6-application-programming-interface_1 )
118
- - [ 6.1 REST Service] ( #61-rest-service )
119
- - [ 6.2 REST API] ( #62-rest-api )
120
- - [ 6.2.1 REST Endpoints] ( #621-rest-endpoints )
121
- - [ 6.2.1.1 Block API] ( #6211-block-api )
122
- - [ 6.2.1.2 Blockchain API] ( #6212-blockchain-api )
123
- - [ 6.2.1.3 Chaincode API] ( #6213-chaincode-api )
124
- - [ 6.2.1.4 Network API] ( #6214-network-api )
125
- - [ 6.2.1.5 Registrar API (member services)] ( #6215-registrar-api-member-services )
126
- - [ 6.2.1.6 Transactions API] ( #6216-transactions-api )
127
- - [ 6.3 CLI] ( #63-cli )
128
- - [ 6.3.1 CLI Commands] ( #631-cli-commands )
129
- - [ 6.3.1.1 node start] ( #6311-node-start )
130
- - [ 6.3.1.2 network login] ( #6312-network-login )
131
- - [ 6.3.1.3 chaincode deploy] ( #6313-chaincode-deploy )
132
- - [ 6.3.1.4 chaincode invoke] ( #6314-chaincode-invoke )
133
- - [ 6.3.1.5 chaincode query] ( #6315-chaincode-query )
118
+ * [ 6.1 REST Service] ( #61-rest-service )
119
+ * [ 6.2 REST API] ( #62-rest-api )
120
+ - [ 6.2.1 REST Endpoints] ( #621-rest-endpoints )
121
+ * [ 6.2.1.1 Block API] ( #6211-block-api )
122
+ * [ 6.2.1.2 Blockchain API] ( #6212-blockchain-api )
123
+ * [ 6.2.1.3 Chaincode API] ( #6213-chaincode-api )
124
+ * [ 6.2.1.4 Network API] ( #6214-network-api )
125
+ * [ 6.2.1.5 Registrar API (member services)] ( #6215-registrar-api-member-services )
126
+ * [ 6.2.1.6 Transactions API] ( #6216-transactions-api )
127
+ * [ 6.3 CLI] ( #63-cli )
128
+ - [ 6.3.1 CLI Commands] ( #631-cli-commands )
129
+ * [ 6.3.1.1 node start] ( #6311-node-start )
130
+ * [ 6.3.1.2 network login] ( #6312-network-login )
131
+ * [ 6.3.1.3 chaincode deploy] ( #6313-chaincode-deploy )
132
+ * [ 6.3.1.4 chaincode invoke] ( #6314-chaincode-invoke )
133
+ * [ 6.3.1.5 chaincode query] ( #6315-chaincode-query )
134
134
135
135
#### [ 7. Application Model] ( #7-application-model_1 )
136
- - [ 7.1 Composition of an Application] ( #71-composition-of-an-application )
137
- - [ 7.2 Sample Application] ( #72-sample-application )
136
+ * [ 7.1 Composition of an Application] ( #71-composition-of-an-application )
137
+ * [ 7.2 Sample Application] ( #72-sample-application )
138
138
139
139
#### [ 8. Future Directions] ( #8-future-directions_1 )
140
- - [ 8.1 Enterprise Integration] ( #81-enterprise-integration )
141
- - [ 8.2 Performance and Scalability] ( #82-performance-and-scalability )
142
- - [ 8.3 Additional Consensus Plugins] ( #83-additional-consensus-plugins )
143
- - [ 8.4 Additional Languages] ( #84-additional-languages )
140
+ * [ 8.1 Enterprise Integration] ( #81-enterprise-integration )
141
+ * [ 8.2 Performance and Scalability] ( #82-performance-and-scalability )
142
+ * [ 8.3 Additional Consensus Plugins] ( #83-additional-consensus-plugins )
143
+ * [ 8.4 Additional Languages] ( #84-additional-languages )
144
144
145
145
#### [ 9.1 Authors] ( #91-authors )
146
146
#### [ 9.2 Reviewers] ( #92-reviewers )
0 commit comments