Project

General

Profile

Wiki » History » Version 24

Lan Wang, 11/23/2025 11:58 PM

1 1 Suravi Regmi
# MGuard: A Secure mHealth Infrastructure for Real-Time Data transfer with Fine-grained Access Control over NDN
2
3
4 15 Lan Wang
**MGuard** is an NDN-based system designed to support high-frequency mHealth data sharing with **fine-grained contextual access control** and **real-time data distribution**.  It is built on name-based access control (NAC/NAC-ABE) and PSync to enable timely access to sensitive mobile health data.
5 1 Suravi Regmi
6
---
7
8
## Purpose
9
MGuard addresses two core challenges in mHealth data sharing:
10
11
1. **Access to privacy-sensitive data is limited to authorized users based on well defined polcies**  
12
13
2. **Supporting real-time sharing of high-frequency sensor data**  
14
15
---
16
17
## Core Components
18
19
### **Producer**
20
Receives data from the MD2K ecosystem or directly from device sensors.  
21
The producer:
22
- converts raw or derived data streams into NDN-named data objects,
23
- associates each object with appropriate attributes, and  
24
- stores encrypted data into the NDN repository.
25
26 21 Lan Wang
It is also responsible for notifying subscribers when new data is available (via published manifest names).
27 19 Lan Wang
28 1 Suravi Regmi
### **Controller**
29 22 Lan Wang
30 24 Lan Wang
PolicyManager 
31 22 Lan Wang
32 1 Suravi Regmi
- defines **who** can access **which** data streams,  
33
- parses and manages access control policies, and  
34
- collaborates with the Attribute Authority to issue decryption keys (DKEYs) to validated data requesters.
35
36 23 Lan Wang
Attribute Authority (AA)  
37
38 1 Suravi Regmi
- validates requester identities (using the system’s trust anchor),
39
- issues policy-compliant decryption keys based on KP-ABE, and  
40 23 Lan Wang
- publishes public parameters required for encryption.
41 1 Suravi Regmi
42
### **Consumer**
43
Subscribes to mHealth data streams according to the access rights defined for the requester.  
44
The consumer:
45
- receives notifications for new manifests,  
46
- fetches the corresponding encrypted data objects from the repository, and  
47
- decrypts data based on issued keys and permitted attributes.  
48
49
### **Repository**
50
Persistent storage for all published mHealth data objects, content keys, and manifests.  
51
The repository allows consumers to:
52
- retrieve data independently of the producer,  
53
- fetch CKs needed for decryption, and  
54
- access previously published (historical) data.  
55
56
---
57
58
## Navigation
59 8 Suravi Regmi
60 1 Suravi Regmi
- **[[Architecture]]**
61 8 Suravi Regmi
  - **[[Architecture_Details|Architecture Details]]**
62
- **[[Design_Elements|Design Elements]]**
63
  - **[[Naming_Scheme|Naming Scheme]]**
64
  - **[[Trust_Model|Trust Model]]**
65
  - **[[Access_Control|Access Control]]**
66
  - **[[NAC-ABE_Design|NAC-ABE Design]]**
67
  - **[[Manifest_Design|Manifest Design]]**
68
  - **[[PSync_Design|PSync Design]]**
69 12 Suravi Regmi
  - **[[Pub-Sub API|Pub-Sub API Design]]**
70 13 Suravi Regmi
  - **[[Repo|Repo Design]]**
71 8 Suravi Regmi
- **[[Developer_Guide|Developer Guide]]**
72 11 Suravi Regmi
- [Open editable Figma diagram](https://www.figma.com/design/I2SLqGN17XJHh8KsyAJ88l/Untitled?node-id=0-1&t=xWqhvwrDlUOlkeVU-1)