Project

General

Profile

Architecture » History » Version 21

Suravi Regmi, 11/21/2025 08:23 PM

1 1 Suravi Regmi
# Architecture
2 2 Suravi Regmi
3
This page provides a **high-level architectural view** of MGuard.  
4
It summarizes how the main modules interact, how data flows through the system, and how security and access control are enforced at a system level.  
5
Detailed module-level behavior, policy processing, manifest handling, and sequence diagrams are provided in the linked **Architecture Details** page.
6
7
---
8
9
## System Architecture Overview
10
11
MGuard follows the design described in the paper’s **Design Overview** (§3.1). :contentReference[oaicite:0]{index=0}  
12
A service instance consists of:
13
14
- a data source (MD2K repository or sensor-generated streams),
15
- a **Producer** that adapts and publishes mHealth data into NDN,
16 18 Suravi Regmi
- a **Controller** responsible for access policies and requester validation, also contains **Attribute Authority (AA)** issuing decryption keys,
17 2 Suravi Regmi
- an **NDN Repository** storing encrypted data, content keys, and manifests,
18
- one or more **Consumers** subscribing to data streams they are authorized to access.
19
20
Data requesters obtain trust anchors and certificates, subscribe to data streams, receive manifest notifications, and fetch/decrypt data objects.
21
22
---
23
24 3 Suravi Regmi
## High-Level Architecture Diagram
25 12 Suravi Regmi
![](high_lvl.png)
26 19 Suravi Regmi
27
---
28 20 Suravi Regmi
29 19 Suravi Regmi
## TODO (Architecture Details)
30
31
End-to-end workflows (overview)
32
33
Publication workflow
34
(Adaptor → Publisher → NAC-ABE encryption → Repo → PSync announcement)
35
36
Authorization workflow
37
(Consumer → Controller → DKEY issuance)
38
39
Retrieval workflow
40
(PSync update → manifest fetch → data/CK fetch → decrypt → callback)
41
42
Black box components
43
44
NAC-ABE → “encrypt(data, attributes) → encrypted data + CK”
45
46
PSync → “publish(manifestName) → notify subscribers”
47 20 Suravi Regmi
48
[[Architecture Details]]
49 21 Suravi Regmi
![](system_design.png)