50 sats \ 2 replies \ @ek OP 20 Oct 2022 \ parent \ on: Is there an interactive bitcoin protocol tool similar to Swagger? bitcoin
Thanks for replying.
Haha, yeah, me too even though I noticed it just a few months ago. Shows that the bitcoin protocol is indeed very relevant even though most people don't care about bitcoin (yet) :)
Yes, but I am not interested in the RPC-API. I want to see the raw bytes and not some frontend showing me already parsed JSON.
I want to see the data resulting in this JSON to get a deep understanding.
Yeah, that was also my experience.
I will see if I can get a quick PoC of this going in the next days :)
I will see if I can get a quick PoC of this going in the next days :)
I think it would be a valuable learning tool to be able to communicate directly with a node like this in a human-readable way. Great idea!
It is almost as if what you want is a REPL, in some programming language that behaves somewhat like telnet. When it first loads up you will be "greeted" with a version message, and your job now is to reply with a message of your own.
Because this whole thing is happening in a REPL, you should be able to define functions to make your life easier when constructing/parsing messages, but initially there would be only a small library of simple functions and datatypes available to you.
You can then build up your own library of functions and datatypes.
The whole thing could be turned into a game (or contest?). An initial goal of the game is to not be banned by the node. The next goal might be to ask for data, and eventually more complex goals could be achieved including constructing and broadcasting a transaction.
It is fun to think about. Though I wonder how many people would actually play such a game?
Maybe if the node paid you some sats as you progress, people would be interested?
reply
I would play such a game!
The comparison with a REPL sounds very interesting, thank you!
However, I think making a game or contest with sats involved would lead to bad incentives. Preventing that someone just pipes the output of the other node to a node of their own (MITM) sounds hard.
So I think this would only be useful for education. But should be enough :)
Thanks for your reply! Very inspiring :)
reply