Pages:
Author

Topic: A full shell script implementation of bitcoin ? - page 4. (Read 14288 times)

sr. member
Activity: 350
Merit: 252
probiwon.com
also, Kademlia network works fine without kickstarters and other things like this
legendary
Activity: 1596
Merit: 1100
Shell script would be fine for a connect-work-disconnect method of working.

But it is grossly ineffective for maintaining a long-running P2P network node, where long-lasting TCP connections are preferred.
legendary
Activity: 1288
Merit: 1080
At least it would be trivial to have small CL tools to perform bitcoin operations in this system, such as tools to import and export transactions, blocks and keypairs to/from normal files.  *nix CL shells, such as Bash, are centered around the manipulation of data streams as files, and it's an incredibly powerful model.

Exactly.

I also wonder if all communications could not be done using HTTP.  Blocks would be published via http GET method (giving the hash of the preceding block), and transactions could be sent via POST method.

One advantage of using  http would be that it would be very hard for governments to forbid.
legendary
Activity: 1708
Merit: 1010
At least it would be trivial to have small CL tools to perform bitcoin operations in this system, such as tools to import and export transactions, blocks and keypairs to/from normal files.  *nix CL shells, such as Bash, are centered around the manipulation of data streams as files, and it's an incredibly powerful model.
legendary
Activity: 1658
Merit: 1001
That would be one big dependency hell...
legendary
Activity: 1288
Merit: 1080
The thread
https://bitcointalksearch.org/topic/http-bootstrapping-2459

make me feel like suggesting a full shell implementation of bitcoin.  I've actually been thinking about this for some time but I'd like to see if other people would be interested in such a crazy project.

Here is the kind of architecture I'd like to see :

- nodes communicate transactions via IRC, XMPP or similar (a shell script communicating with such a protocol should be easy to implement) ;
- each node publishes its blocks via its own http server (possibly via a TOR hidden service to avoid NAT traversal problems) ;
- each node also publishes the list of nodes it is currently connected to ;
- nodes store their blocks using GnuNet or maybe a NoSQL database such as MongoDB  (easily scripted) ;
- cryptographic functions are performed via the openssl command line ;
- blocks and wallets are stored in an human readable ASCII format ;
Pages:
Jump to: