-
Notifications
You must be signed in to change notification settings - Fork 1
Events als Verifiable Credentials opslaan #25
Comments
#13 omschrijft wat VCs zijn en waar die inzetbaar/nodig zijn. Het uitdelen van het eigendomsbewijs door het Kadaster en identiteitsbewijs door de overheid is geïndentificeerd in dat issue. Wat nog niet duidelijk is of de events in VCs gevat moeten worden en hoe dat er dan uit ziet. Waarom events überhaupt opslaan als verifiable credential? Het uitgangspunt van (Solid) PODs is dat je zelf de regie hebt over de data. Dus wie daar bij kan, maar ook wat daar precies in staat. Hoewel het opslaan van het onderhandelen in events er historie en herleidbaarheid aan geven zijn ze nog steeds kwetsbaar voor wijzigingen. Er staat de eigenaar van de POD niets in de weg om biedingen (events) uit het verleden te herschijven. Dit ondermijnt (potentieel) de integriteit van de data en daarmee het vertrouwen in het proces. Door events te combineren met VCs geeft het als het ware een "echtheidscertificaat" aan zowel de uiteindelijke koopovereenkomst, als de tussengelegen events waaruit die koopovereenkomst is opgebouwd. |
Het is niet toereikend om de (kale) events op te slaan in de eigen POD, om bovengenoemde reden. Er zijn verschillende ontwerpen denkbaar hoe we Verifiable Events (VE) kunnen maken. Ontwerp (1) Ontwerp (2) Ontwerp (3) Ontwerp (4) Ontwerp (5) |
Ontwerp (4) lijkt voor nu het interessants om verder uit te werken, omdat deze het beste balans lijkt te bieden tussen "data bij de bron" / "regie op eigen data" en gevalideerde en verifieerbare data. Dat komt er dan grofweg als volgt uit te zien: versie 0.1. Koos en Vera werken via de KOEK App, welke dan verbonden is met een digitale makelaar, welke hun acties kan bevestigen. De Verifieerbare Events worden in hun eigen POD opgeslagen.Wat nog niet in het plaatje zichtbaar is en verder moet worden onderzocht is:
|
In dit ontwerp zijn er een aantal verschillende VCs:
|
'The aggregate' is hier een mistig concept. Er is namelijk een aggregate die alle data bevat van de koopovereenkomst. Dit is de door events opgebouwde koopovereenkomst, de gedataficeerde koopovereenkomst dus. Deze bestaat voor het grootste gedeelte van het proces alleen in memory in de 'KOEK app' (wat een geniale naam!! 😆 ) Bij een Event Sourced systeem is er een dedicated EventStore die ondersteuning biedt voor het event sourcen ... welke in dit geval ontbreekt. Daarom is er extra administratie nodig om bij te houden welke events er bij een aggregate horen. Bijv. koopovereenkomst (aggregate) koopovereenkomst:
prov:wasGeneratedBy
event:1169a7f6-aebc-4c0e-b69b-ba5f6530a72c,
event:1bc24631-de10-42b1-8ffe-6c0509336dfa,
event:3c27a67c-ab1e-49cf-8e22-90f58e924e95,
koperEvent:36cf9c26-c692-48ee-8802-c8979a66d2d4,
event:674b0ed0-6501-42c1-aa99-1d045030288d,
koperEvent:3dcf3747-185f-4862-a442-47de5e236fa9,
event:817f3528-aa93-45bd-8462-ee43837f8df4,
koperEvent:4f5e143b-e2df-4fe9-9770-99c6b5bd4054,
event:9b39855b-5c40-4635-b0e8-906cbddcbc23,
koperEvent:87ce3023-ed73-4054-91fb-943b47c98a1a,
event:ad7ed2b1-8cda-4e5a-838b-c7790dcb9107,
koperEvent:9b899c79-865b-4820-8583-0156fc4b1443,
event:c572c5c8-2c84-4b5a-8eb2-630215eae840,
koperEvent:a3dd7c4b-1572-4837-a9fc-46219b751495,
event:c87c8a9b-0419-4b4f-89ed-3c97a5b3b51c,
koperEvent:c2a70f99-1542-4dc7-a9eb-c055158041bc,
event:f587c64e-d006-442c-9252-2d6ca21190af
. Deze wordt bijgehouden in de POD van Verkoper Vera aangezien de 'aggregate administratie' staat op de plek waar de (Web)ID van de aggregate naar verwijst. Open staand punt: Hoe weet de koper dat deze lijst niet door de verkoper is aangepast en dus of die wel compleet is?
|
Ah check, de term 'aggregate' deed me aan event sourcing denken, 'aggregate administratie' zet (mij) daardoor op het verkeerde been 😇. Dit gaat over de event metadata, dus iets als: verkooplogboek (VLB)?
Dit vind ik een interessante. Het uitgangspunt van Solid / pods is dat je zelf de beheer over je data hebt (toch?). Verschuiven we dit nu niet naar: data over jou wordt bij jou opgeslagen? Of eigenlijk: in hoeverre gaat dit over trust? We kunnen natuurlijk alle interactie (events, VLB) laten signen door een makelaar, maar op welk punt hadden we die data niet beter in een makelaar pod kunnen opslaan? Gezien de events, logboek en koopovereenkomst over meerdere partijen gaat.
Nou ja, events en logboek dus bij "een digitale makelaar" in de pod opslaan. Koper/verkoper hebben beiden dan alleen lees en append rechten. Weten ze beiden zeker dat de andere partij het niet gewijzigd heeft en heb je voor dit stukje geeneens VCs nodig. Het eindproduct (de koopovereenkomst) kan (als VC?) bij koper en verkoper in pod opgeslagen worden. |
OK. VCs zijn 😎 ... maar laten we deze niet nú overal toepassen 😁 Besloten in overleg:
Daarmee sluit ik dit issue aangezien we de events (dus) NIET als VCs gaan toevoegen / produceren / bewaren / opslaan. |
The text was updated successfully, but these errors were encountered: