“I’m still / I’m still / Chaining from the Block”

cdc08x 55 views 86 slides Jun 06, 2024
Slide 1
Slide 1 of 86
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53
Slide 54
54
Slide 55
55
Slide 56
56
Slide 57
57
Slide 58
58
Slide 59
59
Slide 60
60
Slide 61
61
Slide 62
62
Slide 63
63
Slide 64
64
Slide 65
65
Slide 66
66
Slide 67
67
Slide 68
68
Slide 69
69
Slide 70
70
Slide 71
71
Slide 72
72
Slide 73
73
Slide 74
74
Slide 75
75
Slide 76
76
Slide 77
77
Slide 78
78
Slide 79
79
Slide 80
80
Slide 81
81
Slide 82
82
Slide 83
83
Slide 84
84
Slide 85
85
Slide 86
86

About This Presentation

“An Outlook of the Ongoing and Future Relationship between Blockchain Technologies and Process-aware Information Systems.” Invited talk at the joint workshop on Blockchain for Information Systems (BC4IS) and Blockchain for Trusted Data Sharing (B4TDS), co-located with with the 36th Internationa...


Slide Content

“I’m still / I’m still /
Chaining from the
Block”
An Outlook of the Ongoing and Future Relationship
between Blockchain Technologies and Process-aware
Information Systems
Claudio Di Ciccio | https://diciccio.net/| [email protected]
Utrecht University, Netherlands

Claudio Di Ciccio
Associate professor
Ph.D. in Computer Science and Engineering
Faculty of Science /
Software Division /
Process Science Group
Main research interests:
formal methods &
logic and computation,
applied in
process analytics &
blockchain architectures
Claudio Di Ciccio 03/06/2024
2

My experience so far
03/06/2024Claudio Di Ciccio
Latina, Italy
(B.Sc)
Rome, Italy
(M.Sc, Ph.D)
Vienna, Austria
(Post-doc,
Assistant Prof.)
Rome, Italy
(Assistant Prof.,
Associate Prof.)
Utrecht, Netherlands
(Associate Prof.)
3

Transaction
•Transfer of (crypto)assets(Ether, Bitcoin, Algo, …)
from accountA to accountB
Externally Owned
Account (EOA)
Externally Owned
Account (EOA)
Digital signature
03/06/2024Claudio Di Ciccio
4
Transaction ID: 0xfa12…40c6da

Ledger
•Ordered collection of transactions
•The ordermatters!
03/06/2024Claudio Di Ciccio
5

Amsterdam, 1856
03/06/2024Claudio Di Ciccio
6
•About 2000 shipsdeparted on an annual
basis
•Seafarers
numerous
a vital contribution to trade
wages paid after a journey
(always in need of credit)
•Non-bank credit markets
Shopkeepers and boarding-house keepers
as lenders
•The Discipline Act (1856)
Forbids the use of seafarers’ wages as
redemption payments
Image source: https://www.istockphoto.com/nl/vector/amsterdam -in-the-19th-century-gm538063610-95625387

The ledger of the
water bailiff’s
03/06/2024Claudio Di Ciccio
7
•The Discipline Act prescribed that
lenders had to present their unredeemed
IOUs to the water bailiff’s during the
month of July 1856
•Every IOU recorded basic information,
including:
the dateon which it was entered
the names of lenderand borrower
the unredeemed amount
•13,708 loans were registered in a
443-page ledger
A hand-drawn ink lithography of men writing a ledger in the water bailiff's office in 1856 (DALL-E, https://openai.com/dall-e-2/)

Block
•Blocks group and collate transactions
•The order matters!
03/06/2024Claudio Di Ciccio
8

Hashing the previous block for immutability
•Blocks refer back to direct predecessors via hashing
•The order matters!
03/06/2024Claudio Di Ciccio
9

The blockchain remembers
03/06/2024Claudio Di Ciccio
10

Centralised ledger
03/06/2024Claudio Di Ciccio
11
“In Amsterdam, the water bailiff’s office was
located in the […] middle of one of the
seafarers’ quarters […] open for registering
IOUs six days per week.
On one occasion, clerks […] worked
overtime on a Sunday: presumably
because the company of H. Lond, one of
the largest lenders in town, had delivered its
1314 unredeemed IOUs the day before and
they did not want to start the new week with
such a backlog”

Decentralisation for persistence
03/06/2024Claudio Di Ciccio
12
Centralisation Decentralisation
Warning: possible information inconsistency→ proof-of-* and consensus

Private|public/ Permissioned|permissionless
Transactability / visibility
Private Public
Consensus
Permissionless
Selectednodes can
transact and view,
everynode can
participate in consensus
Everynode can
transact and view and
participate in consensus
Permissioned
Selectednodes can
transact and view, a
subset of which can
participate in consensus
Everynode can
transact and view,
selectednodes
participate in consensus
03/06/2024Claudio Di Ciccio
Anderberget al. “Blockchain Now And Tomorrow” (2019) http://dx.doi.org/10.2760/901029
13

“Auniversalplatformwithinternal
programminglanguage,sothateveryone
couldwriteanyapp”
[V. Buterin]
03/06/2024
14
Claudio Di Ciccio
From a peer-to-peer electronic cash system
to a programmable distributed environment

Smart Contracts
03/06/2024Claudio Di Ciccio
15
•Smart Contracts in Ethereum
live in the Ethereum environment
execute a function when called
have direct control over their own
balance and key/value storage
exhibit a behaviourthat is fully
specified by their code

Expressive power of
smart contracts
03/06/2024Claudio Di Ciccio
16
•Variants exist
•Solidityis a Turing-completelanguage
for the Ethereum blockchain
•Smart contracts can potentially run any
computable algorithm
Picture: https://doi.org/10.1093/ref:odnb/36578

A programmable distributed environment
Input encoded data
Smart Contract
Account
03/06/2024Claudio Di Ciccio
17
Invoking a smart
contract function
Execution is not
externally
stoppable!

From high-level code to bytecode to bits and
bytes
03/06/2024Claudio Di Ciccio
18

A programmable distributed environment
Input encoded data.
Smart Contract
Account
03/06/2024Claudio Di Ciccio
19
New
Smart Contract
Account
New address
Smart contract code to be deployed
Invoking a smart
contract function
Deploying a new
smart contract
Execution is not
externally
stoppable!

03/06/2024Claudio Di Ciccio
20
Where are Smart Contracts
executed?
First on the mining nodes.
Then, potentially, on every node!
The polygraph machine

A programmable distributed environment
Input encoded data.
Smart Contract
Account
03/06/2024Claudio Di Ciccio
21
New
Smart Contract
Account
New address
Smart contract code to be deployed
Invoking a smart
contract function
Deploying a new
smart contract
Execution is not
externally
stoppable!
Gas price (execution costs)
Gas price (execution costs)

Execution is not for free
(most of all, in public blockchains)
03/06/2024Claudio Di Ciccio
22
Wood , “Ethereum: A secure decentralised generalised transaction ledger” (2014), https://ethereum.github.com/yellowpaper/pape r.pdf

Challenges about costs
03/06/2024Claudio Di Ciccio
23

Price instability of cryptocurrency and gas prices
03/06/2024Claudio Di Ciccio
24
ETH/EUR exchange Gas price on the Ropstentestnet

Cryptos and fiat money
03/06/2024Claudio Di Ciccio
25
Image source: https://www.kbrillphotograp.top/products.aspx?cname=jlo+jenny+from+the+block+outfit&cid=140
Keep smart contracts
lean!
Only absolutely
needed instructions
should be in the
code.

The paradigm
Mainframe Terminal
03/06/2024Claudio Di Ciccio
26
L: https://commons.wikimedia.org/wiki/File:SiemensHicom300_1200.jpg; R: https://commons.wikimedia.org/wiki/File:HP_2647A_term inal.jpg

Web 3.0 and
Decentralised applications (DApps)
27
03/06/2024Claudio Di Ciccio

Advantages and connection to processes
•Smart contracts → Programmability → Process rule enforcing
•Transactions → Asset transfer & function invocation → Process execution
•Distributed store →Data persistency → Process monitoring
•Ledger → Transaction ordering → Logging
•Hashing → Robustness → Secure storage
•Signatures → Authentication → Non-repudiability
•Consensus → Eventual consistency → Traceability
03/06/2024Claudio Di Ciccio28
Images: Left: https://doi.org/10.1145/3183367; right: https://www.dagstuhl.de/en/seminars/seminar-calendar/seminar-details/18332
Layer of trust
even in a
regime of
partial trust
among actors

Executing inter-organisational processes on the
Blockchain: A model-driven approach
D.C, Cecconi, A., Dumas, M., et al. (2019), “Blockchain support for collaborative business processes”
03/06/2024Claudio Di Ciccio
29

Executing inter-organisational processes on the
Blockchain: A model-driven approach
Caterpillar Lorikeet
03/06/2024Claudio Di Ciccio
30
ChorChain
D.C, Cecconi, Dumas et al. Blockchainsupport for collaborative business processes. InformatikSpektrumpp. 1–9 (May 2019)
López-Pintado, García-Bañuelos, Dumas, Weber. Caterpillar: A blockchain-based business process management system. In: BPM Demos. CEUR.ws, 2017.
Tran, Lu, Weber. Lorikeet: A Model-Driven Engineering Tool for Blockchain-Based Business Process Execution and Asset. In: BPM Demos. CEUR.ws, 2018.
Corradini, Marcelletti, Morichetta, Polini, Re, Tiezzi: Engineering Trustable and Auditable Choreography-based Systems Using Blockchain. ACM TMIS 13(3), 2022.

Tracking execution
03/06/2024Claudio Di Ciccio
D.C. et al. Blockchain-Based Traceability of Inter-organisationalBusiness Processes. In: BMSD. Springer, 2018.
31

Traceability
03/06/2024Claudio Di Ciccio
32
D.C. et al. Blockchain-Based Traceability of Inter-organisationalBusiness Processes. In: BMSD. Springer, 2018.

From execution to ledgers
03/06/2024
34
Claudio Di Ciccio

Traceability
03/06/2024Claudio Di Ciccio35
https://www.sage.com/en-gb/blog/blockchain-traceability-supply-chain/ Accessed: 19/02/2020

From ledgers to time-ordered datasets
03/06/2024Claudio Di Ciccio
36

From data sets to process mining and analytics
03/06/2024Claudio Di Ciccio
37

Mining blockchain processes
03/06/2024Claudio Di Ciccio
38

Mining blockchain processes
03/06/2024Claudio Di Ciccio
39

Double spending
03/06/2024Claudio Di Ciccio
40
0xA 0xB0xC
100 ¢10 ¢ 50 ¢
10 ¢ 140 ¢
90 ¢
50 ¢
Tx ID: 0xA90B
Tx ID: 0xA50CX

Double spending
41
03/06/2024Claudio Di Ciccio
0xA 0xB0xC
100 ¢10 ¢ 50 ¢
90 ¢
Tx ID: 0xA90B
50 ¢
Tx ID: 0xA50C

Double spending
42
03/06/2024Claudio Di Ciccio
0xA 0xB0xC
100 ¢10 ¢ 50 ¢
90 ¢
Tx ID: 0xA90B
50 ¢
Tx ID: 0xA50C
60 ¢ 50 ¢
X

On-chain vs off-chain
03/06/2024Claudio Di Ciccio
43
Image source: https://www.kbrillphotograp.top/products.aspx?cname=jlo+jenny+from+the+block+outfit&cid=140
The broken link is
that blockchain
natively has no
control on or view of
off-chain objects

The problem
03/06/2024Claudio Di Ciccio
44
DB

How about the real world?
Oracles: From on-chain to off-chain and vice versa
03/06/2024
45
Claudio Di Ciccio

The Oracle
03/06/2024Claudio Di Ciccio
46
Foundational Oracle Patterns: Connecting Blockchain to the Off-Chain World. BPM (Blockchain and RPA Forum) 2020: 35 -51
DB

Etherisc
03/06/2024Claudio Di Ciccio
47

Flight delay insurance:
the FlightDelayPayout contract
03/06/2024Claudio Di Ciccio
48
Payout in case of
signalled problems
with the flight
Contact with the
off-chain world
Source: https://www.flickr.com/photos/michaelduxbury/5824469025

The Oracle
03/06/2024Claudio Di Ciccio
49
Foundational Oracle Patterns: Connecting Blockchain to the Off-Chain World. BPM (Blockchain and RPA Forum) 2020: 35 -51
DB
ISO/TC 307, ISO/TR 2345: “[A] DLT Oracle[is a] servicethat updates a distributed
ledger using data from outsidethe distributed ledger system”. (2019)
Previous literature: oracles as off-chain information providers.
We see oraclesas a bridge
between the on-chain and off-chain worlds.

Oracle patterns: Overview
03/06/2024Claudio Di Ciccio
Foundational Oracle Patterns: Connecting Blockchain to the Off-Chain World. BPM (Blockchain and RPA Forum) 2020: 35 -51
50

Decentralisedoracles
03/06/2024Claudio Di Ciccio
Enhancing Blockchain-Based Processes with Decentralized Oracles. In: BPM Blockchain and RPA Forum 2021, 102-118, Springer.
51

Decentralisedoracles (example: pull-in)
03/06/2024Claudio Di Ciccio
Enhancing Blockchain-Based Processes with Decentralized Oracles. In: BPM Blockchain and RPA Forum 2021, 102-118, Springer.
52

Decentralisedoracles (example: pull-in)
03/06/2024Claudio Di Ciccio
53
Enhancing Blockchain-Based Processes with Decentralized Oracles. In: BPM Blockchain and RPA Forum 2021, 102-118, Springer.
Credit institute 1
Decentralized
oracle
Credit institute 3
Credit institute 2
Smart
contract

About privity
•Albeit very costly, we could inject all the
information we need on-chain.
•Even if we were able to inject all the data
in the world on chain, would we like the
idea?
•“Privitystrives for limiting the sharing of
information within a contract to those
parties of a contract who have a
contractual need to know”
03/06/2024Claudio Di Ciccio
54
Köpke, Franceschetti, Eder: Balancing Privity and Enforceability of BPM-Based Smart Contracts on Blockchains. BPM (Blockchain and CEE Forum) 2019: 87-102

While collaborators cooperate…
03/06/2024Claudio Di Ciccio55
Signing of the Peace Protocol Between Spain and the United States, August 12, 1898
(source: https://library.whitehousehistory.org/fotoweb/archives/5017-Digital-Library/Main%20Index/Artwork/520.tif.info)

… the whole network observes
03/06/2024Claudio Di Ciccio
56
Scene from The Truman Show (1998). Image source: https://redeemingculture.com/film/drama/4106 -the-truman-show-empathy-and-reality

Ledger and secrecy
03/06/2024Claudio Di Ciccio
57
Image source: https://www.kbrillphotograp.top/products.aspx?cname=jlo+jenny+from+the+block+outfit&cid=140
Every participant in
the blockchain
network can read the
data on the ledger
unless the platform
is private and
permissioned
Public
permissionless
platforms are more
robust and
guarantee non-
repudiability

Transaction information hiding via
homomorphic encryption
03/06/2024Claudio Di Ciccio
Xu, Zhang, Zhu (2023). Regulation-Friendly Privacy-Preserving Blockchain Based onzk-SNARK. In: Advanced Information Systems Engineering Workshops.
CAiSE2023
58
Coming next: High-Performance
Confidentially-Preserving Blockchain via
GPU-Accelerated Fully Homomorphic
Encryption(Guan, Qi, Shen, Wang,
Zhang and Cui)

Fix this image in your memory
03/06/2024Claudio Di Ciccio
Image source: https://www.makinggameofthrones.com/production -diary/2013/5/29/leeches-dragons-and-a-bear-behind-the-scenes-of-episodes-307.html
59

Is this the same image?
03/06/2024Claudio Di Ciccio
Image source: https://www.makinggameofthrones.com/production -diary/2013/5/29/leeches-dragons-and-a-bear-behind-the-scenes-of-episodes-307.html
60

Validation v. understanding
03/06/2024Claudio Di Ciccio
61
Image source: https://www.makinggameofthrones.com/production -diary/2013/5/29/leeches-dragons-and-a-bear-behind-the-scenes-of-episodes-307.html

Business Process Model and Notation (BPMN)
collaboration diagram
03/06/2024Claudio Di Ciccio
62 a n u fa ctu re r
Pr oduc tion or der
s et up
Ord e r p a rts
ill of mater ials
e ch a n i ca l p a rts s u p p l i e r
ill of mater ials
r ec eiv ed
El e ctro n i c p a rts s u p p l i e r
ill of mater ials
r ec eiv ed

The message, in clear
(as seen by the manufacturer)
03/06/2024Claudio Di Ciccio
630xfd9ffe3578a42d81c4684bd47e6575d9a8f10cc6dab984bd7e19ee0dbacb6287Hash:

The message
(as seen by external parties)
03/06/2024Claudio Di Ciccio
640xfd9ffe3578a42d81c4684bd47e6575d9a8f10cc6dab984bd7e19ee0dbacb6287Hash:

The message
(as seen by the electronic parts supplier)
03/06/2024Claudio Di Ciccio
650xfd9ffe3578a42d81c4684bd47e6575d9a8f10cc6dab984bd7e19ee0dbacb6287Hash:

The message
(as seen by the mechanical parts supplier)
03/06/2024Claudio Di Ciccio
660xfd9ffe3578a42d81c4684bd47e6575d9a8f10cc6dab984bd7e19ee0dbacb6287Hash:

Hence the name: CAKE
03/06/2024Claudio Di Ciccio67
Image source: https://heriots.co.uk/products/pistachio
Thursday, June 6, 14:00: CAKE: Sharing
Slices of Confidential Data on
Blockchain(Maragone, Spina, D.C.,
Weber)

Ingredients
•Blockchain platform
•Smart contracts
•InterPlanetary File System (IPFS)
•Ciphertext-Policy (CP) Attribute-Based Encryption (ABE)
03/06/2024Claudio Di Ciccio
68

CP-ABE
•Attribute-Based Encryption (ABE): type of public-key encryption
•Ciphertext-Policy ABE (CP):
We associate rolesand process instance IDwith attributes
(propositionalliterals)
Messages are associated with policies
(propositional formulae on attributes)
•Attributes:
14548487, Supplier, Electronics, Mechanics, Manufacturer
•Policy:
14548487 AND
(Manufacturer OR (Supplier AND Electronics))
03/06/2024Claudio Di Ciccio
69
Process
instance ID
Roles

CAKE
03/06/2024Claudio Di Ciccio
70
Icons: https://www.iconfinder.com/
PolicyPlaintext Ciphertext
Ciphertext Plaintext
Secret key
Attributes Secret key
1: ciphering
2: key generation
3: deciphering
0: pre-phase
Public
key (pk)
Master public
key (mpk)
pk
pk
Key pair
Key pair
pk
mpk
Given
Attribute certification

Phase 0: certification
03/06/2024Claudio Di Ciccio
71
Attribute certifier
Address: 0x123
Attributes: 14548487, Manufacturer
Address: 0x456
Attributes: 14548487, Supplier, Electronics
Address: 0x789
Attributes: 14548487, Supplier, Mechanics
Smart Contract

Phase 1: ciphering
03/06/2024Claudio Di Ciccio
72

Phase 1: ciphering
03/06/2024Claudio Di Ciccio
73

Phase 2: key generation
03/06/2024Claudio Di Ciccio
74
14548487, Manufacturer
14548487, Supplier, Electronics
14548487, Supplier, Mechanics
D: 2nN6…GCcZ
Dj: 4558…5+Qg
Djp: 8944….5949
D: A9BS…CnoO
Dj: OQEL…1207
Djp: hI2M…. lWBb
D: 1+8Ka…kaUd
Dj: feoH…7393
Djp: bJju…. NIGw
Key pair
Key pair
Key pair

Message policy example
03/06/2024Claudio Di Ciccio
75
AttributesProcess instance (case id)

Phase 3: deciphering
03/06/2024Claudio Di Ciccio
76

Phase 3: deciphering
03/06/2024Claudio Di Ciccio
77

Focus
03/06/2024Claudio Di Ciccio
78
14548487, Supplier, Mechanics
Why?

Q&A
•Why a certifier?
With signatures, you can prove that “you are you”
Without a certifier, you cannot prove that what you say is true
•Who forges the keys?
A delegated key manager
•One certifier, one key manager. What about decentralisation?
Right…
•Can you integrate your technique with a BPMS?
Not yet but…
03/06/2024Claudio Di Ciccio
Marangone, D.C:, Weber: Fine-Grained Data Access Control for Collaborative Process Execution on Blockchain. BPM (Blockchain and RPA Forum ) 2022: 51-67
79

Room for improvement
03/06/2024Claudio Di Ciccio
Marangone, D.C., Friolo, Nemmi, Venturi, Weber: MARTSIA: Enabling Data Confidentiality for Blockchain-based Process Execution (2023)
80
Multi-Authority Approach to Transaction Systems for Interoperating Applications

The new architecture: MARTSIA
03/06/2024Claudio Di Ciccio
Marangone, D.C., Friolo, Nemmi, Venturi, Weber: MARTSIA: Enabling Data Confidentiality for Blockchain-based Process Execution (2023)
81
1. Key management 2. Data exchange0. Initialisation
Push-
inbound
oracle
Pull-
outbound
oracle

Integration with Caterpillar
03/06/2024Claudio Di Ciccio
82

About the costs
03/06/2024Claudio Di Ciccio
83

Why are prices in Gwei?
03/06/2024Claudio Di Ciccio
84
ETH/EUR exchange Gas price on the Ropstentestnet

Open challenges
•Revoke access to data
•Let Smart Contracts use off-chain data via pull-inbound oracles
•Test with real-world multi-party business processes in production
•Extend the policy language with primitives for aggregating and
manipulating data
•…
03/06/2024Claudio Di Ciccio
85
Friday, June 7, 14:00: Trusted Execution
Environment for Decentralized Process
Mining (Goretti, Basile, Barbaro, D.C.)

Open challenges at large
•Strike a balance between “smart-contracting” and off-chain
deployment of PAISs
•Define the interplay of Blockchain-as-a-Service for PAISs
•Build a standard communication format for blockchain-based inter-
organisational information exchange
•Establish guidelines for the use of blockchain technologies with and
within PAISs
•…
03/06/2024Claudio Di Ciccio
86
Friday, June 7, 14:00: Trusted Execution
Environment for Decentralized Process
Mining (Goretti, Basile, Barbaro, D.C.)

“I’m still / I’m still /
Chaining from the
Block”
An Outlook of the Ongoing and Future Relationship
between Blockchain Technologies and Process-aware
Information Systems
Claudio Di Ciccio | https://diciccio.net/| [email protected]
Utrecht University, Netherlands
Picture: https://youtu.be/dly6p4Fu5TE?si=MTqzSi5KGLIZn3sr
Friday, June 7, 14:00: Trusted Execution
Environment for Decentralized Process
Mining (Goretti, Basile, Barbaro, D.C.)