Commit graph

423 commits

Author SHA1 Message Date
Craig Raw
c0555c3fb0 implement bip322 for p2wpkh and p2tr singlesig addresses 2023-06-30 12:50:43 +02:00
Craig Raw
4341973acd add method for sha256 deserialization mappers 2023-06-30 08:59:08 +02:00
Craig Raw
d5abf351be retain utxo frozen status on wallet refresh 2023-06-23 09:51:44 +02:00
Craig Raw
a8df17ff5e continue with transaction parsing if pushdata opcode is found with invalid data length 2023-06-05 11:41:41 +02:00
Craig Raw
d3e003f76e fix reading of compact size int as unsigned short when parsing psbts 2023-06-04 10:01:42 +02:00
Craig Raw
5b9b3043a6 minor changes to support adding additional rbf tx inputs 2023-06-01 15:30:06 +02:00
Craig Raw
b26c5e5218 support compact seedqrs with high ec 2023-05-15 15:29:18 -05:00
Craig Raw
fe19c86544 add functionality to determine possible last bip39 words 2023-03-22 15:49:18 +02:00
Craig Raw
7eab644cec support serialization of psbts without non witness utxo input entries 2023-03-07 13:16:49 +02:00
Craig Raw
0f78efc373 support converting xprvs to xpubs in output descriptors 2023-02-28 09:55:51 +02:00
Craig Raw
d0da764aad add bsms model, additional taproot signing check 2023-02-23 11:59:47 +02:00
Craig Raw
caed93ca6d minor additions to support bip129 2023-02-22 10:19:02 +02:00
samouraidev
46c4b33206 Modify group value test 2023-02-17 09:11:34 +01:00
Craig Raw
22e70fd8e5 fix taproot signature hash for single | anyonecanpay 2023-02-13 17:04:20 +02:00
Craig Raw
0002d6bae6 support detection of utf8 string script chunks 2023-02-13 16:35:40 +02:00
Craig Raw
883b1c95b4 recompile secp256k1 on osx 10.13.6 2023-02-10 09:22:39 +02:00
Craig Raw
d48054ac6b add support for creating output descriptors without rendering xpubs 2023-02-08 08:02:22 +02:00
Craig Raw
b487396417 add support for external message signers 2023-01-30 09:40:35 +02:00
Craig Raw
e2a4c32db3 add support for external psbt signers 2023-01-27 10:38:48 +02:00
Craig Raw
a14b23f2fa add satscard for potential future use 2023-01-26 15:46:56 +02:00
Craig Raw
2168c56de9 add tapsigner, minor refactoring 2023-01-25 09:20:37 +02:00
Craig Raw
ca98d4d9b6 add minimal wallet copy functionality 2022-12-15 08:28:16 +02:00
Craig Raw
692f23e026 add block header serialization and output descriptor normalize functions 2022-12-08 08:40:49 +02:00
Craig Raw
fa18ec9d45 add walletconfig 2022-11-14 10:59:33 +02:00
Craig Raw
7c34ec7c3b add ability to remove root logging appender 2022-10-17 13:29:53 +02:00
Craig Raw
f183146d13 add linux aarch64 libsecp256k1 2022-10-06 14:35:29 +02:00
Craig Raw
60cb3ed85f ignore invalid characters when calculating output descriptor checksum 2022-09-26 13:47:54 +02:00
Craig Raw
189ef88b08 verify signatures immediately after signing as per recommendation in bip340 2022-09-02 11:27:12 +02:00
Craig Raw
311afd0409 add eps wallet model 2022-08-22 14:32:20 +02:00
Craig Raw
aa459d0084 ensure finalizing psbt wallet purpose nodes have no children 2022-08-22 11:32:45 +02:00
Craig Raw
8cdea77562 refactor supported bip47 script type lists 2022-08-04 11:13:27 +02:00
Craig Raw
ddaf698c10 avoid saving address data where master wallet has a passphrase 2022-08-01 14:16:20 +02:00
Craig Raw
ca833fbf68 use locale-insensitive lowercase and uppercase functions 2022-07-29 09:44:57 +02:00
Craig Raw
8a6d2da5c9 disallow duplicate xpubs in multisig wallet keystores 2022-07-25 14:46:54 +02:00
Craig Raw
ce90e29284 allow psbts without previous utxo data 2022-07-25 13:36:38 +02:00
Craig Raw
b2f5f5ffeb spend change from notification transactions only if necessary 2022-07-21 12:29:21 +02:00
Craig Raw
40dab59337 remove deprecated finalize method 2022-07-21 10:44:06 +02:00
Craig Raw
b4b2534e7a add fee rate retreival to blocktransaction 2022-07-20 16:54:39 +02:00
Craig Raw
f10688279a add bip38 decryption functionality and tests 2022-07-19 13:21:21 +02:00
Craig Raw
5de3abd362 store address data on wallet nodes 2022-07-18 16:11:59 +02:00
Craig Raw
9ae1f68dc4 address and related optimizations 2022-07-15 13:42:27 +02:00
Craig Raw
fefebbabb5 remove key derivation method 2022-07-14 16:07:55 +02:00
Craig Raw
d489aa6af9 follow up 2022-07-14 15:37:48 +02:00
Craig Raw
67bc479ae9 prevent concurrent modification exception while copying node tree 2022-07-14 15:30:39 +02:00
Craig Raw
c4d2041a77 optimize retrieving unspent utxos 2022-07-14 15:08:01 +02:00
Craig Raw
377843a4a5 add performance optimization when requesting purpose node for deep wallets 2022-07-14 14:48:05 +02:00
Craig Raw
6d0d5b7f62 use an address node cache to avoid repeat wallet address lookups 2022-07-14 13:20:15 +02:00
Craig Raw
bd01cb8730 add method to warm the pubkey cache 2022-07-14 09:55:46 +02:00
Craig Raw
cd1e21ebaa prefer using libsecp256k1 to derive public keys from private 2022-07-12 10:43:20 +02:00
Craig Raw
d05ec39df7 optimize utxo selection through local variable caching of wallet data reused in computation 2022-07-07 11:08:39 +02:00
Craig Raw
1a20e0381c always find node for first input when retrieving historical notification txes 2022-06-06 13:38:06 +02:00
Craig Raw
7f2c5a5a59 rename taproot sighash default and avoid conflation with sighash all 2022-05-30 16:27:55 +02:00
Craig Raw
7535c876ba ensure dummy y value of taproot internal key is consistent 2022-05-25 16:14:26 +02:00
Craig Raw
a3ec868b75 add ledger nano s plus wallet model 2022-05-24 10:43:49 +02:00
Craig Raw
8e50815a3f preserve txo status when updating node outputs 2022-05-19 16:34:14 +02:00
Craig Raw
d24243ce20 set lower bound on bip47 account index 2022-05-19 12:29:56 +02:00
Craig Raw
38deacaeec add support for seedqr parsing 2022-05-17 08:02:24 +02:00
Craig Raw
eddd6406ef consider spent mempool outputs when checking max spendable amount for rbf txes 2022-05-12 10:56:00 +02:00
Craig Raw
ba86924503 add native libraries for aarch64 2022-05-06 17:34:00 +02:00
Craig Raw
9cb95f2f8c add psbt taproot output fields, jade wallet 2022-05-04 14:32:24 +02:00
craigraw
759ebb975c
Merge pull request #6 from satsen/master
avoid manual parsing of a bitcoin uri
2022-04-28 11:28:02 +02:00
Craig Raw
5b3712bfe0 dont add bip32 derived key field to taproot inputs 2022-04-26 14:57:24 +02:00
satsen
d9831bdcd0 Use URI instead of manual parsing 2022-04-13 16:58:38 +01:00
Craig Raw
20f4ac9657 ensure unique stonewall input txids for entire tx (not just per set) 2022-03-30 08:55:41 +02:00
Craig Raw
d1088fe9ee support psbt taproot bip32 derivation field, fix taproot signature verification 2022-03-29 11:49:49 +02:00
Craig Raw
74e32bab3d simplify automatic master wallet label 2022-03-22 09:14:29 +02:00
Craig Raw
88bd6ada98 disable bip47 support for taproot script type 2022-03-21 09:39:04 +02:00
Craig Raw
fe57ad3e7a set bip47 wallet label before creating addresses 2022-03-17 10:33:32 +02:00
Craig Raw
6401761530 automatically label new bip47 receive addresses to identify incoming bip47 payments 2022-03-17 09:44:47 +02:00
Craig Raw
04631be8c1 copy label on wallet copy 2022-03-04 10:35:20 +02:00
Craig Raw
0734757a17 support nested wallets 2022-03-02 13:34:10 +02:00
Craig Raw
956f59880e fix for retreiving notification tx data for non-zero bip47 accounts 2022-02-23 09:44:09 +02:00
Craig Raw
7bb07ab39e add bip47 keystores 2022-02-22 12:02:40 +02:00
Craig Raw
f73cabad3c remove unused copy labels method 2022-02-09 16:07:26 +02:00
Craig Raw
78359961f3 followup 2022-02-09 13:23:37 +02:00
Craig Raw
de87ab1102 add detached labels map to store labels during a wallet refresh 2022-02-09 11:38:23 +02:00
Craig Raw
ee732fb223 handle wif format private keys with uncompressed pubkeys 2022-02-03 12:43:14 +02:00
Craig Raw
9618c73c50 allow short wallet display name retrieval 2022-01-31 19:12:36 +02:00
Craig Raw
61317f15ac more nuanced wallet compare with master wallets first 2022-01-25 13:46:02 +01:00
Craig Raw
fe61c633ae performance optimisations 2022-01-20 17:12:00 +02:00
Craig Raw
8dca2ee3f0 add wallet watchLast field 2022-01-19 13:48:20 +02:00
Craig Raw
34bd72d87a get wif from eckey 2022-01-12 15:42:44 +02:00
Craig Raw
3a557e3af8 introduce general purpose hash index record 2022-01-09 11:05:17 +02:00
Craig Raw
083288061f rename gordian seed tool, support retrieving a keystore from an output descriptor more generally 2022-01-04 10:33:47 +02:00
Craig Raw
c1f6a1245e add seed tool wallet model 2021-12-16 10:06:06 +02:00
Craig Raw
d59da36506 return zero total when some input values are not available 2021-12-15 14:13:29 +02:00
Craig Raw
8ac3f47380 shuffle utxos within input sets 2021-12-15 10:10:55 +02:00
Craig Raw
6ac593f161 detect if output descriptor represents a cosigner 2021-12-14 11:20:45 +02:00
Craig Raw
60e989b946 follow up 2021-12-13 16:02:20 +02:00
Craig Raw
3131b265a5 ensure selected utxo sets retain stable ordering 2021-12-13 15:42:02 +02:00
Craig Raw
20ec0f95fb test for two person coinjoin 2021-12-01 14:13:58 +02:00
Craig Raw
16d348a91d add support for dumped private keys 2021-11-29 15:30:31 +02:00
Craig Raw
da14a9bf34 add retrieval of wallet nodes and history 2021-11-26 14:04:46 +02:00
Craig Raw
4a4a62f239 various changes to support soroban 2021-11-25 16:13:57 +02:00
Craig Raw
3a061cb73a remove taproot activation code, update libsecp256k1 libs 2021-11-17 14:49:22 +02:00
Craig Raw
8e49247832 introduce multipath derivations to output descriptors and use h for hardened indexes 2021-11-13 15:04:37 +02:00
Craig Raw
ebf7128ae5 support utxo sets in wallet tx 2021-11-12 15:54:22 +02:00
Craig Raw
f46d627755 allow zero length paths when parsing psbt key derivations 2021-11-10 15:43:11 +02:00
Craig Raw
6c03c4106a respect wallet labels when displaying name 2021-10-29 14:33:15 +02:00
Craig Raw
bdb9900d8d improve multi account wallet name display 2021-10-29 13:21:53 +02:00