2 minute read

User Interfaces

Next Article
BCTN - DP World

BCTN - DP World

transacties in alle blocks doorzocht moeten worden. Hiervoor is een meer traditionele database beter geschikt.

De laag hierboven bevat de logica die specifiek gebouwd is voor deze applicatie: de chaincode. Chaincode is de term die in de context van Hyperledger Fabric wordt gebruikt voor logica-implementatie op de blockchain, en is te vergelijken met een smart contract.

Advertisement

De logica voorziet in drie grote functionaliteiten: CRUD-acties, validatie en access control.

In de applicatie werken verschillende partijen samen aan hetzelfde proces.

Om ervoor te zorgen dat deze data eenzelfde betekenis krijgen, werd het Unified Ontological Trade Model (UOTM) ontwikkeld, deels gebaseerd op andere standaarden zoals die van GS1 en Open Trip Model.

Het maken van dergelijke modellen is zeer courant. Wetenschappers maken al jaar en dag gebruik van modellen die de werkelijkheid beschrijven én vereenvoudigen. Softwareontwikkelaars doen hetzelfde. Zij hebben als doel via software een spiegel van de werkelijkheid te creëren. Zo ontstaat een vertaling van de werkelijkheid naar een (software) model (figuur 11).

In deze implementatie werd ervoor gekozen om enkel data toe te laten die gemodelleerd zijn volgens dit model. Een van de functies van de chaincode wordt zo duidelijk: validatie. Enkel wanneer data in het juiste formaat worden aangeleverd, zullen

Figuur 11 - Unified Ontological Trade Model

werkelijkheid

Vertaling spiegel van werkelijkheid

WERELD

Blockchain veranderingen

MODEL

REGISTREERT WERKELIJKHEID

Create / Read / Update / Delete (“CRUD”) acties toegelaten worden, zo niet zullen de data geweigerd worden door de chaincode.

De derde functionaliteit van de chaincode is access-control. Dankzij de bovenvermelde “channels” ontstaat een eerste beveiligingslaag om ongeoorloofde toegang tot gegevens te voorkomen. Dat type access control bevindt zich op de netwerklaag en is vrij statisch.

Voor de use-cases is het noodzakelijk dat data dynamisch kunnen gedeeld worden doorheen de tijd. Zo kunnen op een bepaald tijdstip partij A en B toegang hebben tot een object, maar op een later tijdstip enkel partij C. Ook dienen die partijen niet noodzakelijk een node te hebben. De access-control in de chaincode gaat dan ook eerder over de business-logica en bevindt zich op applicatieniveau.

In de buitenste laag bevinden zich de mogelijke interfaces om met de blockchain te interageren, waaronder de grafische user interfaces en de data-integraties.

Er werden twee types van grafische user interface voorzien. De ene is een technisch administratiepanel, voornamelijk bedoeld voor een beheerder van het systeem. De andere is een grafisch meer uitgewerkte interface waarin de verschillende elementen uit de datastructuur worden samengenomen tot overzichtelijke dashboards (figuur 12).

Figuur 12 - User interfaces

Technische interface

• CRUD op data-elementen • Toegangscontrole op niveau van individuele dataelementen (maritiem – product – weg) • Directe verbinding met Blockchainnode (API – chaincode) • Op elke node ( [nodeip]:8081 ) • Aggregated views • Dashboards • Connectie met backend “Docky” • Delen op niveau van dossier / tradeflow • https://app-vil.dockflow.com

End-user interface

Het beheer scherm Toegangsportaal applicatie Kaart-overzicht

This article is from: