On the basis of our humanitarian supply chain project with the UK Government, we explore how to combine security and UX best practices.
A question we have in each of our blockchain projects is that of the user-friendliness of having a decentralised architecture. In fact, it’s not only us having that problem but, according to a survey of 160 DApp projects in 2018 by the good people at Fluence Network, 75% of all mentioned new user onboarding as a major hurdle for adoption of blockchain. Additionally, the second biggest pain points for Dapp developers was “Bad UX of crypto”. In the following post I would like to show how we solved the largest of the issues with UX in blockchain, the key management.
For a couple of months, we have been building a Proof-of-Technology as part of the Frontier Technology Livestreaming (FTL) programme of the UK Department for International Development (DFID). The technology to be “proven” in this case is blockchain, specifically within the setting of humanitariansupplychain management — here’s a link to a medium post for more on the topic.
We’ve been advancing according to plan, successfully finishing our first sprint and working hard to finish the second. This will be the final sprint before we enter the live test phase, where we will field-test the system with a real life humanitarian logistics supply chain. The “real life”-test in this case will mean tracking a regular shipment of goods to a disaster-stricken area, using the application we are building. In this post, I’d like to share some of our experiences in trying to make blockchain as user-friendly and safe as possible, two goals normally seen as diametrically opposed.
Firstly, the most basic user-experience (UX) consideration when implementing a permissioned (more on what this means: here) blockchain solution is: if and through what medium does the user interact with the blockchain system? One can imagine solutions ranging from a completely “authoritative” system where the end-user is happily ignorant of any blockchain activities going on in the background, much like few internet users are aware of exactly how passwords are checked when logging in to a service, to products where each user is trusted (and in some cases required) to set up and run their own node, manage keys, interact through API calls and verify all activities. We attempt to find some middle-ground by reasoning about what our users are actually likely to use and appreciate in a system.
In our case, the users range from technologically savvy, well-connected DFID professionals with up-to-date hardware down to logistics service provider personnel with limited connectivity and first generation android smart phones. Since we are working in a PoT, with a relatively limited scope and time frame, we decided to make some assumptions on the user constraints. Roughly, we assume all of our users:
Speak and read English
Have a device (mobile or not) with an updated browser installed
Have a working Internet connection with sufficient bandwidth to serve a React-based web application (React is one of the most common web programming frameworks for UI’s)
These assumptions allow us to target a very wide audience, and to extend functionality in the future to cover, for example, off-line use cases.
We do this by building a progressive web application — meaning that it is reliable, fast and flexible enough to be used on mobile or desktop — with a simple login procedure to separate user types from each other. The application is hosted on our cloud provider which connects to a database as well as our — wait for it — blockchain!
This means that a logistics planner in the offices of DFID can access the web application by opening a standard browser typing in the address of the application in the URL window and can then login using his or her personal username and password. Similarly, a user on the “ground” can accept an order for his or her leg of the shipment by logging in to the application over a browser on a mobile device.
After having established the point of access for the users to the blockchain, we needed to determine which actions a user should be required or allowed to take with respect to the blockchain system. Our aim was to empower the users to have as much control of the most critical parts in the supply chain as possible. This was partly to ensure trust in the system — the purpose of having a blockchain is to remove a single point-of-control of the data — and partly to communicate clearly to the user exactly what information comes onto the blockchain.
We’re working with an Ethereum-based system, which allows for smart contracts. This means that we could encode large parts of the business logic, such as in the chain, if we would like to. But, the more functionality which is on-chain, the more users have to interact with the blockchain. The interactions which affect the complexity on-chain are operations where the user needs to add new information. More interactions lead to more signing of messages or transactions to the chain. More signing means more usage of the key pair of the user, which is mostly quite awkward and non-intuitive for users.
This is why we opted for a solution where the user still has full possession of the private key, and no one else can manipulate signed information posted to the blockchain by them. By helping the user generate a new key pair upon registration and then allowing them to store it locally on their device, we hope to give as much responsibility to the user as they would like, while still keeping security risks to a minimum.
So, when does the user have to sign transactions?
So, when does the user have to sign transactions? Exactly then, when custodianship is changed. The absolutely critical information, which must not be corrupted, is thereby secured the most. Custodianship change contains two steps: first, it needs to be handed over by the current custodian, and secondly, it has to be accepted by the custodian-to-be. Before both those transactions have been signed, custodianship still lies with the previous user. We try to make the “signing” as non-invasive as possible, by applying known procedures like “Username and password” plus a special key-file which needs to be provided by the user. It’s shown in a simplified form below:
A simplified chart of the authentication process.
The risk of such a system of user-controled keys is that the user loses the private key, but in our case, since we are working within a permissioned setting, there is a mitigation. Access to the platform is dependent on verifying the real identity of each user. Therefore, in the case of a lost key, the user has to re-register, but the information isn’t lost. The user will then have to re-verify the identity to regain access to the account, where a new key-pair can be generated.
In a future solution, there should not be a central authority to reset a password without the identity checks having been verified, but for the PoT it is acceptable.
We’ve now seen some of the challenges of usability we’ve been facing in building a humanitarian supply chain blockchain-solution within FTL. Usability and accessibility is an immense problem for blockchain in general. It strives to empower people but it is at risk of confusing and alienating people with complicated key management procedures and lacking interfaces. At Datarella, we don’t see the point in building technology that the end user can’t understand properly or feels uncomfortable using. Especially when the users are strapped for time, trying to help others in dire need, we have a responsibility to create technology which does not obstruct but enables our users.
Cryptography vs Cryptocurrency – one enabling the other
For many, the word ‘crypto’ brings Lamborghini’s, neckties with Bitcoin signs printed on them or really bad hip-hop, but up until some years ago, the original meaning was not crypto-currency, but cryptography. That is also the topic of this blogpost. Consider it a gentle introduction into a very specific branch of cryptography – zero-knowledge proofs (or ZKP) – and why blockchain has helped bring them back into vogue.
What are ZKP – intuition
So, let’s start off with the basics, what are zero-knowledge proofs? I’ll explain it through three common analogies with varying complexity, they all describe the same concept but appeal to different audiences.
1. This analogy is from StackExchange. Imagine your friend, Alice, tells you that she has a super-power. An amazingly useless super-power, but still. She can count all the leaves on a tree in your garden in front of your house in a few seconds! Of course, you don’t believe her, so you ask Alice to prove it. We’ve now created two roles that are omnipresent in ZKP, a prover (your friend Alice) and a verifier (you in this case). She proposes that she closes her eyes, you can then choose to either remove a leaf from the tree or not, and finally she can open her eyes. Now, to prove her super-power, she has to tell you whether or not you removed a leaf from the tree. If she’s wrong she failed to prove anything, but if Alice is right, you realise that she had a 1/2 chance to guess correctly and was just lucky. So you repeat the experiment, now if she’s right again, she would have had to have been right two times in a row, meaning her odds of being guessing correctly were 1/4. (At least assuming independence of events). This goes on and on until you are sufficiently convinced of her super-power being real. In this scenario, you didn’t learn HOW she does her magic counting of leaves, but you’re very sure that she know how to do it. There was ZERO KNOWLEDGE transferred from Alice to you regarding the procedure itself. Additionally, there was no, or a very small possibility for you, being honest, of not believing in Alice’s capability, and she couldn’t have convinced you without actually having the super-power. These three criteria are called ‘zero-knowledge’, ‘completeness’ and ‘soundness’, respectively, and are a part of all ZKP.
2. This one is from the booklet “Applied Kid Cryptography or How To Convince Your Children You Are Not Cheating” by Naor, Naor and Reingold. It relies on the game called “Where’s Waldo?” or “Where’s Wally?” in the UK-version. The goal of the game is to find the image of Waldo on a page filled with other things and figures. Let’s assume Alice and yourself are playing this game together. All of a sudden, Alice exclaims “I found Wally!”. Aggravated with jealousy you scream out “So prove it!”, (first the revelation of the leaf-counting super-power and now this!?). So how can Alice prove her knowledge of where Waldo is, without revealing to anyone else where he is? Simple, she takes a big cardboard with only a cut-out in the middle, just the size of a Waldo-image. As you close your eyes, Alice places the cardboard over the open pages of the Where’s Waldo?-book exactly so that only Waldo can be seen through the cut-out. You can verify that Alice knew where Waldo is, without learning where on the page he is. Again, this satisfies our three properties of zero-knowledge, completeness (you have to believe Alice found Waldo given the information she presented to you) and soundness (Alice couldn’t cheat by randomly placing the cardboard on the book except by being extremely lucky).
3. Now, my favourite example from a highly recommended blogpost by Jeremy Kun is more in the theoretical space. Instead of a difficult problem like counting leaves or finding Waldo, we now have the provably difficult and more formally defined problem of proving that two graphs are isomorphic. Let’s unpack that:
– A graph, G, is defined by a number of edges connecting the vertices of the graph. Thus a graph G = (V,E)
– Each edge can be represented as the tuple (u,v), where u and v are integers between 1 and the number of vertices of G, n.
– Given two graphs G = (V,E) and G’ = (V’,E’), they are isomorphic if there exists a couple of functions f: V->V’ and g: E->E’ such that f associates each value in V with exactly one element in V’ and vice versa. Correspondingly, g associates each value in E with exactly one value in E’ and vice versa.
source: Jeremy Kun’s blog on Math and Programming – https://jeremykun.files.wordpress.com/2015/11/gi-example.png?w=587&zoom=2
Intuitively, this means that graphs are isomorphic if we can transform one into the other by simply moving around the vertices, not adding or removing any edges and ending up with two identical figures. This is not exactly rigorous, but still somewhat accurate for our purposes.
Now, for the zero-knowledge part! Given two graphs, there’s no easy or efficient way of finding out if they are isomorphic. (If you find a way, let me know.) So, let’s say Alice knows that there exists an isomorphism between them, but she doesn’t want to reveal her isomorphism to you. She does this by taking e.g. G and mixing V. Then she sends you her newly formed isomorphic graph, called H. Alice additionally saves the permutation she did on G for later.
After having received H, you flip a coin with equal probabilities and depending on the outcome you give Alice a challenge. Heads, and Alice should provide you with the inverse, or backwards, permutation which gave her H. It should then give you G. If tails, Alice should provide you with her secret isomorphism, f composed with the permutation. This should now give you G’ when applied to H.
Given either of those permutations, you should now be able to verify that Alice possesses a ‘secret’ isomorphism. Additionally, you haven’t learned anything about the solution since you only received a uniformly random permutation or two uniformly random permutations composed which gives another uniformly random permutation.
Why ZKPs are interesting to blockchain
Ok, now that we’ve understood a bit what ZKP means, let’s see why it is interesting for blockchain technology. The most obvious area of application is of course privacy. Being able to prove something without having to reveal any information about the subject sounds like utopia for almost everyone with an eye on the current state of affairs in big data applications of corporates and states. A second, less obvious type of application is for scaling in blockchains. This relies on the fact that a proof of knowledge can be more succint, from a storage point of view, than the information it’s proving. Let’s look at some use cases of both application areas in more detail:
One of the first live applications of ZKP in blockchain for privacy was by ZCash – a cryptocurrency where the ‘knowledge’ being proven is that the sum of outgoing transactions are equal to the sum of incoming transactions (ZCash uses a UTXO model), that the sender has the authority to spend the coins being sent and finally that the private keys of the incoming ‘notes’ are effectively locking the whole transaction from being modified without the keys in question.
Another use case of ZKP for privacy is by Sovrin, who mainly uses regular public key cryptography and a fairly clever protocol to issue verifiable credentials such as “possession of a valid driver’s license in EU”. Then they apply a type of ZKP called accumulators to prove non-revocation of that very credential in a very succint manner. This was initially researched by IBM in the so-called idemix, back in 2007, but lacked an adequate platform to store the non-revocation lists in a persistent, trustless manner. Until blockchain arrived.
Generally speaking, ZKP can be used for a wide range of privacy-preserving applications, especially when it comes to the topic of identity, things such as range-proofs whereby it can be proven that one’s age is within a certain range (e.g. 18-65) without revealing the actual age. Or it can be proven that one is a resident of the EU without revealing in which country exactly.
One of the most pressing issues of public blockchains these days (and admittedly since some time) is that of scalability. Interestingly, ZKP may have a solution for this. Like ZCash, another privacy-focused cryptocurrency Monero implemented ZKP. However, Monero was using a different algorithm called RingCT to hide transaction information. It didn’t rely on the often criticised ‘trusted setup’ of ZCash (more here) but therefore had a very large transaction size resulting in low throughput. This was improved greatly by the application of so-called bulletproofs (also a type of range-proofs actually) in October 2018. This meant that the average transaction size was reduced by at least 80%, and the fees accordingly.
Even more extreme measures are being built by the coda team who aim to recursively compress an entire blockchain into a 20kB ZKP. Their CTO Izaak Meckler called it “A picture of a picture of a picture of a picture.”. It works by using a ZKP to prove the knowledge of a ZKP, which proves the knowledge of a ZKP, etc. This effectively leads to a constant-size blockchain which can be verified by anyone easily, not like in many existing public blockchains where the more users a blockchain has, the more difficult it gets for the average user to verify. Coda does, interestingly, not use ZKP at all for privacy. Yet.
We’ve seen a few examples to intuit what ZKP means and why they are interesting to apply in blockchain technology. It is part of what we are working on at Datarella, implementing industrial blockchain solutions for clients and in RAAY. If you would like to dig deeper into some of the topics we’ve learned about today, here are some resources:
Privacy is one of most central topics of this internet connected era. People want their private data to be protected from third parties which, for instance, resell the collected information to promote personalised advertisements or worse to do things like manipulate elections with what amounts to weaponised data science. In the past it was often the case that privacy was a mere afterthought when designing an online application. That’s not the case anymore. In the wake of scandals such as Cambridge Analytica, it has become increasingly clear that system design needs to put privacy front and center if we want to avoid dystopian outcomes in our society. Thus, “Privacy by Design” was the topic of our meetup on on March 19, 2019.
Our audience at the meetup “Privacy by Design?”
The first person we invited to give some insights about this topic was Andrew Tobin, Managing Director of Evernym. Evernym is a US-based software company which develops decentralised, self-sovereign identity applications. Andrew talked about how Evernym developed and open sourced the Sovrin protocol to manage the secure and private issuance, holding and verification of digital credentials in a decentralised manner.
By using Sovrin, anyone can verify claims made by identity owners including the following four aspects of data validity without any contact with the credential issuer. This eliminates the risk that anyone can draw a correlation about private activities of credential holders based on the claims they make to verifiers.
Who issued the data to the holder?
Was it issued only to the holder, and not to anyone else?
Has the data been tampered with between issuance and time of claim?
Has the issuer revoked the credential?
He also pointed out that Sovrin is not limited to human credentials making highly useful for the M2M economy. It can also be used to issue and verify credentials for organisations and things empowering proofs for stuff like part numbers of machine components, company records or tax returns.
Sovrin enables the storage of verifiable credentials in a digital wallet. Compared to a physical wallet, there are a number of additional benefits. Backup- and recovery functionality, the ability to revoke credentials remotely and a selective disclosure functionality for the individual data points making up your identity are all made possible using this technology. The trouble with paper credentials is that they’re pretty stupid. Passports can get lost or stolen, if you show your drivers license to someone you have to show them the entire document, not just the relevant details, and if an issuer wants to revoke a credential they’re pretty much out of luck when using a traditional paper identity document. With self- sovereign identity all of these scenarios are no longer problematic.
If you want to learn more about Evernym, their solutions and tools behind it, check their website or Andy’s slides here and here.
Andrew Tobin presenting Sovrin, a self-sovereign identity solution
The second speaker of the event was Kevin Leuthardt the new Steward of Governance Working Group of the European Blockchain Association (EBA). He briefly presented the founding of the Working Group Governance in the EBA and explained how decentralised organisations can rely on a suitable governance model.
If you are interested in governance in decentralised organisations and have a law background we would appreciate if you could take a couple of minutes to fill out this survey. Thank you very much in advance.
Kevin Leuthard presenting an update on the EBA Working Group Governance
As the final speaker of the day, we invited Dr. Elad Verbin to the stage. Elad is a Berlin-based computer scientist specialising in blockchain technologies, algorithm engineering, and predictive modelling. In blockchain space, he works on blockchain filesystems, governance, and macro-cryptoeconomics. At this meetup Elad shared some insights about “Privacy on the Blockchain – Zero Knowledge Proofs and their Future Use”.
First of all he explained why people should care about privacy on the blockchain.
The first reason to do so is that privacy on the blockchain is broken. In the early bitcoin days people were buying pizza online with the same addresses they used to buy drugs on Silk Road. Even if it wasn’t clear to the users at the time, what is clear now is that the buyer of the pizza is also the buyer of the drugs. There’s a whole industry of players such as Chainalysis and BitCluster cropping up with products dedicated to tracing these transactions out there “in the clear”.
The second reason to care about privacy of the blockchain is that private computation is necessary for Web3. It is not desirable to for all transactions made on the blockchain to be public. That notwithstanding we still want the benefits that data availability provides. As a result we’re increasingly turning to computation on encrypted data, for example homomorphic encryption, to restore privacy while maintaining the availability of data sets for computational tasks.
The third reason is that more privacy establishes more trust in the system which automatically leads to more shared information and therefore more value all around for everyone.
The second aspect, Elad pointed out is the so called Secure Multiparty Computation (SMPC).
In SMPC, every player in the system learns only about their own input into the system and the output of the system without knowing the input of the other players so that privacy comes first. The special thing about SMPC is that it can be done for any function given enough time for computation and every task that can be computed can also be computed securely.
In an ideal world there would be a trusted middleman who could compute those functions. The middleman could collect all the input of the players and simply publish the result back to the players. We all know however that the trusted middle man approach usually fails due to the untrustworthiness of the “man in the middle”. SMPC protocols functionally simulate the trusted middleman scenario without actually requiring any trusted party.
As a third point he introduced applications of private computation.
Private computation has been used in a number of productive contexts already and it is starting to seep into consumer applications like such as the chat platform Telegram. The same goes for Zero Knowledge Proofs nowadays.
As a first practical example, Elad presented a case study about Sugar Beet Auctions in Denmark from 2008. The problem there was, that the participating parties in sugar beet auctions needed a secure technical means of simulating a “trusted middleman” without actually having such a party and also without revealing private bids or the demand curve of the commodities purchasers. After deploying a SMPC-protocol-based auction system, the parties only knew how much they each sold without learning anything about the overall auction results while still arriving at an efficient market clearing price at the market level.
Based on this success governments started using private computation for radio frequency spectrum auctions resulting in more efficient and more fair auctions for these public goods. Telecommunication companies didn’t have to make the prices paid for spectrum rights public and simultaneously the state received an efficient economic outcome from the auction.
Another potential use case is for private computation would be an algorithmic redistribution of wealth whereby individuals could make their finances and demographic information available in an encrypted format for algorithmic analysis. The idea here is that if the data were made available due to the advent of widespread trust in private computation, algorithmic design including reinforcement learning, control theory and optimisation theory could give us substantially better results and public policy than is available today. In the future, there will be more and more libraries available for private computation. Compared to today, the computation will also be cheaper and faster.
The last major point in Elad’s presentation was regarding practical issues in adopting this technology.
The first issue is the challenge of replacing the trusted middleman with a protocol. How is the function f defined and how to keep the privacy over time?
The second issue is the speed of SMPC. The speed of SMPC is pretty slow right now. But compared to some years ago it became significant faster.
The third issue is the current general lack of trust in SMPC. It’s a big challenge for a new innovation to gain trust of the users. It takes some time for people to trust innovations and adapt to new technology.
Dr. Elad Verbin presenting Zero Knowledge Proofs and their future use
We want to thank the speakers for their very interesting presentations at this Meetup about “Privacy by Design?”. We also want to thank Deloitte for hosting our event at their facilities and of course we want to thank our guests for coming to our meetup and asking high quality questions.
We would appreciate seeing you again at our next meetup about “The State of Secutity Token Offerings” on May 21st, 2019.
On Friday February 15th, 2019 Datarella took part at the kick-off meeting for the KOSMoS project at the headquarters of Schwäbische Werkzeugmaschinen, a consortional partner located in Waldmössingen in the Black Forest.
The representatives of the consortial partners of the KOSMoS Project
The primary goal of KOSMoS is developing a platform for the cross-company networking of production and process data using blockchain technology. The platform will be able to integrate new offerings and business models. Examples include transparent maintenance concepts, dynamic leasing and proof of quality for delivered products. Through these business models, all cooperating companies should gain an advantage. Examples of such improvements include lower prices, lower maintenance costs and easier product distribution. In summary, the project should facilitate better cooperation of several companies.
The purpose of the kick-off-meeting was the exact definition of the three use cases. Each industrial partner (Schwäbische Werkzeugmaschinen GmbH, Schütte GmbH and Asys Group GmbH) will develop exactly one use case in cooperation with the so-called “enablers” inovex GmbH, Frankfurt School Blockchain Center and Datarella. The industrial partners presented their use case and illuminated the most important aspects in the development plans as well as their individual goals. It was very interesting for Datarella to see how the partners plan to develop and cooperate in order to achieve the goals of the project.
For the next weeks and months, it will be important to define and align the different requirements of the each use case and determine how the blockchain can be leveraged to produce the most benefit for everyone. The first talks on this subject are already planned.
We from Datarella are very excited to be part of this innovative research project and can’t wait to see the first interim results. Stay tuned!
In our first Meetup of 2019, we invited people to Werk1 to listen to three presentations around the topic of “Blockchain as a Social Technology”. The special thing about this Meetup was the decentralized nature of the event. Parallel to the event in Munich there was a meetup hosted by the University of Bayreuth and Fraunhofer FIT. The two locations were linked via a live video feed. Additionally we piped in guest speakers from remote locations in Denmark and the USA. Everything was broadcast in real time via a live stream on our website. You can rewatch the video here!
The first presentation was held by Jon Hearty, Business Development Director of Origin Protocol. He gave us some insights about blockchain-based decentralized marketplaces and the many social implications of this innovation. Moreover he talked about his blockchain platform for building decentralized marketplaces ‘Origin Protocol’.
According to Jon, many of today’s marketplaces that seem to be fully P2P have central companies sitting in the middle of all transactions which hoard and swallow the data to monetize it later. With the use of a blockchain-based decentralized marketplace, problems like these can be avoided. He sees four major advantages to Origin’s approach to decentral marketplaces.
The drastic reduction of transaction costs. Companies who run the platforms often request high transaction fees for basically just matching a buyer and a seller. With the use of blockchain there is no need of an intermediary so that the transaction fees can be put back in the hands of the buyers and sellers.
Redistribute value more fairly throughout the networks. Users have a major impact on the success of the platform but hardly benefit from it compared to the platforms’ founders or directors. Cryptoeconomic incentives provided by a blockchain powered platform to distribute the value more fairly within the platform so users also benefit as a network effects set in.
Promote free and open commerce. Many marketplaces aren’t available all around the world, they are limited or banned to a special region or heavily regulated. In the face of regulation, a company who runs the platform is a single point of failure. Decentralized Platforms don’t have this characteristic which makes them able jump in where where platforms like Uber, AirBnB are banned or regulated.
Making services available to the unbanked. Billions of users worldwide don’t have access to financial services but they do have access to cheap smartphones and therefore wallets to store their values. The unbanked can leap from traditional financial system and make transactions over a blockchain-based network.
Origin Protocol itself just launched a blockchain-based marketplace as a dApp (decentralized App). As underlying technology Orgin Protocol uses the Ethereum Blockchain and IPFS (InterPlanetary File System) for identity management. Go and check it out on https://dapp.originprotocol.com/#/.
Our second speaker of the Meetup was Pablo Velasco from the University of Aarhus who focuses on the digital culture through its technical infrastructures including the political and social aspects of technology. In his research, he deals with topics such as how the development of social technology happens and how it contributes to micropolitics such as how social relationships modify the outcomes of certain technologies. As an example, technology can be used as a political tool for including or excluding relevant stakeholders in a system.
Regarding the blockchain technologies that rose up during the last years, Pablo said, that they can be merged together as a list of attempts of some sort of parallel payment system or decentralized, electronic money. In Bitcoin, for instance, the key element was the exchange of economic value using cryptography and this cryptography was a elementary need for the social integration of the technology.
He also pointed out how different technologies have impact on the social interaction. As an example, sending coins over a blockchain network requires a new and different trust paradigm and therefore builds up a new type of social interaction.
In the third presentation Anna-Laura Liebenstund and Rebecca Johnson from the European Blockchain Association presented the importance of a governance model in decentralized organizations.
They pointed out why it is important to have regulations in the use of technology and how the interaction impacts our social behaviour as well as the way we think.
A key aspect was that we have to be very careful about the inputs, design processes and implicit cultural assumptions behind our development of new technology. Artificially intelligent agents, for instance, will always be a reflection of the training sets to develop them.
Technology without principals will become antisocial sooner or later.
As a result, we need governance as a framework for techno-social interactions. Recent projects like ‘the DAO’ failed and Bitcoin and Ethereum got forked because of inconsistent governance.
Therefore it will be important for decentralized organizations to establish common principles, ethical code of conducts, membership rules and a solid basis in existing social networks to ensure the durable success of the organization.
We want to thank the speakers for their very interesting presentations on this, the opening meetup of 2019! Also, thank you to the team of Werk1 who provided the location, organized the catering as well as providing support for the A/V setup. And we thank ZD.B for supporting the meetup in general!
We also want to thank our audience in Munich and Bayreuth for attending. We hoped you enjoyed the Meetup. Feel free to give us your feedback.
Our next Meetup will take place on Tuesday March 19th, 2019 on the topic ‘Privacy by Design?’. We would be very happy to see you there again!
Datarella demoed a new PoC for off-chain governance with our friends from tyntec at the TADSummit in Lisbon, Portugal this week. Using tyntec’s 2FA service we were able to demonstrate a proof of concept for using strong authenication to secure an Ethereum transaction. This is one elementary piece of the puzzle for creating robust governance structures for the blockchain.
What’s blocking the blockchain from going mainstream? Datarella and tyntec at TADSummit Lisbon 2018
One of the main issues holding back adoption of blockchain-based applications is that we’re still at a pretty basic level when it comes to governance. Much ink has been spilled over the parity multisig wallet bug and the hack of the DAO. The exact causes of those incidents are beyond the scope of this article but both have to do with complexity and with finality.
One of the major selling points of Ethereum it utilizes the solidity programming language, which is Turing complete. This is both a blessing and a curse. It’s a blessing because this makes it technically possible to build very complex smart contracts which are capable of doing just about anything – that’s a big part of the promise of blockchain. The curse part of the equation is the fact that these complex programs may have unforseen bugs which end up irrevocably committing transactions on a large scale to public blockchains. This is where finality comes into play. Once approved Ethereum transactions are subject to increasing probabilistic finality.
In layman’s terms this means that there are no chargebacks, no refunds, no do overs and no room for error. The combination of complexity and probabilistic finality means that if we want to build blockchain applications that are ready for mass adoption we will need significantly improved safeguards and governance before transactions are committed to the blockchain.
In order to be useful, systems that transfer value have to exhibit some kind of finality. When you use a credit card to purchase a latte at your local store the money is transferred on a centralized ledger maintained by visa or mastercard. The money stays transferred unless there is a dispute. If you discover fraudulent charges on your card you just call your bank and prove your identity. They roll back the charges on your account and an insurer takes care of the damage done. In other words, in the credit card system, finality is limited but sufficient and flexible. In the blockchain world what you commit to the chain remains on the chain. If you loose your private key or a bug in some complex code allows an unintended value transfer, it’s game over.
We can’t change the finality of blockchain and in most public cases we don’t want to. What would be nice is if we could put additonal controls on what the holder of a private key can do. This is useful as a component of our developing blockchain governance toolkit in a number of situations.
Some example use cases:
Resetting access to a wallet
Restricting malicous transaction attempts
Enabling multiparty quorum transactions without relying on complex on-chain multisig wallets
Off-chain voting mechanisms
Take a look at the video of the demo above. What we’ve implemented is a smart contract which requires a one time password provided by the tyntec 2FA API in addition to the private key before any transaction can be finalized on-chain. This opens the door to all sorts of governace options which we’re working on for our product RAAY and as part of the Codelegit arbitration libraries which we provide to the Blockchain Arbitration Forum.
We’d like to thank the awesome team of tyntec for their continuing collaboration on this. We’re really looking forward to the role such tech can play in moving blockchain-based governance procedures forward.
We at Datarella are very proud to announce that we will work with the British Government Department for International Development (DFID) to develop a pilot project on the topic of “Blockchain in Humanitarian Supply Chains“!
The project is supported by the DFID innovation and future technologies programme, Frontier Technology Livestreaming. They source ways of improving how DFID works across the world using new technologies from DFID staff. Naturally, blockchain is one of those technologies, and supply chain operations is a very applicable area for this technology for three main reasons:
1. Transparency – Humanitarian supply chains could benefit from having the right tools to achieve increased transparency in a secure manner. More transparency could also facilitate collaboration across organisations.
2. Efficiency – If the operatives working at organisations in DFID and similar organisations (e.g. USAID, the UN World Food Programme, etc.) could rely more on the quality of data, they could focus on other matters. This could contribute to decreased “shrinkage” and thus improved efficiency as more goods are delivered to those in need.
3. Collaboration – Having a shared database of goods, shipments and importantly accountability, where many can write and read, but not change the history, is an ideal setup for collaboration. This could enable the creation of standards for data models and improved service to both those funding (mostly tax payers) and those on the receiving end.
With these prerequisites in mind, we are looking forward to the coming phases and sprints of the pilot where we will implement a live blockchain solution, hopefully of great use to many people, especially those in need of immediate and unconditional aid.
The project consists of building a blockchain-based system to track a shipment of plastic sheeting shelter kits (try to say that ten times in a row) from an offshore warehouse, by multiple logistics service providers to a country where they are needed. There they have to be cleared through customs, meaning that a consignee will need to assume responsibility for the shipment. This will also be tracked using a smart contract. Thereafter, a so-called implementing partner will start transporting and deploying the kits within the country.
If you have experience or are interested in learning more about this project and blockchain in humanitarian supply chains, feel free to @ @mountbranch or @datarella on twitter! Also, here’s a link to a Medium post by FTL themselves about the initial phase of the project!
We are proud to support FC Bayern, Germany’s leading soccer club on their Hackathon:
Thinking of fan experiences and services in a new way. Testing and applying innovative and new technologies within and outside the stadium. Bringing the emotional connection of our club to life even more through technology and digital infrastructure. Learning from each other and creating new things together.
For the first time, FC Bayern Munich will host, together with its fans, partners, leading experts, start-ups and students from all over the world, the #FCBayernHackDays to learn together, face new challenges and to research new innovative possibilities.
On blocks, tangles and meta-chains – what is the next step for Blockchain?
This time, we will return to the more technical aspects of blockchain: what is the actual state of different platforms, what’s going on with Bitcoin, IOTA, etc., and where does this all lead us to?
In the first talk, Datarella CEO Joerg Blumtritt will provide us with an outlook, especially on the following aspects: