BSV as a secure transport protocol

BSV as a secure transport protocol

In this second part of the “BSV as a” series, we examine the similarities of BSV to a networking protocol and its potential to act as a foundation for a new economy. If we look at how the internet via the TCP/IP protocol was crucial in bringing about the evolution of the entire new economy of digital shopping, we can start to appreciate the possibilities that BSV brings to the table.

When discussing network protocols it is often useful to refer back to the OSI model, which defines 7 layers of protocols which generally govern how computers talk to each other. When we speak of the internet, we normally refer to TCP/IP which is a combination of a layer 4 transport (TCP) and a layer 3 network (IP) protocol.

Bitcoin was conceived as a onion-like layered Peer-to-Peer network, with 2 distinct kinds of peers forming a 2 layered “mandala” topology. The outer layer of peers are the users and application servers, which generate and pass messages in the form of transactions to each other. The inner network of peers are mining nodes, which peer with other mining nodes in order to create blocks. The incentives for maintaining high bandwidth. connectivity between the 1st tier mining nodes are much greater than the 2nd tier users and application servers.

Because BSV is a network which self organizes there is no need for a central administrator, or gateways in the system. The core of the mining nodes acts essentially as the gateway routers on the internet, ensuring connectivity between all the clients. Due to the peer-to-peer nature of the mining nodes and the client network, there is a marked lack of any need for coordination among its actors. Much of these goals were originally part of the idea of the internet in the first place, which was conceived to be a resilient network which would be able to survive large outages (say from thermonuclear war) without widespread failure.

BSV as per its own whitepaper is described as a peer-to-peer electronic cash system. But what if Bitcoin was more than just a network system created to support electronic cash? What if it was an electronic cash system added to a network protocol, which happens to solve a lot of the remaining issues with our telecommunication networks today?

What are those issues?

  • Denial of Service attacks — Always a threat when you run a service which serves any public client without prejudice.
  • Security is not the default — PGP (encryption) though available is not widely used due to difficult UX.
  • While network messages can be private, no public record of them are kept, and therefore nothing is attestable.
  • No built-in money implementation — relying instead on credit cards for e-commerce. Credit cards, while sufficient, require third party intermediaries to safeguard your private data, and become targets for hackers.

If you think of BSV as a network protocol, then it is a transport layer somewhat similar to SCTP which does not require a hierarchical distribution of addresses like IP, and is concerned with the transport of whole messages from sender to receiver. Bitcoin public addresses can be self assigned. But this address is just as useful as an IP address. Think about your email address. You cannot self assign this. You must first have an assigned IP address from your ISP. Once you have one, you can buy a domain name from a registrar, also not self assignable. Once you have a domain name you can then run a mail server at your IP addresses which can be addressed by that domain name. All of this is so that people can send you mail at your chosen email address. Or you can just pay somebody else to give you an address at their mail server.

With Bitcoin, you can simply create your own public address via a random private key. This address is for all practical matters statistically unique. With this public address, you can now receive messages, sent through the BSV global broadcast network, as Bitcoin is just 1 big network segment, with a flat addressing scheme. In addition, there is no routing on Bitcoin, (that can be handled by the network layers such as IP or even directly via Data Link layers), and all messages are broadcast to all other nodes through a gossip network, which as mentioned previously, is autonomously maintained. This is one of the technological innovations of Bitcoin; namely that it creates a system where the network topology has its own built in economic incentives for infrastructure providers to participate and to maintain sufficient connectivity of the network. 

Wait, what? Are you saying that the entire Bitcoin network is just one big ethernet segment?

Well, if you put it that way… yes!

Let’s look at the similarities:

  1. flat addressing across the segment: Check! (in the form of public addresses)
  2. nodes will pass messages around in a broadcast fashion without any sort of active routing, and if you are the intended recipient, then you will store the message, otherwise you will just pass it on: Check!
  3. No flow control, or retransmission control, that is the responsibility of a higher layer: Check!

Now let’s look at the benefits over traditional data link network segment:

  1. Communications are spam proof

Thanks to messages requiring fees, there is a self-limiting feature for normal denial of service attacks or message flooding attacks. 

  1. Messages are secure

Thanks to the ability to pass messages which can only be unlocked via cryptographic signatures, communications can be made immune to MITM attacks, as any alteration of messages made by anyone else besides the originator would be detectable, and wouldn’t be a valid message.

  1. The endpoints are legal entities or natural persons, or individual unique devices

The endpoints to an ethernet network segment is the MAC address, which is a network interface (network card). The endpoints in the internet is an IP address, or a host. The endpoints to a HTTP connection is a server with a URL. The endpoints in a Bitcoin network is one level higher, at the legal entity itself. This is made possible because messages can be sent directly to a holder of a particular private key. The response can be signed and optionally encrypted using the same key, so that the participants in the communication have legal evidence that the messages originated from the legal entity. This, coupled with a system of digital identities, solves many issues with negotiating binding contracts electronically, or between machines.

So if BSV was a telecommunications protocol, it would be something very similar to a data link protocol, though operating on top of IP, or the network layer. It’s almost as if BSV creates a virtual WAN over IP, making the internet into one big ethernet. Furthermore, because of the scripting language built into BSV, it is an ethernet where you can program the “switches” in real time! (By writing smart contracts into the messages to add conditions and logic to how the messages should be handled).

Consider for a moment if Bitcoin was around before the advent of the World Wide Web. Instead of TCP, we may have Bitcoin transactions encapsulated in IP packets, acting as a secure transport protocol, with a built in payment model. Now we could argue that a lot of the security we require has been since fulfilled by technologies such as SSL/TLS these days. But the one unique benefit is that BSV transactions are connectionless. That is, as a transport layer, it acts more like UDP, than the connection dependent TCP. Messages sent while the participants are offline can even be stored by for-profit services which may specialize in acting as a public service ‘dropbox’ for transactions which are received when one of the parties are not online. Next time they come online, all missed txns could be replayed to them for a fee, paid in bitcoins.

While secure protocols over UDP do exist, such as DTLS, they are quite heavy and do much more than just guarantee tamperproof-ness. Bitcoin is a lightweight protocol, which is transaction based much like UDP, which is not normally concerned about the receive order of the messages. This is because it has a built-in method of preventing out of order messages based on its built-in double-spending solution (the use of Proof of Work competitive mining nodes). A Bitcoin transaction can guarantee that a message was sent by the intended receiver and that it can only be sent once, regardless of what IP address or machine they happen to be using. 

Maybe one way of thinking of it, is that Bitcoin is somewhat of a hybrid protocol, a mix between an application layer protocol (wallets), a transport protocol (transactions), and an intelligent switching network (bitcoin script). To try to pigeon-hold BSV into the OSI model is difficult, as it seems to fill the role of different protocols at different layers.

One thing is for certain and worth pondering…What could we do with a totally secure, transport/application layer protocol that could identify endpoints down to the individual level and whose messages are all logged immutably on a global public ledger for all to audit?

Those with the answers to the above will likely make a lot of money for themselves and their shareholders in the coming decade.

New to Bitcoin? Check out CoinGeek’s Bitcoin for Beginners section, the ultimate resource guide to learn more about Bitcoin—as originally envisioned by Satoshi Nakamoto—and blockchain.

[id^="_form"]
[id^="_form"]
[id$="_submit"]
[id$="_submit"]
[^;]
[^;]
[?&]
[?&]
[^&#]
[^&#]
[(d+)]
[(d+)]
[elem.name]
[elem.name]
[+_a-z0-9-'&=]
[+_a-z0-9-'&=]
[+_a-z0-9-']
[+_a-z0-9-']
[a-z0-9-]
[a-z0-9-]
[a-z]
[a-z]
[el.name]
[el.name]
[id^="_form"]
[id^="_form"]
[id$="_submit"]
[id$="_submit"]
[^;]
[^;]
[?&]
[?&]
[^&#]
[^&#]
[(d+)]
[(d+)]
[elem.name]
[elem.name]
[+_a-z0-9-'&=]
[+_a-z0-9-'&=]
[+_a-z0-9-']
[+_a-z0-9-']
[a-z0-9-]
[a-z0-9-]
[a-z]
[a-z]
[el.name]
[el.name]