I clarify the core elements of cryptocurrency and outline a different approach to designing such currencies rooted in biomimicry
Tokenomics - 7. Take Action (SEEDS Commons) - 0 views
1More
Photosynq - An Open Reseach Project - 0 views
-
Been looking at this project too...seems like a good way that we might be able to get a better handle on how our jasmine rice grows over the 5-6 month growing season, how the plant performs in different soil types, the impact of increasingly variable rainfall on plant health, and perhaps being in a better position to be able to more accurately forecast yields and eventual seed quality.
How To Get Seed Funding | Innovation Fund America - 0 views
99More
Beyond Blockchain: Simple Scalable Cryptocurrencies - The World of Deep Wealth - Medium - 0 views
-
This post outlines a completely different strategy for implementing cryptocurrencies with completely distributed chains
- ...95 more annotations...
-
we are interested in the resilience that comes from building a rich ecosystem of interoperable currencies
-
Holdings are electronic and only exist and operate by virtue of a community’s agreement about how to interpret digital bits according to rules about operation and accounting of the currency.
-
Specifically, access, issuance, transaction accounting, rules & policies, should be collectively visible, known, and held.
-
This cryptographic structure is used to enable a variety of people to host the data without being able to alter it.
-
there must be a way to associate these bits with some kind of account, wallet, owner, or agent who can use them
-
Other things that many take for granted in blockchains may not be core but subject to decisions in design and implementation, so they can vary between implementations
-
does not have to be money. It may be a reputation currency, or data used for identity, or naming, etc
-
Then you must tackle the problem of always tracking which coins exist, and which have been spent. That is one approach — the one blockchain takes.
-
You might optimize for anonymity if you think of cryptocurrency as a tool to escape governments, regulations, and taxes.
-
if you want to establish and manage membership in new kinds of commons, then identity and accountability for actions may turn out to be necessary ingredients instead of anonymity.
-
In the case of the MetaCurrency Project, we are trying to support many use cases by building tools to enable a rich ecosystem of communities and current-sees (many are non-monetary) to enhance collective intelligence at all scales.
-
Managing consensus about a shared reality is a central challenge at the heart of all distributed computing solutions.
-
If we want to democratize money by having cryptocurrencies become a significant and viable means of transacting on a daily basis, I believe we need fundamentally more scalable approaches that don’t require expensive, dedicated hardware just to participate.
-
Blockchain is about managing a consensus about what was “said.” Ceptr is about distributing a consensus about how to “speak.”
-
how nature gets the job done in massively scalable systems which require coordination and consistency
-
Each speaker of a language carries the processes to understand sentences they hear, and generate sentences they need
-
we certainly don’t carry some kind of global ledger of everything that’s ever been said, or require consensus about what has been said
-
there is certainly no global ledger with consensus about the state of trillions of cells. Yet, from a single zygote’s copy of DNA, our cells coordinate in a highly decentralized manner, on scales of trillions, and without the latency or bottlenecks of central control.
-
Imagine something along the lines of a Java Virtual Machine connected to a distributed version of Github
-
Every time this JVM runs a program it confirms the hash of the code it is about to execute with the hash signed into the code repository by its developers
-
This allows each node that intends to be honest to be sure that they’re running the same processes as everyone else. So when two parties want to do a transaction, and each can have confidence their own code, and the results that your code produces
-
Then you treat it as authoritative and commit it to your local cryptographically self-validating data store
-
Allowing each node to treat itself as a full authority to process transactions (or interactions via shared protocols) is exactly how you empower each node with full agency. Each node runs its copy of the signed program/processes on its own virtual machine, taking the transaction request combined with the transaction chains of the parties to the transaction. Each node can confirm their counterparty’s integrity by replaying their transactions to produce their current state, while confirming signatures and integrity of the chain
-
If both nodes are in an appropriate state which allows the current transaction, then they countersign the transaction and append to their respective chains. When you encounter a corrupted or dishonest node (as evidenced by a breach of integrity of their chain — passing through an invalid state, broken signatures, or broken links), your node can reject the transaction you were starting to process. Countersigning allows consensus at the appropriate scale of the decision (two people transacting in this case) to lock data into a tamper-proof state so it can be stored in as many parallel chains as you need.
-
When your node appends a mutually validated and signed transaction to its chain, it has updated its local state and is able to represent the integrity of its data locally. As long as each transaction (link in the chain) has valid linkages and countersignatures, we can know that it hasn’t been tampered with.
-
If you can reliably embody the state of the node in the node itself using Intrinsic Data Integrity, then all nodes can interact in parallel, independent of other interactions to maximize scalability and simultaneous processing. Either the node has the credits or it doesn’t. I don’t have to refer to a global ledger to find out, the state of the node is in the countersigned, tamper-proof chain.
-
Just like any meaningful communication, a protocol needs to be established to make sure that a transaction carries all the information needed for each node to run the processes and produce a new signed and chained state. This could be debits or credits to an account which modify the balance, or recoding courses and grades to a transcript which modify a Grade Point Average, or ratings and feedback contributing to a reputation score, and so on.
-
By distributing process at the foundation, and leveraging Intrinsic Data Integrity, our approach results in massive improvements in throughput (from parallel simultaneous independent processing), speed, latency, efficiency, and cost of hardware.
-
Another noteworthy observation about humans, cells, and atoms, is that each has a general “container” that gets configured to a specific use.
-
Likewise, the Receptors we’ve built are a general purpose framework which can load code for different distributed applications. These Receptors are a lightweight processing container for the Ceptr Virtual Machine Host
-
Ceptr enables a developer to focus on the rules and transactions for their use case instead of building a whole framework for distributed applications.
-
Most people think that money is just money, but there are literally hundreds of decisions you can make in designing a currency to target particular needs, niches, communities or patterns of flow.
-
the challenging task of tracking all the coins that exist to ensure there is no counterfeiting or double-spending
-
You wouldn’t need to manage consensus about whether a cryptocoin is spent, if your system created accounts which have normal balances based on summing their transactions.
-
In a mutual credit system, units of currency are issued when a participant extends credit to another user in a standard spending transaction
-
Managing the currency supply in a mutual credit system is about managing credit limits — how far people can spend into a negative balance
-
keep in mind there can be different classes of accounts. Easy to create, anonymous accounts may get NO credit limit
-
What if I alter my code to give myself an unlimited credit limit, then spend as much as I want? As soon as you pass the credit limit encoded in the shared agreements, the next person you transact with will discover you’re in an invalid state and refuse the transaction.
-
If two people collude to commit an illegal transaction by both hacking their code to allow a normally invalid state, the same still pattern still holds. The next person they try to transact with using untampered code will detect the problem and decline to transact.
-
Hawala is a network of merchants and businessmen, which has been operating since the middle ages, performing money transfers on an honor system and typically settling balances through merchandise instead of transferring money
-
To minimize key management infrastructure, each hawaladar’s public key is their address or identity on the network. To join the network you get a copy of the software from another hawaladar, generate your public and private keys, and complete your personal profile (name, location, contact info, etc.). You call, fax, or email at least 10 hawaladars who know you, and give them your IP address and ask them to vouch for you.
-
Once 10 other hawaladars have vouched for you, you can start doing other transactions because the protocol encoded in every node will reject a transaction chain that doesn’t start with at least 10 vouches
-
As described in the Mutual Credit section, at the time of transaction each party audits the counterparty’s transaction chain.
-
Our hawala crypto-clearinghouse protocol has two categories of transactions: some used for accounting and others for routing. Accounting transactions change balances. Routing transactions maintain network integrity by recording information about hawaladar
-
The final hash of all of the above fields is used as a unique transaction ID and is what each of party signs with their private keys. Signing indicates a party has agreed to the terms of the transaction. Only transactions signed by both parties are considered valid. Nodes can verify signatures by confirming that decryption of the signature using the public key yields a result which matches the transaction ID.
-
As with accounting transactions, the hash of the above fields is used as the transaction’s unique key and the basis for the cryptographic signature of both counterparties.
-
Remember, instead of making changes to account balances, routing transactions change a node’s local list of peers for finding each other and processing.
-
It would be possible for someone to hack the code on their node to “forget” their most recent transaction (drop the head of their chain), and go back to their previous version of the chain before that transaction. Then they could append a new transaction, drop it, and append again.
-
After both parties have signed the agreed upon transaction, each party submits the transaction to separate notaries. Notaries are a special class of participant who validate transactions (auditing each chain, ensuring nobody passes through an invalid state), and then they sign an outer envelope which includes the signatures of the two parties. Notaries agree to run high-availability servers which collectively manage a Distributed Hash Table (DHT) servicing requests for transaction information. As their incentive for providing this infrastructure, notaries get a small transaction fee.
-
This approach introduces a few more steps and delays to the transaction process, but because it operates on independent parallel chains, it is still orders of magnitude more efficient and decentralized than reaching consensus on entries in a global ledger
-
millions of simultaneous transactions could be getting processed by other parties and notaries with no bottlenecks.
-
There are other solutions to prevent nodes from dropping the head of their transaction chain, but the approach of having notaries serve out a DHT solves a number of common objections to completely distributed accounting. Having access to reliable lookups in a DHT provides a similar big picture view that you get from a global ledger. For example, you may want a way to look up transactions even when the parties to that transaction are offline, or to be able to see the net system balance at a particular moment in time, or identify patterns of activity in the larger system without having to collect data from everyone individually.
-
By leveraging Intrinsic Data Integrity to run numerous parallel tamper-proof chains you can enable nodes to do various P2P transactions which don’t actually require group consensus. Mutual credit is a great way to implement cryptocurrencies to run in this peered manner. Basic PKI with a DHT is enough additional infrastructure to address main vulnerabilities. You can optimize your solution architecture by reserving reserve consensus work for tasks which need to guarantee uniqueness or actually involve large scale agreement by humans or automated contracts.
-
It is not only possible, but far more scalable to build cryptocurrencies without a global ledger consensus approach or cryptographic tokens.