Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
R
risc-v-wifi
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Wiki
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Test cases
Artifacts
Deploy
Releases
Package registry
Container registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
SWPws2020
risc-v-wifi
Commits
4b1423f2
Commit
4b1423f2
authored
4 years ago
by
niklap97
Browse files
Options
Downloads
Patches
Plain Diff
Update slides.md
parent
93f0c61d
No related branches found
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
presentation_02_03_2021/slides.md
+75
-0
75 additions, 0 deletions
presentation_02_03_2021/slides.md
with
75 additions
and
0 deletions
presentation_02_03_2021/slides.md
+
75
−
0
View file @
4b1423f2
...
@@ -170,3 +170,78 @@ Python-Skript stellt die Payload für den Angriff aus allen relevanten Informati
...
@@ -170,3 +170,78 @@ Python-Skript stellt die Payload für den Angriff aus allen relevanten Informati
-
Unterschied: Zwei Zonen, Server Zone 1, Abfrage Zone 2
-
Unterschied: Zwei Zonen, Server Zone 1, Abfrage Zone 2
-
Server schickt name via MultiZone Message (je 16 Byte)
-
Server schickt name via MultiZone Message (je 16 Byte)
-
Separate Speicherbereiche sorgen für Load Access Fault beim auslesen
-
Separate Speicherbereiche sorgen für Load Access Fault beim auslesen
# Multizone Security
-
bietet eine durch Hardware erzwungene, softwaredefinierte Trennung für mehrere gleich sichere Domänen,
-
volle Kontrolle über Daten, Programme und Peripheriegeräte
-
keine zusätzlichen IP-Blöcke
-
keine Änderungen an der bestehenden Firmware erforderlich Open-Source-Bibliotheken, Binärdateien von Drittanbietern
-
ist Open Source und für die kommerzielle Nutzung lizenzfrei lizenziert
# Hardwareanforderungen
-
zertifiziert für jeden RISC-V-Kern , mit:
-
RV32I, RV32E, RV64I Architektur
-
'U'-Erweiterung (Benutzermodus)
-
Mindestens 4 PMP-Register
-
4KB FLASH und 1KB RAM
# Features
-
getrennte vertrauenswürdige Ausführungsumgebungen (Zonen)
-
hardware-erzwungene und Software-definiert
-
Mehrere memory-mapped Ressourcen pro Zone - z. B. Flash, Ram, E/A, UART, Irqs, etc.
-
Beliebige Kombination von Lese-, Schreib- und Ausführungsrichtlinien
-
Ressourcenüberlappung erlaubt, aber nicht empfohlen
-
Präemptiver Scheduler: round robin, konfigurierbarer tick, cpu overhead < 0,01%
-
Interzonen-Kommunikation basierend auf Messaging - kein Shared Memory
-
vollständig konfigurierbare Zonen-/Interrupt-Zuordnung
# multizone.cfg
\c
olor{black}
```
text
# MultiZone reserved memory: 6K @0x20010000, 6K @0x80000000
Tick = 10 # ms
Zone = 1
#irq = 3 # DMA
plic = 3 # UART
base = 0x20012000; size = 32K; rwx = rx # FLASH
base = 0x80001800; size = 4K; rwx = rw # RAM
base = 0x10013000; size = 0x100; rwx = rw # UART
Zone = 2
#irq = 20, 21, 22 # BTN0 BTN1 BTN2 (CLINT)
base = 0x2001A000; size = 8K; rwx = rx # FLASH
base = 0x80002800; size = 2K; rwx = rw # RAM
base = 0x10025000; size = 0x100; rwx = rw # PWM LED
base = 0x10012000; size = 0x100; rwx = rw # GPIO
```
# openmz
-
läuft Multizone auch auf dem Hifive1 rev b?
-
besitzt eigentlich die nötigen Hardwarevoraussetzungen
-
Fund: Masterarbeit: "OpenMZ: a C implementation of the MultiZone API"
-
vollständige Open-Source-Implementierung der MultiZone-API
-
schlanker als Multizone Security (Codebasis von etwa 800 Zeilen)
# Multizone auf dem Hifive
-
vor ein paar Wochen: Multizone SDK erhält Hifive1 rev b BSP
-
Multizone läuft ohne Einschränkungen auf dem Hifive
-
Multizone verspricht:
-
schnelle, einfache Integration zu anderer Software
-
Unsere Erfahrung:
-
integrieren von Software komplex
-
viele Anpassungen nötig
-
Fachwissen erforderlich
# Einschätzung der Projektarbeit
Negativ:
-
remote Arbeit erschwerte grundsätzlich die Kommunikation und Lösungsfindung
-
Dokumentation könnte ausführlicher sein
Positiv:
-
regelmäßige Treffen
-
schneller Austausch
-
gegenseitige Unterstützung und Hilfsbereitschaft
-
Teamgeist
-> es hat Spaß gemacht!
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment