# Techniken
## Privacy Preserving Pattern Matching
- Theoretisch möglich damit Daten verschlüsselt zu vergleichen, allerdings nicht wirklich brauchbar aufgrund der Zeit welche von dem Verfahren benötigt wird. besonders bei den großen Mustern nach welchen wir zu suchen hätten.
## Homomorphe Verschlüsselung
### PHE
- Alles schwer ohne klare Vorstellung von dem was wir erreichen wollen einzuschätzen.
- Nach Kryptosystem von Pallier könnte man überprüfen ob ein Patient ein bestimmtes Symptom hat oder dies eintragen, (vgl. E-Voting, am einfachsten mit booleans)
- Updates können mithilfe öffentlichem Schlüssel verschlüsselt werden und zur Patientenakte hinzugefügt.
- Realistisch anwendbar, mann muss nur einen guten Anwendungsfalls finden.
- Mit Abkürzungen der Patientenakte theoretisch einfach zu arbeiten?
- Goldwasser-Micali-Kryptosystem/Benaloh-Kryptosystem auf Bitbasis (Pallier wahrscheinlich attraktiver.)
- Kann man nebenbei für Ints benutzen?
- PIR
### SHE
- Schwieriger zu implementieren als PHE, bietet zwar mehr Möglichkeiten als PHE, allerdings nicht notwendig für unser Vorhaben.
### FHE
- Ist noch in der Recherche Phase, die theoretische Möglichkeit dieses Konzeptes wurde beweisen, allerdings wurde eine realistische Umsetzung für den Gebrauch noch nicht gefunden.
## Techniken zum auslesen von Daten
### Private Information Retrieval - PIR
* **Vorteile**:
* Schutz der Privatsphäre des Klienten
* Kommunikationseffizient (o(n))
* **Nachteile**:
* Kein Schutz der Privatsphäre der Elemente der Datenbank
* **Relevanz**:
* Relevant, falls die Falldatenbank nicht geschützt werden soll
### Symmetric Private Information Retrieval - SPIR
* **Vorteile**:
* Schutz der Privatsphäre des Klienten und der Datenbank
* Kommunikationseffizient (o(n))
* **Nachteile**:
* höhere Berechnungskomplexität im Vergleich zu Oblivious-Transfer
* **Relevanz**:
* Relevant falls wir Kommunikationseffizienz über Berechnungskomplexität priorisieren
### Oblivious Transfer - OT
* **Vorteile**:
* Schutz der Privatsphäre des Klienten und der Datenbank
* meist geringere Berechnungskomplexität im Vergleich zu SPIR
* **Nachteile**:
* meist höhere Kommunikationskomplexität im Vergleich zu SPIR
* **Relevanz**:
* Relevant falls wir Berechnungskomplexität über Kommunikationseffizienz priorisieren
| 1-out-of-n-OT | k-out-of-n-OT| adaptiver k-out-of-n-OT |
| -------- | -------- | -------- |
| 1 Element aus n Elementen auslesen | k Elemente aus n Elementen auslesen | k Elemente aus n Elementen auslesen |
| | diese werden zu Beginn ausgewählt | pro Runde kann ein Element ausgewählt werden |