The SOFIE project started three years ago with the assumption that using multiple Distributed Ledger Technologies (DLTs) together (called as the interledger approach), allows interoperability and federation between existing IoT systems in an open and secure manner. Now the project is coming to an end and we are happy to confirm that our original assumption was correct. With that SOFIE has achieved all of its goals. We have developed and implemented the SOFIE framework architecture and released it as open source. It was also tested and evaluated in the lab and in four SOFIE pilots and one reference implementation use case, and SOFIE project has been actively disseminating and exploiting its results.
Figure 1. Sofie architecture.
The SOFIE framework architecture shown in Figure 1 consists of six components:
- Interledger is the backbone of the SOFIE Framework, enabling easy federation over different ledgers. The component supports multiple ledger types (Ethereum, Hyperledger Fabric, KSI, Hyperledger Indy) and support for new ledgers can be easily added. The provided atomic transaction functionality can be leveraged to different types of applications as demonstrated by the multiple examples provided.
- The Identity, Authentication and Authorisation (IAA) component can be used to secure any HTTP-based resource with minimal effort. IAA can be used with a variety of authentication and authorisation methods, including emerging standards such as Decentralised Identifiers (DIDs) and Verifiable Credentials (VCs), as well as with traditional mechanisms such as bearer tokens.
- The Privacy and Data Sovereignty component extends OAuth2.0 to cover additional authorisation grants, including VCs and DIDs. Furthermore, the PDS authorisation server supports blockchain-based tokens, as well as logging to smart contracts. The privacy module of PDS allows for local differential privacy, which protects the end-users even from curious system operators.
- The Semantic Representation component can be used to easily open the system data model to external parties. It allows the system to be used by other systems or IoT devices automatically, without the need of manual system integration. The component automatically validates the messages external systems are sending and can lower the effort on implementing security rules by integrating them in the data model.
- The Marketplace component provides an open decentralised marketplace that anyone can join. It supports different pricing models for auction and fixed priced sales, and covers the whole sales process from creating the auction all the way to the buyer reporting successful receipt of the item thus supporting comprehensive transparency and accountability for the trading.
- The Provisioning and Discovery component can be used to discover new IoT devices using multiple discovery protocols with minimal effort. The component provisions the discovered devices based on the user requirements and it also configures the IoT devices. The component uses the Semantic Representation component for providing the metadata to the IoT device, and it uses Bluetooth and DNS as discovery protocols.
The SOFIE framework implementation is available as open source under Apache License 2.0. For more details of the SOFIE architecture and its implementation, please check our deliverables D2.6 and D2.7. During the development of the SOFIE framework and pilots, continuous integration (CI) and continuous delivery (CD) environment was used to perform automatic testing, which allowed us to discover bugs quickly and improve the quality. Deliverable 3.4 describes the CI/CD environment in more details.
The SOFIE framework was deployed and tested in five different pilots and use cases:
- Food Supply Chain Pilot enables tracking growth and transportation conditions of the agricultural produce in a secure and transparent way all the way from the farm to the supermarket. This allows customers to receive accurate information about the produce, and helps with dispute resolution between involved parties.
- Decentralised Energy Flexibility Marketplace Pilot offers a decentralised marketplace to trade incentives for local usage of energy, which allows mitigation the reverse power flow in the electricity grid when there is a surplus of local energy produced by unpredictable sources such as wind or solar.
- Context-Aware Mobile Gaming Pilot explores how DLTs can be used to provide new gaming features for players, and allows gamers to interact with physical world through IoT devices.
- Decentralised Energy Data Exchange Pilot connects energy data providers with energy data consumers in a secure, open and decentralised way.
- Secure Marketplace for Access to Ubiquitous Goods (SMAUG) use case provides a decentralised, blockchain-based auction marketplace for the rental of smart lockers.
For more details, explore the SOFIE website and deliverables D3.5 and D5.4. The SOFIE components and pilots have also been extensively evaluated with respect to our KPIs, with the evaluation results reported in deliverable D4.5.
Last but not least, SOFIE has been very active in disseminating and exploiting its results. Over 30 scientific publication have already been published related to SOFIE, and in addition several publications have been submitted, several workshops held, over 30 blog posts written, and SOFIE has also been active in IoT and DLT-related standardisation. Furthermore, exploitation roadmap (deliverable 6.9) and business models canvas’ for each of the pilots (deliverable 6.10) have been created. The overview of SOFIE's dissemination and exploitation activities can be found in deliverable D6.11.
Photo 1. Team SOFIE at Decentralized 2019.
Overall, the SOFIE team worked very well on this challenging topic for the last three years and the co-operation within the project between 10 partners was very good. Our work has shown that DLTs are suitable for providing interoperability between IoT platforms and other systems, improving openness, transparency, efficiency, security, and privacy.
Illustrations by project SOFIE.