forked from Electron-Cash/Electron-Cash
-
Notifications
You must be signed in to change notification settings - Fork 3
/
RELEASE-NOTES
274 lines (213 loc) · 12.2 KB
/
RELEASE-NOTES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
Electron Cash is a fork of the open source Electrum Bitcoin wallet (www.electrum.org) for Bitcoin Cash. The current
release is based on the Electrum 2.9.0 codebase with patches to
- handle Bitcoin Cash difficulty adjustment algorithm
- sign transactions the Bitcoin Cash way
- updated list of electrum servers
- updated icons and branding
- remove RBF (unsupported by Bitcoin Cash network nodes)
- use different directory for wallets and configuration
The Electron Cash software is NOT affiliated, associated, or endorsed by Electrum, electrum.org or the Electrum
developers.
If you are concerned about running Electron Cash binaries we recommend installing and/or running it from the github
source directly.
Usage
-----
When you first run Electron Cash it will use a different configuration directory to Electrum. On Unix it is
".electron-cash", and on Windows/MacOS it is "ElectronCash". Your wallet files will be copied from the Electrum
cofiguration directory (".electrum" on unix, "Electrum" on Windows/MacOS), if found. Initially transactions will show
up as unverified because Electron Cash is downloading the blockchain headers to verify the transactions. This can take
up to 10 minutes, but is only done once.
Ensure you are running Electron Cash and not Electrum by checking for "Electron Cash" in the title bar wording. Some
users installing from setup.py have reported conflicts if both Electrum and Electron Cash are installed in parallel
that way.
We STRONGLY recommend you get comfortable and only send a small amount of Bitcoin Cash coins at first, to yourself,
to confirm the network is processing your transactions as expected.
Bitcoin Cash hard forks after the 6th block with timestamp greater than 1 August 2017, 12:20 UTC has been mined. The
seventh block must be greater than one million bytes in size.
The Bitcoin Cash fork enforces a new signing scheme which is incompatible with the legacy chain. Electron Cash only
signs transactions using this scheme, so its transactions are only valid on the Bitcoin Cash hard fork after the fork
has occurred.
If you want to send Bitcoin before the fork, or Segwitcoins after the fork, you should continue to use the standard
Electrum client, Electron Cash will not work.
Once the network forks, it will take time for the Electrum server network to split into servers of the Segwit fork, and
servers of the Bitcoin Cash fork. You should ensure you are connected to a Bitcoin Cash Electrum server in order to
send transactions successfully. Some servers that will be serving the Bitcoin Cash fork are:
electrum-abc.cascharia.com via SSL port 50002
electrum-abc.criptolayer.net via SSL port 50012
180.235.49.196, 35.185.209.69 and 35.197.25.235 TCP port 50001 and SSL port 50002
There will likely be other servers available; please check their banners in the Console tab (View|Show Console).
Hardware Wallets
----------------
Since Bitcoin Cash enforces a new signing scheme, hardware wallet vendors need to supply new firmware and/or libraries
for the hardware to be able to sign transactions correctly. Currently such libraries and firmware do not exist, so you
cannot use your hardware wallets with Electron Cash.
To use Electron Cash with your hardware-wallet coins you will need to restore your wallet as a software Electron Cash
BIP44 wallet from its seed so that Electron Cash can sign the transactions itself. Since this exposes your coins to
risk you may want to wait for the 3rd party software to be developed and integrated instead.
Two-factor Authentication (2FA) Wallets
---------------------------------------
For the same reason as Hardware Wallets above, 2FA wallets need Trustedcoin to perform new Bitcoin Cash-style
signatures for their transactions to be valid on the Bitcoin Cash fork. If third party support appears we will attempt
to integrate it.
Multisig
--------
For a multisig transaction to be valid on the Bitcoin Cash fork, each signature must be done thew new Bitcoin Cash way,
so each signature must be performed with Electron Cash or other Bitcoin Cash-compatible software.
Unfortunately Electron Cash does not currently work with multisig wallets as Electrum's serialization format for
transferring transactions between cosigners is incomplete. We intend to fix this.
Miscellaneous
-------------
Electrum 2.9 has new code to deal with chain forks which may have outstanding (pre-existing in Electrum)
bugs and problems. Since this package forks that code it will contain those issues.
If you have problems syncing to the correct chain fork (take a look at the Overview Tab in the "Network" window (in
Menu "Tools") to see information about chain forks your client knows about), you can try to remove everything except
"wallets" directory and "config" file from your Electron Cash directory.
Electron Cash 3.0 -- This is now on Python 3. Make sure all python commands are on python 3 and any needed
modules/libraries are imported into pyhon 3. The build is deterministic for windows (everyone should get
the same binary because of customization to Pyinstaller that was done by Electrum team, as well as separate
repos for locales and icons). The fee upgrades may not be visible for existing wallet owners
unless you reset the max fee in preferences or remove the config file. There is no minimum fee on the client
side. Be careful sending too low of a fee (lower than 1 satoshi/byte) or your transaction may get stuck,
and there is no warning message.
# Release 2.9.2
* force headers download if headers file is corrupted
* add websocket to windows builds
* fix initial headers download
* validate contacts on import
* command-line option for locktime
# Release 2.9.3
* Improved code to force wallet to stay on Bitcoin Cash chain
* Removed dynamic fees. Fees are now simple Sat/Byte model
* Add Coin_Type 145 for Bitcoin Cash for bip39 seed imports
* Use bitcoincash URI prefix for receiving and QR codes
# Release 2.9.4
* Implement new Difficulty Adjustment Algorithm for Nov 13, 2017 Hard Fork
* Change ticker symobl from BCC to BCH
* Implement changes to allow simultaneous installation with Electrum
* Upgrade to PyQt5
* Various fixes for hardware wallets
* Remove 2FA for new wallet creation
* Remove feature to copy electrum wallet files
# Release 3.0
* upgrade to Python3 and PyQt5
* Build is done deterministically for windows
* improve fee policy
# Release 3.1
* Multiple address format support. Electron Cash supports input of cashaddr
addresses, legacy bitcoin addresses, and BitPay addresses anywhere
where a legacy address used to be accepted.
* Only display of cashaddr and legacy addresses is supported. You can
toggle the display format in the Appearance tab of the Preferences
dialog window; alternatively you can press the converter icon
button in the toolbar at the bottom of the main window. Hardware
wallets will probably show the legacy format until their firmware is
updated.
* An address converter tab can convert between all 3 address formats.
To see it, choose to show it from the View menu.
* At some stage support for BitPay address format will be removed, and
at some later stage support for display of legacy addresses will also
be removed.
* The fee slider has been adjusted to range from 1 to 10 sats/byte.
* Many bug fixes and improvements
# Release 3.1.1
* Requires Python 3.5 or greater
* Fixes JSONPRC security threat
* Fixes included for ledger for windows
# Release 3.1.2
* Additional security improvements related to JSONRPC
# Release 3.1.3
* Android only release for security fixes
# Release 3.1.5
* Various bug fixes
# Release 3.1.6
* Enable Bip70 payment requests for merchants like BitPay.
* Prohibit unconfirmed inputs on payment request (invoice) payments
because Bitpay will reject them anyway.
* Remove Bitpay address format from address converter as Bitpay is
now fully on CashAddr.
* Introduce 'cash' moniker for micro bitcoin
# Release 3.2
* restore disabled script opcodes (May 2018 HF)
* network protocol version bump to 1.2
* ledger: cashaddr support and various fixes
* more block explorers
* other bugfixes and improvements
# Release 3.3
* Add external plugins feature. Please see https://github.com/Electron-Cash/Electron-Cash/blob/master/plugins/README.rst and pay special attention to the risks involved with running external plugins.
* Various bugfixes and improvements
# Release 3.3.1
* Add OP_RETURN feature.
* Upgraded fee interface allowing lower fees with a custom fee rate.
# Release 3.3.2
* UTXO (coin) level freezing (accessible from Coins tab)
* Bugfix to network code reared its head when user switches forks in unlikely circumstances
* Checkpoint code (ElectrumX 1.4) protocol upgrade for faster blockchain header downloads
* Updated servers list
* BitPay support now works flawlessly
* Fork icon indicates chain splits to allow user to select an alternate chain
* UI glitches fixed
* Various bug fixes (address exceptions)
* Translations on Windows working again
* More Spanish language translations!
* Mac: bitcoincash: URLs working
* Mac: Bitpay URLs working
# Release 3.3.3
* Added native elliptic curve cryptography using libsecp256k1 (1000x speedup on tx signing in some cases)
* MacOS QR Reader now works.
* Windows QR Reader now works.
* Various performance fixes -- app should be able to handle much larger wallets now with many UTXOs
* Nework layer fixups
* Updated Checkpoint to the BCH chain.
* Various minor UI gltiches fixed
* MacOS binary size significantly reduced
* Support for OP_RETURN parameters to bitcoincash: URL
* Allow 1-of-1 multisig wallets
* Server list update
# Release 3.3.4
* Anti-Phishing protection for all platforms. Server-provided text will not
appear in user-facing GUI windows anymore. Server error messages are instead
parsed and mapped to predefined strings.
* "Import Labels" now works.
* Memory usage of the app has been reduced -- especially with multiple wallets.
* Upgrade prebuilt Windows and MacOS binary to use newer PyQt5 5.11.3.
# Release 3.3.5
* Added ability to specify raw hex op_return data in Send tab
* Added server options for: "Preferred" and "Banned" in Network Dialog, and an
option to connect to only preferred servers.
* LabelSync plugin now works properly
* Cosigner pool plugin fixups -- it should work much better now!
* Cashaddr is now default on new installs
* OSX packaging fixes (code signature should stay dynamically valid now)
* Updated Trezor plugin to trezorlib-0.11.x (#1089)
* Many bugs and quirks fixed from issue tracker
* Performance improvements
* Memory leaks fixed
# Release 3.3.6
* Support for op_return_raw= URI parameter to 'bitcoincash:' URIs. This
paremeter is for raw hex to be used as the OP_RETURN payload (0x6a will
always be prefixed to this raw hex.) (markblundeberg)
* Testnet wallets were using the wrong bip32 key headers. They SHOULD
accept & generate tpub/tprv on testnet but instead the keys generated were
xpub/xprv. This was not to spec and has been fixed but, it may mean you will
need to regenerate your testnet wallets form mnemonic seed. :/ (cculianu)
* Added "Check for updates..." mechanism which is enabled by default
(check is done once per hour). See Preferences -> General to disable auto
check. Or Help -> "Check for updates..." for manual checking. (cculianu)
* Added "Dark" theme to UI. See Preferences -> General (cculianu)
* Fixed incompatibility bug where generated QR images were uppercase-only
BITCOINCASH: which caused problems with some buggy wallet implementations. We
switched back to generating 'bitcoincash:' (mixed-case) URIs, which is more
compatible. (cculianu)
* Added "Export contacts" facility to UI so you can export all your contacts to
a file. (Strangely, we had "Import contacts", but no export!) (cculianu)
* Added "Wallet -> Rebuild history" to Qt GUI. Allows users to re-synch entire
wallet from server, on demand. (commit: a72b2a72, cculianu)
* Request fee estimate from ElectrumX/ElectronX server every 20 minutes
(cculianu)
* Performance improvements for wallets with huge numbers of tx's (cculianu)
* Trezor bugfix (SomberNight)
* Append HMAC to Bitbox messages (TheCharlatan)
* Android fixes (mhsmith)
* Various internal bugfixes and code refactoring (cculianu, ecdsa, SomberNight)
* servers.json updated (torusJKL)
* Fixed a compatibility issue with Qt 5.12 (SomberNight, cculianu)