Code Monkey home page Code Monkey logo

Comments (10)

yknl avatar yknl commented on August 15, 2024

Seems like you did not go ahead with a distinct derivation path? Any reasons for this? Using the default taproot derivation path is problematic for Bitcoin wallets that want to add support for ordinals due to mixing with regular outputs.

from ord.

casey avatar casey commented on August 15, 2024

@yknl Can you describe your concern a little more fully? I think I understand what you might be getting at, but I don't want to guess. What is the way in which a different derivation path would help other bitcoin wallets?

from ord.

yknl avatar yknl commented on August 15, 2024

An existing Bitcoin wallet might already be using the taproot derivation path for regular transactions. If they add support for ordinals, outputs would be mixed with regular payment outputs. Wallet balance will need to be calculated by excluding the ordinal outputs as well. You can have some kind of system to keep track of and separate the outputs, but that quickly becomes very complex. Using a separate derivation path just for ordinals makes it much easier for wallets. All your ordinal outputs are on a different path or "separate wallet" essentially, no special logic required to manage the wallet.

It would be great to standardize on a new derivation path so that more Bitcoin wallets like what we're building at Xverse can add support.

from ord.

casey avatar casey commented on August 15, 2024

Gotcha, that makes total sense. I think this would be a great idea. First step is to figure out what the alternative derivation path should be.

from ord.

yknl avatar yknl commented on August 15, 2024

Since we're still dealing with Bitcoin. We probably want to use a different "purpose" here.

m / purpose' / coin_type' / account' / change / address_index

BIP44 for reference

It seems like all the "purposes" currently used are the BIP numbers in which it was proposed. If that's the case, it might be difficult get one. A BIP might be rejected depending on how Bitcoin core devs feel about ordinals.

Otherwise a unique coin type can be used, perhaps coin type 100000000 for the 100M sats in each bitcoin?

m/86'/100000000'/0'/0/0

Still available according to SLIP44:

from ord.

casey avatar casey commented on August 15, 2024

Nice, purpose' seems like the right thing. I'm going to mark this as blocked until the BIP is merged or rejected.

from ord.

friedger avatar friedger commented on August 15, 2024

I suggest to use purpose 1408' as it is the number of the PR to the bip repo.

from ord.

casey avatar casey commented on August 15, 2024

This is waiting on a BIP number to come up with a derivation path.

from ord.

btcxnft avatar btcxnft commented on August 15, 2024

i sent ordinals from sparrow wallet to a xverse ordinal address. the transaction confirmed the ordinals where in the wallet. i then uninstalled xverse ,later i reinstalled xverse and my address changed.and now my ordinals are stuck on my old address.can it be recovered? this is Sparrows address bc1p5302u8kamv0jltap324unpw3pmle2lu95px6rlx34yu9rcfh629sn7cjhu
and this is Xverse address bc1p8vdtr2f9zakzyxu43pdlutd56leaekmvn46yf2uf5gv28k06f74sggtfp2
this is the Transaction ID b7c5f4e23a833158280479b7d5ebf71ba23b202532ada4f990f9d3c89b53f23c

from ord.

casey avatar casey commented on August 15, 2024

I think actually this is probably a bad idea. Adding an additional derivation path is just a recipe for confusion, and makes it hard to use non-ordinals tools with ordinal wallets.

from ord.

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.