ProMTEE: Secrecy Preservation For Online Process Monitoring with TEEs.pdf
DavideBasile11
1 views
84 slides
Oct 10, 2025
Slide 1 of 84
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
About This Presentation
The online monitoring of collaborative business processes involves the integration of event data sourced from various information systems into a unified process state. The transmission of process records across organizational boundaries poses significant data secrecy and security challenges. In this...
The online monitoring of collaborative business processes involves the integration of event data sourced from various information systems into a unified process state. The transmission of process records across organizational boundaries poses significant data secrecy and security challenges. In this context, organizations may be reluctant to outsource sensitive data with their collaborators to update a global process state. In this paper, we propose ProMTEE, a novel framework designed to tackle these challenges by resorting to trusted applications running in Trusted Execution Environments (TEEs). To showcase the potential of ProMTEE, we contextualize its four-staged interaction protocol within the realm of two online monitoring tasks, namely, control flow tracking and compliance monitoring. We verify the security of our solution through a threat analysis against a set of security requirements derived from a supply-chain scenario. In addition, we conduct an experimental assessment of our proof-of-concept implementation with tests on memory usage and latency using real-world datasets.
Size: 3.19 MB
Language: en
Added: Oct 10, 2025
Slides: 84 pages
Slide Content
SecrecyPreservationfor
Online Process
Monitoring with Trusted
ExecutionEnvironment
Davide Basile, Sapienza University of Rome, Italy
Claudio Di Ciccio, Utrecht University, Netherlands
26
Accessiblesection
Monitoredprocessdimensions
Case P024#1
Status: Running
Enabled: Check Container (CC)
Secret section
Control flow field
ProMTEEprocessstate
27
Accessiblesection
Control flow field Business rule field
Monitoredprocessdimensions
Case P024#1
Status: Running
Enabled: Check Container (CC)
Case P024#1
Rule: Separationof duty (C3)
Status: TemporarilySatisfied
Secret section
ProMTEEprocessstate
28
Accessiblesection
Secret section
Monitoredprocessdimensions
Case P024#1
Status: Running
Enabled: Check Container (CC)
Case P024#1
Rule: Separationof duty (C3)
Status: TemporarilySatisfied
Relevantevent data
<event>
<string key=‘case:concept:name’ value=‘PO24#1’/>
<string key=‘concept:name’ value=‘Fill in Container’/>
<date key=‘time:timestamp’ value=‘2024-11-04T16:05:06’/>
<string key=‘Container ID’ value=‘TGHU75993’
<string key=‘Logistics Operator’ value= ‘A12B8L123’/>
</event>
Control flow field Business rule field
ProMTEEprocessstate
29
Functionalarchitectureand deployment
Event Stream Generator
<<device>>
Information System Machine
ProcessState Agent
<<device>>
Client Machine
<<data link>>
Event generation
31
Components of a ProcessVault
<<executionenvironment>>
TrustedExecutionEnvironment
Event Dispatcher
(Fixed)
ProcessState Manager
(Fixed)
Control Flow Tracker
(Process-based)
Compliance Rule Tracker
(Process-based)
ProcessVault
32
<<executionenvironment>>
TrustedExecutionEnvironment
ProcessState Manager
(Fixed)
Control Flow Tracker
(Process-based)
Compliance Rule Tracker
(Process-based)
ProcessVault
Process
State
Components of a ProcessVault
Event Dispatcher
(Fixed)
33
<<executionenvironment>>
TrustedExecutionEnvironment
Event Dispatcher
(Fixed)
ProcessState Manager
(Fixed)
Control Flow Tracker
(Process-based)
Compliance Rule Tracker
(Process-based)
ProcessVault
ProcessTrackers
Process
State
Components of a ProcessVault
34
Integration of state-of-the art algorithms
Control Flow Tracker
(Process-based)
Compliance Rule Tracker
(Process-based)
van der Aalst, W.M.P.: The application of petri nets to workflow management. J. Circuits Syst.Comput. 8(1), 21–66 (1998)
References
Maggi, F.M., Montali, M., van der Aalst, W.M.P.: An operational decision support framework for monitoring business constraints.
In: FASE 2012. vol. 7212, pp. 146–162 (2012)
35
Integration of state-of-the art algorithms
Control Flow Tracker
(Process-based)
Compliance Rule Tracker
(Process-based)
Workflow net firingmechanism
van der Aalst, W.M.P.: The application of petri nets to workflow management. J. Circuits Syst.Comput. 8(1), 21–66 (1998)
References
Maggi, F.M., Montali, M., van der Aalst, W.M.P.: An operational decision support framework for monitoring business constraints.
In: FASE 2012. vol. 7212, pp. 146–162 (2012)
P
l
a
c
e
Transition Case
P
l
a
c
e
Marking
Input/Output
matrices
36
Integration of state-of-the art algorithms
Control Flow Tracker
(Process-based)
Compliance Rule Tracker
(Process-based)
Workflow net firingmechanism
van der Aalst, W.M.P.: The application of petri nets to workflow management. J. Circuits Syst.Comput. 8(1), 21–66 (1998)
References
Maggi, F.M., Montali, M., van der Aalst, W.M.P.: An operational decision support framework for monitoring business constraints.
In: FASE 2012. vol. 7212, pp. 146–162 (2012)
Reactivereasoner
Declarative
predicates
event.concept:name== "Retrieve goods"
event.product_units" < 1000
β
α
γ
P
l
a
c
e
Transition Case
P
l
a
c
e
Rule C1
Rule C2
Rule C3
Finite
state
machines
Marking
Input/Output
matrices
58
Bootstrapping
Trusted
subscription
Secure event
transmission
State update
21 3 4
<<executionenvironment>>
TrustedExecutionEnvironment
ProcessVault
n
Subscribed
ProMTEEprotocol
Event Dispatcher
ProcessState Manager
FIFO queue
6. Pushevent
7. Pop event
59
Bootstrapping
Trusted
subscription
Secure event
transmission
State update
21 3 4
ProMTEEprotocol
Control Flow Field Business Rule Field
Case P024#1
Status: Running
Secret Section
Enabled: FillIn Container
Case P024#1
Accessiblesection
Event e
ProcessStatePs
ExtractionmanifestEm
Status: -
Rule: Separationof duty (C3)
60
Bootstrapping
Trusted
subscription
Secure event
transmission
State update
21 3 4
ProMTEEprotocol
Secret Section
Accessiblesection
h
ProcessStatePs
e
=hash(
(=2f7e19af922e44056e0b33
4afc63ced4046c332bc02
94e3fe9aa3cd55305c3b7
Control Flow Field Business Rule Field
Case P024#1
Status: Running
Enabled: FillIn Container
Case P024#1
Status: -
Rule: Separationof duty (C3)
61
Bootstrapping
Trusted
subscription
Secure event
transmission
State update
21 3 4
ProMTEEprotocol
Secret Section
Accessiblesection
ProcessStatePs
Control Flow Field Business Rule Field
Case P024#1
Status: Running
Enabled: FillIn Container
Case P024#1
Status: -
Rule: Separationof duty (C3)
62
Bootstrapping
Trusted
subscription
Secure event
transmission
State update
21 3 4
ProMTEEprotocol
Secret Section
Accessiblesection
ProcessStatePs
Compliance Rule Tracker
Upds
Ps Ps’
update
Control Flow Field Business Rule Field
Case P024#1
Status: Running
Enabled: FillIn Container
Case P024#1
Status: TemporarilySatisfied
Rule: Separationof duty (C3)
63
Bootstrapping
Trusted
subscription
Secure event
transmission
State update
21 3 4
ProMTEEprotocol
Control Flow Field Business Rule Field
Secret Section
Accessiblesection
ProcessStatePs
evd=
Case P024#1
Status: Running
Enabled: FillIn Container
Case P024#1
Rule: Separationof duty (C3)
Status: TemporarilySatisfied
64
Bootstrapping
Trusted
subscription
Secure event
transmission
State update
21 3 4
ProMTEEprotocol
Control Flow Field Business Rule Field
Secret Section
Accessiblesection
ProcessStatePs
Case P024#1
Status: Running
Enabled: FillIn Container
Case P024#1
Rule: Separationof duty (C3)
Status: TemporarilySatisfied
<<executionenvironment>>
TrustedExecutionEnvironment
ProcessVault
<<executionenvironment>>
OS
ProcessVaultInspector
2024-11-04
T16:05:06
2f7e19af922e44
056e0b334afc6
3ced4046c332
bc0294e3fe9aa
3cd55305c3b7
upd now h
e
evd
65
Bootstrapping
Trusted
subscription
Secure event
transmission
State update
21 3 4
ProMTEEprotocol
Control Flow Field Business Rule Field
Secret Section
Accessiblesection
ProcessStatePs
Case P024#1
Status: Running
Enabled: Check Container
Case P024#1
Rule: Separationof duty (C3)
Status: TemporarilySatisfied
66
Bootstrapping
Trusted
subscription
Secure event
transmission
State update
21 3 4
ProMTEEprotocol
Control Flow Field Business Rule Field
Secret Section
Accessiblesection
ProcessStatePs
Fillin Container Check Container
<event>
<string key=‘case:concept:name’ value=‘PO24#1’/>
<string key=‘concept:name’ value=‘Fill in Container’/>
<string key=‘Logistics Operator’ value= ‘A12B8L123’/>
</event>
Case P024#1
Status: Running
Case P024#1
Rule: Separationof duty (C3)
Enabled: Check Container Status: TemporarilySatisfied
67
Bootstrapping
Trusted
subscription
Secure event
transmission
State update
21 3 4
ProMTEEprotocol
<<executionenvironment>>
OS
ProcessVaultInspector
Control Flow Field Business Rule Field
Case P024#1
Status: Running
Enabled: Check Container
Case P024#1
Status: TemporarilySatisfied
Rule: Separationof duty (C3)
Accessiblesection
Timestamp: 2024-11-04 T16:05:06
Event hash: 2f7e19af922e4193hd
Evidence: xvxnewosh2i793qdw
Timestamp: 2024-11-04 T16:05:06
Event hash:2f7e19af922e4193hd
Evidence: dwijwdwdpijdda12ds
<<device>>
Monitor Machine
<<device>>
Client Machine
ProcessState Agent
Data access
State inspection
68
Bootstrapping
Trusted
subscription
Secure event
transmission
State update
21 3 4
ProMTEEprotocol
<<executionenvironment>>
OS
ProcessVaultInspector
Control Flow Field Business Rule Field
Case P024#1
Status: Running
Enabled: Check Container
Case P024#1
Status: TemporarilySatisfied
Rule: Separationof duty (C3)
Accessiblesection
Timestamp: 2024-11-04 T16:05:06
Event hash: 2f7e19af922e4193hd
Evidence: xvxnewosh2i793qdw
Timestamp: 2024-11-04 T16:05:06
Event hash:2f7e19af922e4193hd
Evidence: dwijwdwdpijdda12ds
<<device>>
Monitor Machine
<<device>>
Client Machine
ProcessState Agent
Data access
State inspection
Evaluation
69
70
Evaluation
Security assesment
Threatanalysis
Performance analysis
Memory usage Responsiveness
(in the paper) (nextslides)
71
Implementationdetails
ProcessVaultimplementedasan
Intel SGX trustedapplication
CPU: Intel Xeon Gold 5415+
We bootstrap our Process Vault
prototype using a Python encoding
of the Process Vault Compiler
Repository DOI: 10.5281/zenodo.15545155
82
Future work
Extension to the cross-instancedimension
The samelogisticsoperator must
appearin atleast3 process
instanceswithinthe sameday
Cross-instancebusiness rule
83
Future work
Correctnesscheck with partiallyor
totallyundisclosedspecifications
84
Future work
Consistencyacrossmultiple ProcessVaults
ProcessVault
ProcessVault
ProcessVault
85
More in the paper
86
SecrecyPreservationfor Online Process
Monitoring with TrustedExecution
Environment
ProMTEErepository
Claudio Di Ciccio, Utrecht University, Netherlands
Davide Basile, Sapienza University of Rome, Italy [email protected] [email protected]