Coder Social home page Coder Social logo

Comments (11)

BullishNode avatar BullishNode commented on June 13, 2024 1

We could add ischange label to BIP329
BullishNode/bips@master...ischange

from bullbitcoin-mobile.

BullishNode avatar BullishNode commented on June 13, 2024 1

FYI @i5hi we can make sure the "frozen" label we have in the wallet is exported as "spendable": "false"

from bullbitcoin-mobile.

i5hi avatar i5hi commented on June 13, 2024 1

FYI @i5hi we can make sure the "frozen" label we have in the wallet is exported as "spendable": "false"

!spendable without origin = not your address
!spendable with origin = your address and you've wanted it not to be spent (marked as frozen)

?

from bullbitcoin-mobile.

i5hi avatar i5hi commented on June 13, 2024 1

We could add ischange label to BIP329 BullishNode/[email protected]

We could stay by the existing spec if we add the unhardened path to the origin field as well

Something like this:

{ "type": "addr", "ref": "bc1q34aq5drpuwy3wgl9lhup9892qp6svr8ldzyy7c", "label": "Address", "origin": "wpkh([d34db33f/84'/0'/0']/0/1)]" }

This also gives the index and helps to know where to start a wallets address generation from (although in our case bdk does that).

Although BIP329 does say this:

"If present, the optional origin property must contain an abbreviated output descriptor (as defined by BIP380[3]) describing a BIP32 compatible originating wallet, including all key origin information but excluding any actual keys, any child path elements, or a checksum. This property should be used to disambiguate transaction labels from different wallets contained in the same export, particularly when exporting multiple accounts derived from the same seed."

from bullbitcoin-mobile.

i5hi avatar i5hi commented on June 13, 2024

BIP329 Reference

from bullbitcoin-mobile.

BullishNode avatar BullishNode commented on June 13, 2024

Doest BIP329 labelling take into account whether an address is external or internal?

from bullbitcoin-mobile.

i5hi avatar i5hi commented on June 13, 2024

Nope. Just whether its spendable or not. We will have to keep track separately of whether the address is change.

from bullbitcoin-mobile.

i5hi avatar i5hi commented on June 13, 2024

We could add ischange label to BIP329 BullishNode/[email protected]

We could stay by the existing spec if we add the unhardened path to the origin field as well

Something like this:

{ "type": "addr", "ref": "bc1q34aq5drpuwy3wgl9lhup9892qp6svr8ldzyy7c", "label": "Address", "origin": "wpkh([d34db33f/84'/0'/0']/0/1)]" }

This also gives the index and helps to know where to start a wallets address generation from (although in our case bdk does that).

from bullbitcoin-mobile.

i5hi avatar i5hi commented on June 13, 2024

BIP380 does define origin as just fingerprint and hardened path.

so we would need an isChange if we wanted to to know but we can always sync our wallet and know which of those addresses are change.

from bullbitcoin-mobile.

i5hi avatar i5hi commented on June 13, 2024

@mocodesmo

  • bip329 methods

  • implement read/writeToFile for List;

File naming convention,for now, can be ${wallet.id}.bip329

  • implement encrypt/decrypt for List (for now use a fixed key of bullbitcoin-test) I will later update this to use a key derived from the seed linked to the wallet.

  • wallet methods

  • importBIP329 which will read through wallet.transactions,myAddressBook,externalAddressBook and update only the label field based on the List. Warn the user of overwrites.

  • exportBIP329 which will take all the entires of transactions,my/externalAddressBook and write them into a List

  • ui

It doesnt need to have a separate page, for now, just two clickable text which opens the file manager to read/write to a fixed expected path.

from bullbitcoin-mobile.

i5hi avatar i5hi commented on June 13, 2024

Gents...We have arrived!

from bullbitcoin-mobile.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.