4 zcash-cli: arguments privacy
5 ----------------------------
7 The RPC command line client gained a new argument, `-stdin`
8 to read extra arguments from standard input, one per line until EOF/Ctrl-D.
11 $ src/zcash-cli -stdin walletpassphrase
16 It is recommended to use this for sensitive information such as private keys, as
17 command-line arguments can usually be read from the process table by any user on
20 Asm representations of scriptSig signatures now contain SIGHASH type decodes
21 ----------------------------------------------------------------------------
23 The `asm` property of each scriptSig now contains the decoded signature hash
24 type for each signature that provides a valid defined hash type.
26 The following items contain assembly representations of scriptSig signatures
27 and are affected by this change:
29 - RPC `getrawtransaction`
30 - RPC `decoderawtransaction`
31 - REST `/rest/tx/` (JSON format)
32 - REST `/rest/block/` (JSON format when including extended tx details)
35 For example, the `scriptSig.asm` property of a transaction input that
36 previously showed an assembly representation of:
38 304502207fa7a6d1e0ee81132a269ad84e68d695483745cde8b541e3bf630749894e342a022100c1f7ab20e13e22fb95281a870f3dcf38d782e53023ee313d741ad0cfbc0c509001
42 304502207fa7a6d1e0ee81132a269ad84e68d695483745cde8b541e3bf630749894e342a022100c1f7ab20e13e22fb95281a870f3dcf38d782e53023ee313d741ad0cfbc0c5090[ALL]
44 Note that the output of the RPC `decodescript` did not change because it is
45 configured specifically to process scriptPubKey and not scriptSig scripts.
51 serialization: teach serializers variadics
52 build: univalue subdir build fixups
53 don't throw std::bad_alloc when out of memory. Instead, terminate immediately
54 prevector: assert successful allocation
57 Use https: for BDB backup download URL.
62 Eirik Ogilvie-Wigley (7):
63 Clarify help text of dumpprivkey
64 Add sapling nullifier set
65 Add enum for nullifier type
66 Add sapling nullifiers to db and mempool
67 Rename nullifier caches and maps to indicate sprout nullifiers
68 Make sure transactions have non-empty outputs
69 Coinbase transactions can not have shielded spend or output
72 Disable building libzcashconsensus by default
73 depends: Upgrade Rust to 1.26.0-beta.3
74 depends: Add support for unpackaged Rust crates
75 depends: Update to latest librustzcash with sapling-crypto dependencies
76 Add Sapling to upgrade list
77 Add static asserts to ensure CONTINUE_EXECUTION doesn't collide
78 [Bitcoin-Tx] Adjust util-test test cases for Zcash
79 Handle usage of prevector for CScript in Zcash-specific code
80 GetSerializeSize changes in Zcash-specific code
81 Remove nType and nVersion from Zcash-specific code
82 Adjust consensus rules to require v4 transactions from Sapling activation
83 Implement basic Sapling v4 transaction parser
84 Add Sapling v4 transactions to IsStandard
85 Pass transaction header into correct SignatureHash serialization level
86 Remove now-unshadowed serialization lines that do nothing
87 Implement SpendDescription and OutputDescription datastructures
88 Add a constant for Overwinter's transaction version
89 Return result of boost::apply_visitor
90 Improve best-effort logging before termination on OOM
91 Attempt to log before terminating if prevector allocation fails
92 Fix -Wstring-plus-int warning on clang
93 Update mempool_nu_activation RPC test to exercise both Overwinter and Sapling
94 Use CBitcoinAddress wrappers in Zcash-specific code
95 Change JSOutPoint constructor to have js argument be uint64_t
96 Update CreateNewContextualCMutableTransaction to create Sapling transactions
97 Expire Overwinter transactions before the Sapling activation height
98 Remove obsolete CreateJoinSplit and GenerateParams binaries
99 Add missing include guard
100 Raise 100kB transaction size limit from Sapling activation
101 Benchmark the largest valid Sapling transaction in validatelargetx
102 Rename MAX_TX_SIZE to MAX_TX_SIZE_AFTER_SAPLING
103 Rework z_sendmany z-address recipient limit
104 Add test of Sapling transaction size boundary
105 Update tests for CreateNewContextualCMutableTransaction changes
106 wallet: Change IsLockedNote to take a JSOutPoint
107 wallet: Make some arguments const that can be
108 Implement Sapling signature hash (ZIP 243)
110 Introduce wrappers around CZCPaymentAddress
111 Introduce wrappers around CZCSpendingKey
112 Introduce wrappers around CZCViewingKey
113 Implement {Encode,Decode}PaymentAddress etc. without CZCEncoding
114 Add key_io includes to Zcash-specific code
115 Add valueBalance to value balances, and enforce its consensus rules
116 Track net value entering and exiting the Sapling circuit
117 Add contextual comment for GetValueOut() and GetShieldedValueIn()
118 Use boost::variant to represent shielded addresses and keys
119 Correctly serialize Groth16 JSDescription for verifyjoinsplit benchmark
120 make-release.py: Versioning changes for 1.1.1-rc1.
121 make-release.py: Updated manpages for 1.1.1-rc1.
122 make-release.py: Updated release notes and changelog for 1.1.1-rc1.
123 Comment out Gitian library handling while we don't build any libraries
126 Add test for dependent txs to mempool_tx_expiry.py
129 Fix subscript[0] in base58.cpp
132 [RPC] createrawtransaction: add option to set the sequence number per input
133 [bitcoin-tx] allow to set nSequence number over the in= command
134 [Bitcoin-Tx] Add tests for sequence number support
135 add bip32 pubkey serialization
138 Remove unused GetKeyID and IsScript methods from CBitcoinAddress
141 Removed using namespace std from bitcoin-cli/-tx and added std:: in appropriate places.
144 CBase58Data::SetString: cleanse the full vector
147 fix qa/zcash/full_test_suite.py pathname
150 [uacomment] Sanitize per BIP-0014
151 [rpcwallet] Don't use floating point
152 [test] Remove unused code
155 Add COMPACTSIZE wrapper similar to VARINT for serialization
158 [WIP] Remove unused statement in serialization
161 implement uacomment config parameter which can add comments to user agent as per BIP-0014
162 limit total length of user agent comments
165 Prevent multiple calls to ExtractDestination
168 Make some globals static that can be
171 Backported Bitcoin PR #8704 to optionally return full tx details in the getblock rpc call
175 Remove unused ReadVersion and WriteVersion
176 Make streams' read and write return void
177 Make nType and nVersion private and sometimes const
178 Make GetSerializeSize a wrapper on top of CSizeComputer
179 Get rid of nType and nVersion
180 Avoid -Wshadow errors
181 Make CSerAction's ForRead() constexpr
182 Add optimized CSizeComputer serializers
183 Use fixed preallocation instead of costly GetSerializeSize
184 Add serialization for unique_ptr and shared_ptr
185 Add deserializing constructors to CTransaction and CMutableTransaction
186 Avoid unaligned access in crypto i/o
187 Fix some empty vector references
188 Introduce wrappers around CBitcoinAddress
189 Move CBitcoinAddress to base58.cpp
190 Implement {Encode,Decode}Destination without CBitcoinAddress
191 Import Bech32 C++ reference code & tests
192 Convert base58_tests from type/payload to scriptPubKey comparison
193 Replace CBitcoinSecret with {Encode,Decode}Secret
194 Stop using CBase58Data for ext keys
195 Split key_io (address/key encodings) off from base58
198 bitcoin-cli.cpp: Use symbolic constant for exit code
201 Switch to latest librustzcash
202 Invoke the merkle_hash API in librustzcash via test suite.
204 Update librustzcash hash
205 Load Sapling testnet parameters into memory.
206 Update librustzcash hash
207 Check that duplicate Sapling nullifiers don't exist within a transaction.
208 Abstract `uncommitted` and depth personalization for IncrementalMerkleTree.
209 Add implementation of Sapling merkle tree
210 Add regression tests and test vectors for Sapling merkle tree
211 Rename NullifierType to ShieldedType.
212 Specifically describe anchors as Sprout anchors.
213 Rename hashAnchor to hashSproutAnchor.
214 Rename hashReserved to hashSaplingAnchorEnd.
215 Add primitive implementation of GetSaplingAnchorEnd.
216 Rename DB_ANCHOR to DB_SPROUT_ANCHOR.
217 Rename GetAnchorAt to GetSproutAnchorAt.
218 Rename PushAnchor to PushSproutAnchor.
219 Introduce support for GetBestAnchor(SAPLING).
220 Generalize the PopAnchor implementation behavior.
221 Generalize the PushAnchor implementation behavior.
222 Remove underscores from gtest test names.
223 Rename hashSaplingAnchorEnd to hashFinalSaplingRoot to match spec.
224 Rename hashSproutAnchorEnd to hashFinalSproutRoot to be consistent.
225 Add support for Sapling anchors in coins/txdb.
226 Add support for PopAnchor(.., SPROUT/SAPLING)
227 Add `PushSaplingAnchor`
228 Add consensus support for Sapling merkle trees.
229 Add support for Sapling anchor checks in mempool consistency checks.
230 Calculate the correct hashFinalSaplingRoot in the miner.
231 Adjust tests to handle Sapling anchor cache
232 Evict transactions with obsolete anchors from the mempool
234 Fix broken error messages.
236 Update sapling-crypto and librustzcash
237 Swap bit endianness of test vectors
238 Remove unnecessary IsCoinbase() check. Coinbases are guaranteed to have empty vjoinsplit.
239 Refactor so that dataToBeSigned can be used later in the function for other purposes.
240 Update to latest librustzcash
241 Check Sapling Spend/Output proofs and signatures.
242 Integrate Groth16 verification and proving.
243 Update librustzcash again
244 Adjust tests and benchmarks
245 Switch Rust to 1.26 Stable.
247 Update Sapling testnet parameters
248 Update merkle tree and pedersen hash tests to account for new encoding
249 Change txdb prefixes for sapling and avoid writing unnecessary information.
252 Part of #2966, extending Sprout tests to other epochs.
253 Closes #3134 - Least Authority Issue E
254 Refactoring: libzcash::Note is now a subclass of libzcash::BaseNote.
255 Refactoring: Rename class libzcash::Note to libzcash::SproutNote.
256 Refactoring: SproutNote member variable value moved to BaseNote.
257 Add virtual destructor to SproutNote and BaseNote
258 Remove unused SproutNote variables.
259 Refactoring: rename NotePlaintext --> SproutNotePlaintext
260 Create class hierarchy for SproutNotePlaintext.
261 Move memo member varible from SproutNotePlaintext to BaseNotePlaintext.
262 Tweaks to d0a1d83 to complete backport of Bitcoin PR #8704
263 Closes #3178 by adding verbosity level improvements to getblock RPC.
264 Fix undefined behaviour, calling memcpy with NULL pointer.
265 Closes #3250. Memo getter should return by reference, not by value.
266 make-release.py: Versioning changes for 1.1.1-rc2.
267 make-release.py: Updated manpages for 1.1.1-rc2.
270 Add optional locktime to createrawtransaction
274 Every main()/exit() should return/use one of EXIT_ codes instead of magic numbers
276 Wladimir J. van der Laan (2):
277 rpc: Input-from-stdin mode for bitcoin-cli
278 doc: mention bitcoin-cli -stdin in release notes
281 [fix] proton download path
285 [macOS] added curl method for param download
286 [macOS] use shlock instead of flock in fetch-params
289 Resolve issue bitcoin/bitcoin#3166.