DECODE – DEcentralized Citizen Owned Data Ecosystem
In the context of contemporary urban development the growth of Smart Cities through—IoT, the sharing-economy such as AirBnB, digital services and platform from the private sector like Uber, or from municipal provision as in metro transport—there is a need for personal data privacy and for a level playing field in ‘aggregated data’ access for service providers and researchers. The EU Horizon 2020 funded DECODE research project has been developing just such a technical infrastructure to ensure smart and safe cities. With the motivation of the research being for real world implementation by all types of service providers using Privacy by Design principles. The question for Open Science and scholarly communications is, how can these principles and technologies be transferred from urbanism to academia.
The DECODE project was initiated during the early months of 2016 by a trans-disciplinary research and development group lead by senior project developer Dr. Francesca Bria, who has served the municipality of Barcelona for the past four years as Chief Technology Innovation Officer during the office of mayor Ada Colau. DECODE brought together institutions regarded as centres of excellence for work on Blockchain technology, focusing on social perspectives of labour and so called sharing-economy.
Below is the list of participating institutions:
- The NESTA National Endowment for Science, Technology and Arts in UK
- The Dyne.org foundation, Think/do tank and software development organisation
- The Waag, cultural institution in Amsterdam
- The software company Thoughtworks, international excellence in Agile methodology
- The University College of London, department of blockchain studies
- The Catholic University Radboud in Nijmegen, The Netherlands
- The Technical University and NEXA centre for Internet & Society in Turin, Italy
- The Open University and Technology Centre of Catalonia
- The National Centre for Scientific Research of France
- The startup Thingful limited Inc., specializing in IoT semantic analysis
- The EURECAT institute for statistical and data studies of Catalunya
- The Arduino company, makers of open popular hardware platforms
- The Municipality of Amsterdam
- The Municipality of Barcelona
The DECODE project develops a distributed and privacy aware architecture for decentralised data governance and federated identities. The platform has developed state of the art technology adopting Elliptic Curve based Cryptography (also Pairing based in Twisted space) and in particular Attribute Based Credentials (ABC). These components adopted in DECODE’s vertical software technology stack facilitates the development and deployment of very diverse types of knowledge, from the
- higher view of micro-service orchestration requiring sysadmin and dev-ops expertise (with DECODE OS), to
- mathematical formulas expressed in a simple Domain Specific Language (DSL) that templates the sort of work done in Mathematica and facilitates its application into a very small virtual Machine (VM) capable of running also on electronic chips.
Building blocks of DECODE’S tech stack
Being more specific, I’ll link below an overview of some of the research and software output in DECODE through a number of projects (from higher to inner view) that are pieces falling neatly into place in the complex infrastructure puzzle we are building. While busy on the first pilots in Amsterdam and Barcelona, I’m confident we’ll soon be able to face more complex challenges as more projects from the Free and Open Source community latch onto DECODE’S usefulness. One of them is the Yetta project
for a permissionless smart-contract distributed platform; Yetta is originated in the US and entirely dependent on external private funding (already partially secured), the project has already announced it leverages on the successful results of DECODE and other related projects we are involved in Dyne.org.
Decode Operating System (OS)
Decode OS: https://decodeos.dyne.org
Decode OS is an “Operating System for Private and Anonymous Computation Clusters” designed to run on servers, embedded computers and virtual machines to automatically connect micro-services to a private and anonymous peer-to-peer network cluster.
At the core of Decode OS resides our community driven GNU+Linux distribution Devuan.org and a software called “Tor-Dam” that helps putting in a peer to peer (P2P) network for any daemon application (NB: daemon application is software that runs on a computer to carry our processes that don’t require any user interaction: writing logs, maintaining a service, or interact with other programs, etc.) that communicates to its own instances via the Tor network, therefore realizing some of the Privacy by Design principles enounced in this DECODE document “Privacy Design Strategies for the DECODE Architecture“.
There is also an SDK (Simple Distro Kit) to facilitate the creation of customised Decode OS images which is even capable of automating the “toasting” (AKA making) of a Dockerfile used as prototype by developers and integration engineers into Cloud or ARM Embedded OS images that can run as microservices. While we are rolling out the free and open toaster service at https://toaster.dyne.org just consider this setup is capable of toasting an installable system for more than 30 different ARM devices (some of them also “Open Hardware” and free from binary firmware blobs) and practically all Cloud computing VM targets.
Zenroom (crypto language virtual machine)
Zenroom is a small Virtual Machine based on the Lua direct syntax parser, statically compiled to implement a DSL capable of Elliptic Curve based arithmetic operations on very large integers thanks to the Milagro library.
The Zenroom VM has no external dependencies, includes a cutting edge selection of C99 libraries and builds a small executable ready to run on: desktop, embedded, mobile, cloud and browsers (webassembly). It also compiles unikernel (without Linux) to run standalone on micro-chips.
Zencode is the name of the language executed by Zenroom: it is simple to understand and can process large data structures while operating cryptographic transformations on them. Zencode is a Domain Specific Language (DSL) whose design is informed by pilot use-cases in DECODE.
I’m personally dedicated to develop this building block since DECODE’s early inception, to make it easy to write and review the code of algorithms dealing with our private data, with a particular attention given to the role of the “Data Protection Officer” (DPO) in the recent European General Data Protection Regulation (GDPR) instated in the European Union.
Chainspace (sharded smart-contract blockchain/DLT)
Is a Blockchain permissionless development following novel ideas regarding the sharded distributed storage of files (off-chain contracts) whose design is well described by this paper “Chainspace: A Sharded Smart Contracts Platform“which is in course of implementation, and also dependent from external funding.
Coconut (distributed attribute based credentials)
Coconut is a “Threshold Issuance Selective Disclosure Credentials with Applications to Distributed Ledgers” and it provides test covered cryptographic functions to manage Attribute Based Credentials for its authentication system.
A peculiar design choice we are particularly proud in Decode is the fact that authentication is not bound to an “identity”. We actually despise the concept of identity and substitute it with that of credentials and certificates to be disclosed only in the context requiring them for authentication.
This is not even all there is…
Please consider this a non-exaustive list of all developments we are doing in DECODE: mostly for reasons of space we are omitting here to explore the case of the BCNNow dashboard for the IoT citizen sensing toolkit, which would deserve a blog-post on its own.
Dialogue with GenR
I’ve never really been a blogger, but what really makes interesting this novelty to me is the fact that I cross roads again with the GenR editor, Simon Worthington. In in our e-pistolary exchange preceeding the publication of this blog post, he posed an interesting and pragmatic question many research organisation dedicated to archiving may face.
The main problem across the board is long term support. The question I have is, do you see it being possible that the permissionless access and reliability of access to data that #DWeb could bring about, being combined with other technologies as being a way to help improve how digital systems are made. And lead to the removal of the wasteful corporate monopolies and enable actual innovation, in an ‘order of magnitude’. The technologies and methods to accompany the #DWeb that I’m thinking of are: Continuous Integration (CI), Continuous Development (CD), virtualization, Infrastructure as Code, and methods like Agile, and Service Design.
First of all I think the question of ‘scaling’ posed this way sounds much better than the ‘fear of missing out’ (FOMO) sort of mood Silicon Valley gives us. The industry went on building digital infrastructure “made to last” grasping down in the glacial caves of Siberia with the most technologically dense installation of computing (AKA server farms) to serve the world’s social connectivity by throwing energy and metal at it like Facebook in Siberia.
I believe that another way is possible and it can be that of resilience, of leveraging communities of passionate volunteers and sharing the responsibility for a system that benefits people. And I believe that a lot of distributed infrastructure could be done if we manage to run a technology stack built with DECODE and the application level daemons that are developed by these communities.
So today it may be extremely easy to prepare a service image, distributed on low-power Olimex boards and hosted on SATA drives into a bundle that everyone can store in a cupboard. These machines can then get in touch through Tor and execute the wills of an application designed with interdisciplinary in mind, that is facilitating the work of graphical interface design as well that of cryptographic modeling in a templated system of modules that are clearly separated and interoperable.
‘DECODE’. Text. DECODE. Accessed 2 November 2018. https://decodeproject.eu/.
‘Francesca Bria, nova comissionada de Tecnologia i Innovació Digital | Info Barcelona | Ajuntament de Barcelona’. Accessed 2 November 2018. https://www.barcelona.cat/infobarcelona/ca/francesca-bria-nova-comissionada-de-tecnologia-i-innovacio-digital_347634.html.
‘Elliptic-Curve Cryptography’. Wikipedia, 28 October 2018. https://en.wikipedia.org/w/index.php?title=Elliptic-curve_cryptography&oldid=866071381.
‘Attribute Based Credentials – Privacy Patterns’. Accessed 2 November 2018. https://privacypatterns.org/patterns/attribute-based-credentials.
‘DECODE OS – Private and Anonymous Peer-to-Peer Network Clusters’. Accessed 2 November 2018. https://decodeos.dyne.org.
Privacy Design Strategies for the DECODE Architecture”. https://www.decodeproject.eu/publications/privacy-design-strategies-decode-architecture
‘Zenroom – Crypto Language Execution’. Accessed 2 November 2018. https://zenroom.dyne.org.
‘Chainspace | a Planetary Scale Smart Contract Platform’. Accessed 2 November 2018. https://chainspace.io/.
Al-Bassam, Mustafa, Alberto Sonnino, Shehar Bano, Dave Hrycyszyn, and George Danezis. ‘Chainspace: A Sharded Smart Contracts Platform’. ArXiv:1708.03778 [Cs], 12 August 2017. http://arxiv.org/abs/1708.03778.
Sonnino, Alberto, Mustafa Al-Bassam, Shehar Bano, Sarah Meiklejohn, and George Danezis. ‘Coconut: Threshold Issuance Selective Disclosure Credentials with Applications to Distributed Ledgers’. ArXiv E-Prints 1802 (1 February 2018): arXiv:1802.07344. http://adsabs.harvard.edu/abs/2018arXiv180207344S.
Denis “Jaromil” Roio PhD thesis of 2018 is worthy of a mention in relationship to the DECODE project. Roio, Denis. ‘Algorithmic Sovereignty’. Thesis, University of Plymouth, 2018. http://hdl.handle.net/10026.1/11101.
As well as the City of Barcelona’s publications on technology and service development. ‘Open & Agile Digital Transformation Toolkit’. Text. Barcelona Digital City, 15 May 2017. http://ajuntament.barcelona.cat/digital/en/digital-transformation/technology-for-a-better-government/transformation-with-agile-methodology.
Denis “Jaromil” Roio, CTO & co-founder, Dyne think & do tank https://Dyne.org
This project is receiving funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement No. 732546.
Citation format: The Chicago Manual of Style, 17th Edition
Roio, Denis “Jaromil”. “What Can Open Science Learn and Use From DECODE’s Blockchain Urbanism Research and Tech Stack?,” 2018. https://doi.org/10.25815/PTPM-VC29