Friday, July 20, 2018

RFC 2119 harmful in acornics protocol design

I see RFC 2119 terms like MUST, SHOULD, and MAY used in acornics protocol specifications, such as the BOLTS defining the lightning network protocol. This scares me.

A basic premise of acornics is that node behavior must always be only as the operator most desires. The terms in RFC 2119 presume an external source of authority which simply does not exist. What MAY a node do? Whatever it damn well pleases!

The terms of RFC 2119 may indeed prove useful long term. But at the very least, their definition requires much elaboration. In particular, the onus to prove correct usage of a term must rest entirely with the author, in that every term beyond a MAY must find explicit reference to the reason one should want to adhere.

Thursday, July 19, 2018

Acornics - the common parent of blockchains, smart contracting, cryptocurrency, et al

Bitcoin is the first example of a new class of technology that is so fundamental, that it has yet to be properly named. Blockchain, smart contracting, and cryptocurrency refer only to some of the subdisciplines - so what shall we call their common parent?

I propose "Acornics", a pronounceable yet shortened reference to Automated Coalition-Resistant Nash Equilibrium-ics, and where the "ics" suffix refers to a body of knowledge or practice. The concept of a Coalition-Proof Nash Equilibrium is borrowed from game theory, but we dial back the hubris implied by "proof" and thus substitute "resistant", since the stakes might one day merit such intellectual honesty. We add "Automated" to stipulate execution as computer code, since the rules of any society have long been built on a manually-enforced CRNE.

Acornics is a new way of thinking about the relationship between society and computer code. Rather than computer code being a tool of society, it instead becomes a programmable and explicitly engineered part of that society.

What blockchains do (and don't) do

Few introductions to blockchains manage to clearly state what blockchains do. This is odd, because they do only one thing.

Blockchains allow a group of entities (individuals or organizations) to accumulate an ordered list of shared records over time, whose tamper resistance they can trust - even if they do not trust each other.

That is it. That is the only new thing which blockchains accomplish. It turns out however that given the right context, this one little thing happens to be a big deal.

Blockchain animation

Blockchain technology offers society a new capability: sharing business records whose tamper resistance can be trusted more, and for a lo...