@@ -120,6 +120,25 @@ ELSE
120
120
ENDIF
121
121
```
122
122
123
+ ### Use for proving computation
124
+
125
+ Merkle trees can be used to prove out computation where the root of the tree
126
+ represents the function and the leaves represent the inputs and output. There
127
+ are practical limits to the entropy space for the inputs as it needs to be
128
+ iterated over and hashed up.
129
+
130
+ Currently MAST trees can cover 128 bits of entropy space, which is well over
131
+ the practical limits to iterate over and merklize. Therefore we assume this
132
+ capability does not materially extend what computations are possible to prove
133
+ out in bitcoin script. While ` OP_PAIRCOMMIT ` is not limited to a height of 128,
134
+ that should not be prectically feasible to utilize.
135
+
136
+ There is a way to reduce the size of the witness for proving out computation,
137
+ by eliminating the merkle path inclusion proofs, using ` OP_CHECKSIGFROMSTACK `
138
+ together with ` OP_PAIRCOMMIT ` . This method involves deleted key assumptions,
139
+ most likely using MPC to create an enormous amount of signatures for the stack
140
+ elements representing the inputs and the output of the function.
141
+
123
142
## Reference Implementation
124
143
125
144
A reference implementation is provided here:
174
193
175
194
## Credits
176
195
177
- Jeremy Rubin, Brandon Black, Salvatore Ingala, Anthony Towns
196
+ Jeremy Rubin, Brandon Black, Salvatore Ingala, Anthony Towns, Ademan555
178
197
179
198
## Copyright
180
199
0 commit comments