Giter Club home page Giter Club logo

bip174.org's People

Contributors

afilini avatar danielabrozzoni avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

bip174.org's Issues

[FEATURE] Diff tool

Great tool! Nice work.

Would be really sweet to support a diff tool, either parsed/serialized like you have now or base64 diff

  • PSBT1 vs PSBT2 parsed diff
  • PSBT1 vs PSBT2 base64 diff
  • PSBT1 vs PSBT1-partially-signed, etc.

Cheers

Is the website bip174.org down?

I've been looking for something like this awesome tool while developing PayJoins and PSBTv2 for a while but noticed the website is down. I saw PSBT-toolkit, but that needs to be compiled and run on my machine from scala .

Since this is all client side wasm couldn't it be hosted by github pages? That would be mega convenient and reliable based on my experience.

Edit: maybe it's server side rendered now, but I guess it could be all done in the browser.

Disable spell check

Description

While editing text, the inputs looks like this:

image

Possible fix

Add spellcheck="false" attribute to the textarea element.

PSBT global xpubs not being displayed?

Steps:

  1. Input this test case from the spec: cHNidP8BAFICAAAAAZ38ZijCbFiZ/hvT3DOGZb/VXXraEPYiCXPfLTht7BJ2AQAAAAD/////AfA9zR0AAAAAFgAUezoAv9wU0neVwrdJAdCdpu8TNXkAAAAATwEENYfPAto/0AiAAAAAlwSLGtBEWx7IJ1UXcnyHtOTrwYogP/oPlMAVZr046QADUbdDiH7h1A3DKmBDck8tZFmztaTXPa7I+64EcvO8Q+IM2QxqT64AAIAAAACATwEENYfPAto/0AiAAAABuQRSQnE5zXjCz/JES+NTzVhgXj5RMoXlKLQH+uP2FzUD0wpel8itvFV9rCrZp+OcFyLrrGnmaLbyZnzB1nHIPKsM2QxqT64AAIABAACAAAEBKwBlzR0AAAAAIgAgLFSGEmxJeAeagU4TcV1l82RZ5NbMre0mbQUIZFuvpjIBBUdSIQKdoSzbWyNWkrkVNq/v5ckcOrlHPY5DtTODarRWKZyIcSEDNys0I07Xz5wf6l0F1EFVeSe+lUKxYusC4ass6AIkwAtSriIGAp2hLNtbI1aSuRU2r+/lyRw6uUc9jkO1M4NqtFYpnIhxENkMak+uAACAAAAAgAAAAAAiBgM3KzQjTtfPnB/qXQXUQVV5J76VQrFi6wLhqyzoAiTACxDZDGpPrgAAgAEAAIAAAAAAACICA57/H1R6HV+S36K6evaslxpL0DukpzSwMVaiVritOh75EO3kXMUAAACAAAAAgAEAAIAA
  2. Can't find tpubDBkJeJo2X94Yq3RVz65DoUgyLUkaDrkfyrn2VcgyCRSKCRonvKvCF2FpYDGJWDkdRHBajXJGpc63GnumUt63ySvqCu2XaTRGVTKMYGuFk9H or tpubDBkJeJo2X94YsvtBEU1eKoibEWiNv51nW5iHhs6VZp59jsE6nen8KZMFyGHuGbCvqjRqirgeMcfpVBkttpUUT6brm4duzSGoZeTbhqCNUu6 anywhere on the page

By comparison, here is the output using buidl:

>>> from buidl.psbt import PSBT

>>> psbt_b64 = "cHNidP8BAFICAAAAAZ38ZijCbFiZ/hvT3DOGZb/VXXraEPYiCXPfLTht7BJ2AQAAAAD/////AfA9zR0AAAAAFgAUezoAv9wU0neVwrdJAdCdpu8TNXkAAAAATwEENYfPAto/0AiAAAAAlwSLGtBEWx7IJ1UXcnyHtOTrwYogP/oPlMAVZr046QADUbdDiH7h1A3DKmBDck8tZFmztaTXPa7I+64EcvO8Q+IM2QxqT64AAIAAAACATwEENYfPAto/0AiAAAABuQRSQnE5zXjCz/JES+NTzVhgXj5RMoXlKLQH+uP2FzUD0wpel8itvFV9rCrZp+OcFyLrrGnmaLbyZnzB1nHIPKsM2QxqT64AAIABAACAAAEBKwBlzR0AAAAAIgAgLFSGEmxJeAeagU4TcV1l82RZ5NbMre0mbQUIZFuvpjIBBUdSIQKdoSzbWyNWkrkVNq/v5ckcOrlHPY5DtTODarRWKZyIcSEDNys0I07Xz5wf6l0F1EFVeSe+lUKxYusC4ass6AIkwAtSriIGAp2hLNtbI1aSuRU2r+/lyRw6uUc9jkO1M4NqtFYpnIhxENkMak+uAACAAAAAgAAAAAAiBgM3KzQjTtfPnB/qXQXUQVV5J76VQrFi6wLhqyzoAiTACxDZDGpPrgAAgAEAAIAAAAAAACICA57/H1R6HV+S36K6evaslxpL0DukpzSwMVaiVritOh75EO3kXMUAAACAAAAAgAEAAIAA"

>>> PSBT.parse_base64(psbt_b64)
Tx:

tx: c6176cf469d705b224046a55aa7128c533fd11fb74c37e5fbb48bbea6ff1523d
version: 2
locktime: 0
tx_ins:
{self.prev_tx.hex()}:{self.prev_index}
tx_outs:
499990000:OP_0 7b3a00bfdc14d27795c2b74901d09da6ef133579 


PSBT XPUBS:
{b"\x04\x88\xb2\x1e\x02\xda?\xd0\x08\x80\x00\x00\x00\x97\x04\x8b\x1a\xd0D[\x1e\xc8'U\x17r|\x87\xb4\xe4\xeb\xc1\x8a ?\xfa\x0f\x94\xc0\x15f\xbd8\xe9\x00\x03Q\xb7C\x88~\xe1\xd4\r\xc3*`CrO-dY\xb3\xb5\xa4\xd7=\xae\xc8\xfb\xae\x04r\xf3\xbcC\xe2": 
HD: tpubDBkJeJo2X94Yq3RVz65DoUgyLUkaDrkfyrn2VcgyCRSKCRonvKvCF2FpYDGJWDkdRHBajXJGpc63GnumUt63ySvqCu2XaTRGVTKMYGuFk9H
Path: d90c6a4f:m/174'/0'
, b'\x04\x88\xb2\x1e\x02\xda?\xd0\x08\x80\x00\x00\x01\xb9\x04RBq9\xcdx\xc2\xcf\xf2DK\xe3S\xcdX`^>Q2\x85\xe5(\xb4\x07\xfa\xe3\xf6\x175\x03\xd3\n^\x97\xc8\xad\xbcU}\xac*\xd9\xa7\xe3\x9c\x17"\xeb\xaci\xe6h\xb6\xf2f|\xc1\xd6q\xc8<\xab': 
HD: tpubDBkJeJo2X94YsvtBEU1eKoibEWiNv51nW5iHhs6VZp59jsE6nen8KZMFyGHuGbCvqjRqirgeMcfpVBkttpUUT6brm4duzSGoZeTbhqCNUu6
Path: d90c6a4f:m/174'/1'
}

Psbt_Ins:
[
TxIn:
{self.prev_tx.hex()}:{self.prev_index}
Prev Tx:
None
Prev Output:
500000000:OP_0 2c5486126c4978079a814e13715d65f36459e4d6ccaded266d0508645bafa632 
Sigs:
{}
RedeemScript:
None
WitnessScript:
OP_2 029da12cdb5b235692b91536afefe5c91c3ab9473d8e43b533836ab456299c8871 03372b34234ed7cf9c1fea5d05d441557927be9542b162eb02e1ab2ce80224c00b OP_2 OP_CHECKMULTISIG 
PSBT Pubs:
{b'\x02\x9d\xa1,\xdb[#V\x92\xb9\x156\xaf\xef\xe5\xc9\x1c:\xb9G=\x8eC\xb53\x83j\xb4V)\x9c\x88q': 
Point: 029da12cdb5b235692b91536afefe5c91c3ab9473d8e43b533836ab456299c8871
Path: d90c6a4f:m/174'/0'/0
, b"\x037+4#N\xd7\xcf\x9c\x1f\xea]\x05\xd4AUy'\xbe\x95B\xb1b\xeb\x02\xe1\xab,\xe8\x02$\xc0\x0b": 
Point: 03372b34234ed7cf9c1fea5d05d441557927be9542b162eb02e1ab2ce80224c00b
Path: d90c6a4f:m/174'/1'/0
}
ScriptSig:
None
Witness:
None
]

Psbt_Outs:
[
TxOut:
499990000:OP_0 7b3a00bfdc14d27795c2b74901d09da6ef133579 
RedeemScript:
None
WitnessScript
None
PSBT Pubs:
{b'\x03\x9e\xff\x1fTz\x1d_\x92\xdf\xa2\xbaz\xf6\xac\x97\x1aK\xd0;\xa4\xa74\xb01V\xa2V\xb8\xad:\x1e\xf9': 
Point: 039eff1f547a1d5f92dfa2ba7af6ac971a4bd03ba4a734b03156a256b8ad3a1ef9
Path: ede45cc5:m/0'/0'/1'
}
]

Extra:
{}

P2TR Support

I get a "PsbtEncoding(Psbt(NonStandardSigHashType(0)))" error when the transaction contains p2tr. Would be great if taproot support was added.

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.