Project

General

Profile

Architecture » History » Version 22

Suravi Regmi, 11/21/2025 08:32 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 22 Suravi Regmi
![](system_design.png)
27 19 Suravi Regmi
28
---
29 20 Suravi Regmi
30 19 Suravi Regmi
## TODO (Architecture Details)
31
32
End-to-end workflows (overview)
33
34
Publication workflow
35
(Adaptor → Publisher → NAC-ABE encryption → Repo → PSync announcement)
36
37
Authorization workflow
38
(Consumer → Controller → DKEY issuance)
39
40
Retrieval workflow
41
(PSync update → manifest fetch → data/CK fetch → decrypt → callback)
42
43
Black box components
44
45
NAC-ABE → “encrypt(data, attributes) → encrypted data + CK”
46
47
PSync → “publish(manifestName) → notify subscribers”
48 20 Suravi Regmi
49 21 Suravi Regmi
[[Architecture Details]]