Commit graph

439 commits

Author SHA1 Message Date
Craig Raw
74d2bfec24 add krux wallet model 2023-10-05 10:35:09 +02:00
Craig Raw
73eed3e292 add additional test for checking if whirlpool mix wallet 2023-09-29 14:25:28 +02:00
Craig Raw
2b7b650fae improve renaming wallet keystore labels for uniqueness 2023-08-30 15:21:31 +02:00
Craig Raw
bae4ce6605 add support for named xpubs in output descriptors 2023-08-30 14:21:06 +02:00
Craig Raw
8313d16e97 fix single character multisig threshold parsing issue 2023-07-23 13:12:51 +02:00
Craig Raw
d7b97c99dc add support for parsing compactseedqr without header or ec bytes 2023-07-23 12:45:43 +02:00
Craig Raw
e15eb7c7f3 improve handling of invalid bip322 signatures 2023-07-18 12:25:24 +02:00
Craig Raw
38b04b8e0b fix input vbytes type from int to double 2023-07-11 11:24:07 +02:00
Craig Raw
8484dd397b use txo filters for all wallet transaction output filtering 2023-07-11 09:07:22 +02:00
Craig Raw
6a7d2aac28 throw exception for bip322 multisig signatures 2023-07-04 09:21:48 +02:00
Craig Raw
f47d5de392 minor refactor of bip322 implementation 2023-07-04 08:50:49 +02:00
Craig Raw
e965a9ddd7 add script type checks to bip322 implementation 2023-07-03 13:15:10 +02:00
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