Vivodepot ist eine Single-File-HTML-Anwendung, die offline im Browser läuft. Geprüft wird sie automatisch bei jedem Code-Commit und manuell auf externen Plattformen. Wo eine externe Plattform eine Report-ID vergibt, ist sie hier verlinkt; sonst sind Werkzeug, Version und Datum angegeben. Geprüft wird gegen öffentliche Referenzen: Gazelle, Matchbox, HL7 FHIR Validator, NIST-CAVP- und Wycheproof-Testvektoren, RFC 5869, OSV.dev, W3C Nu Html Checker, Google Lighthouse, ITB SHACL und einen eigenen, unabhängigen Krypto-Harness.
Vivodepot is a single-file HTML application that runs offline in the browser. It is tested automatically at every code commit and manually on external platforms. Where an external platform issues a report ID, it is linked here; otherwise tool, version and date are given. Tests run against public references: Gazelle, Matchbox, the HL7 FHIR Validator, NIST CAVP and Wycheproof test vectors, RFC 5869, OSV.dev, the W3C Nu Html Checker, Google Lighthouse, ITB SHACL and an independent in-house crypto harness.
Berichte externer Plattformen bestätigen die geprüften Schritte. Eine Zertifizierung sind sie nicht.
Reports from external platforms confirm the steps that were checked; they are not a certification.
Kurz gesagt. Die Verschlüsselung wird bei jeder Änderung am Programm automatisch getestet, auch darauf, dass veränderte Daten abgewiesen werden (Kryptographie). Die heruntergeladene Datei funktioniert vom Öffnen bis zum Export ohne Internetverbindung; auch das wird automatisch geprüft (Offline). Die Patientenkurzakte, die Vivodepot ausgibt, hat die Prüfwerkzeuge der Gazelle-Plattform bestanden (Konformität). Die fremden Programmbibliotheken für PDF und QR-Code werden mit einer öffentlichen Datenbank bekannter Sicherheitslücken abgeglichen, und der letzte Abgleich fand keine (Sicherheit).
In brief. The encryption is tested automatically at every change to the program, including that tampered data are rejected (Cryptography). The downloaded file works without an internet connection from opening to export; this is also checked automatically (Offline). The patient summary that Vivodepot produces has passed the validation tools of the Gazelle platform (Conformance). The third-party libraries for PDF and QR codes are checked against a public database of known security flaws, and the latest check found none (Security).
Vier Prüf-Schichten. Automatische Tests laufen bei jedem Code-Commit ohne manuellen Eingriff und decken Logik, Kryptographie und Datenmodell ab. Vor jeder Veröffentlichung laufen zusätzlich Freigabe-Prüfungen: Konformität, Krypto-Testvektoren, Offline-Prüfung der heruntergeladenen Datei und ein Abgleich der eingebundenen Bibliotheken gegen bekannte Schwachstellen. Die Geräte-Abnahme prüft, was sich nur im Browser prüfen lässt: Änderungen an der Bedienoberfläche werden im Browser und auf dem Gerät an einer verschlüsselten Referenzdatei ausprobiert. Als Nachweis dient der gespeicherte Datensatz statt der Anzeige. Validierung auf externen Plattformen prüft, ob die Implementierung mit dem übereinstimmt, was externe Stellen als korrekt definieren; Testmaterial wird dafür von uns eingereicht. Regulatorische Einordnungen — DSGVO, Ausfuhrrecht, CRA, CE — sind als eigene Einschätzung gekennzeichnet und nicht behördlich bestätigt. Ein externes Sicherheits-Audit hat bisher nicht stattgefunden.Four validation layers. Automated tests run at every code commit without manual intervention, covering logic, cryptography and the data model. Before any release, additional gate checks run: conformance, cryptographic test vectors, an offline check of the downloaded file, and a comparison of bundled libraries against known vulnerabilities. Device acceptance covers what cannot be verified without a browser — changes to the user interface are exercised in the browser and on the device against an encrypted reference file, with evidence taken from the stored record rather than from the display. Validation on external platforms checks whether the implementation matches what external bodies define as correct; we submit the test material ourselves. Regulatory assessments — GDPR, export control, CRA, CE — are marked as our own; no authority has confirmed them. No external security audit has taken place to date.
FHIR-KonformitätFHIR Conformance
Gazelle EHDS Continuous Testing Platform · vier öffentliche Berichte vom 14. und 16. Oktober 2026four public reports of 14 and 16 October 2026
Validator-Läufe auf der Gazelle-Testplattform · Werkzeug Matchbox 4.1.20 · Beispieldaten einer erfundenen Person · Berichte ohne Anmeldung abrufbarValidator runs on the Gazelle test platform · tool Matchbox 4.1.20 · sample data of a fictitious person · reports available without log-in
PatientenkurzaktePatient summaryPatientenkurzakte (eigener Export) · Profil HL7 Europe Patient Summary 1.0.0-alpha · Testinstanz 450 · Status „Verified“, gesetzt am 16. Juli 2026 durch IHE EuropePatient summary (own export) · profile HL7 Europe Patient Summary 1.0.0-alpha · test instance 450 · status “Verified”, set on 16 July 2026 by IHE EuropeVERIFIZIERTVERIFIED
Abruf eines Dokuments (Yellow Button)Document retrieval (Yellow Button)Abruf eines Dokuments (Yellow Button) · Testinstanz 568 · Validierungsbericht von IHE Europe / IHE Catalyst vom 15. September 2026: alle vier Schritte bestanden (Anmeldung als natürliche Person, Dokumentauswahl, Abruf, Anzeige in lesbarer Form). Vivodepot ruft das Dokument ab.Document retrieval (Yellow Button) · test instance 568 · validation report by IHE Europe / IHE Catalyst of 15 September 2026: all four steps passed (log-in as a natural person, document selection, retrieval, display in human-readable form). Vivodepot retrieves the document.
Gazelle EHDS — Einmal-Freigabe (SMART Health Links)One-Time Share (SMART Health Links)
Gazelle · Einmal-Freigabe über SMART Health LinksGazelle · one-time share via SMART Health Links
SendenSendingEinmal-Freigabe über SMART Health Links, Senden · Testinstanz 727 · Validierungsbericht von IHE Europe / IHE Catalyst vom 2. Oktober 2026: alle fünf Schritte bestanden (Anmeldung als natürliche Person, Dokumentauswahl, Erzeugen des Links, Zugriff auf das Manifest, Zugriff auf das Dokument). Vivodepot erzeugt die Freigabe.One-time share via SMART Health Links, sending · test instance 727 · validation report by IHE Europe / IHE Catalyst of 2 October 2026: all five steps passed (log-in as a natural person, document selection, link generation, access to the manifest, access to the document). Vivodepot creates the share.
EmpfangenReceivingEinmal-Freigabe über SMART Health Links, Empfangen · Testinstanz 751 · Validierungsbericht von IHE Europe / IHE Catalyst vom 25. September 2026: alle fünf Schritte bestanden. Vivodepot empfängt die Freigabe.One-time share via SMART Health Links, receiving · test instance 751 · validation report by IHE Europe / IHE Catalyst of 25 September 2026: all five steps passed. Vivodepot receives the share.
ErgebnisResultBestanden · 0 Fehler · 24. September 2026Passed · 0 errors · 24 September 2026
HL7 FHIR Validator
HL7 International · validator_cli 6.9.12 · automatisch, wenn sich der FHIR-Export ändertHL7 International · validator_cli 6.9.12 · automatically whenever the FHIR export changes
BESTANDENPASSEDAutomatischAutomated
ErgebnisResultPatientenkurzakte (IPS 2.0.0, EU EPS) · bestanden · 0 Fehler · 24. September 2026Patient summary (IPS 2.0.0, EU EPS) · passed · 0 errors · 24 September 2026
BildungsnachweiseEducational credentials
ITB SHACL Validator
Europäische Kommission · Version 1.13.0 · EDC-Anwendungsprofil edc-generic-fullEuropean Commission · version 1.13.0 · EDC application profile edc-generic-full
BESTANDENPASSED
ErgebnisResultVon der EU gesiegelte Europass-Nachweise, verwahrt und unverändert wieder herausgegeben · bestandenEuropass credentials sealed by the EU, stored and handed out again unchanged · passed
WebCrypto API · SubtleCrypto · Die Verschlüsselung des Depots läuft vollständig über die Kryptographie des Browsers. Eine Ausnahme ist eingebettet: noble-ed25519, in der Fassung, die Cure53 2022 geprüft hat. Sie wird für selbst signierte Selbstauskünfte (SD-JWT VC) benötigt, um den öffentlichen Signaturschlüssel aus dem passwortabgeleiteten Schlüssel zu berechnen. Das kann der Browser nicht, ohne den geheimen Schlüssel auslesbar zu machen. Stückliste(öffnet in neuem Fenster)(opens in a new window)Encryption of the depot runs entirely on the browser’s cryptography. One exception is embedded: noble-ed25519, in the version Cure53 audited in 2022. It is needed for self-signed self-declarations (SD-JWT VC), to compute the public signing key from the password-derived key. The browser cannot do that without making the secret key extractable. Software bill of materials(öffnet in neuem Fenster)(opens in a new window)
BESTÄTIGTCONFIRMEDAutomatischAutomated
ErgebnisResultAES-256-GCM, 12-Byte-IV, 16-Byte-Tag · manipulierte Daten werden abgewiesen · automatisch bei jedem CommitAES-256-GCM, 12-byte IV, 16-byte tag · tampered data is rejected · automatically at every commit
PBKDF2-SHA-256 · SchlüsselableitungKey Derivation
OWASP Password Storage Cheat Sheet
AutomatischAutomated
ErgebnisResult600.000 Iterationen, Salt 16 Byte · OWASP-Empfehlung erfüllt · automatisch600,000 iterations, 16-byte salt · meets the OWASP recommendation · automated
ErgebnisResultgetrennte Schlüssel für Verschlüsselung und Signatur · RFC-5869- und Wycheproof-Vektoren grün · automatischseparate keys for encryption and signing · RFC 5869 and Wycheproof vectors green · automated
Authentifizierte Krypto-Versions-AchseAuthenticated Crypto Version Axis
kryptoVersion-Feld · AllowlistkryptoVersion field · allowlist · kein stilles Fallbackno silent fallback
WebCrypto CryptoKey · kein programmatischer Schlüssel-Exportno programmatic key export
BESTÄTIGTCONFIRMEDAutomatischAutomated
ErgebnisResultalle geheimen Schlüssel nicht exportierbar · 10 von 10 · 20. Juni 2026all secret keys non-exportable · 10 of 10 · 20 June 2026
VdCrypto-Block-IntegritätVdCrypto Block Integrity
Krypto-Kern byte-identisch über alle TrägerCrypto core byte-identical in every file that carries it
BESTÄTIGTCONFIRMEDAutomatischAutomated
ErgebnisResultKrypto-Kern in Anwendung und Lese-App byte-gleichcrypto core byte-identical in the app and the reader app · 4cd539cd…1d4fd98 · 17.10.202617 October 2026
SicherheitSecurity
OSV.dev Schwachstellen-ScanVulnerability Scan
Open Source Vulnerabilities · Google · gegen SBOM CycloneDX 1.4against SBOM CycloneDX 1.4
SAUBERCLEANAutomatischAutomated
ErgebnisResult0 bekannte Schwachstellen · jsPDF 4.2.1, qrcode-generator 1.4.4 · 2. Oktober 20260 known vulnerabilities · jsPDF 4.2.1, qrcode-generator 1.4.4 · 2 October 2026
Offline nutzbar als heruntergeladene DateiWorks offline as a downloaded file
Kein Netzzugriff der Anwendung beim Arbeiten mit dem Depot · Playwright-VerifikationNo network access by the app while working with the depot · Playwright verification
BESTÄTIGTCONFIRMEDAutomatischAutomated
ErgebnisResult0 externe Netzwerk-Requests zur Laufzeit · automatisch geprüft an der heruntergeladenen Datei (Laden bis PDF- und FHIR-Export)0 external network requests at runtime · automatically tested on the downloaded file (from loading to PDF and FHIR export)
Barrierefreiheit und HTML-QualitätAccessibility and HTML Quality
MIT 2 ERRORS2 ERRORS REMAININGExterne PlattformExternal platform
ErgebnisResultvnu 26.5.21 · 2 Fehler offen · 28. Mai 2026vnu 26.5.21 · 2 errors open · 28 May 2026
Google Lighthouse
Zweite, unabhängige Barrierefreiheits- und QualitätsmessungA second, independent measurement of accessibility and quality
A11Y 100 · BEST PRACTICES 96 · SEO 82A11Y 100 · BEST PRACTICES 96 · SEO 82Lokal geprüftChecked locally
ErgebnisResultLighthouse 13.4.1 · Barrierefreiheit 100, Best Practices 96, SEO 82 · 30. August 2026Lighthouse 13.4.1 · accessibility 100, best practices 96, SEO 82 · 30 August 2026
veraPDF · PDF/A-KonformitätPDF/A conformance
Langzeit-Archivierungs-Tauglichkeit der Export-PDFsLong-term archival suitability of exported PDFs
143 VON 146 REGELN143 OF 146 RULESLokaler LaufLocal run
ErgebnisResultveraPDF 1.30.0 · PDF/A-3b · 143 von 146 Regeln, noch nicht konform · 14. September 2026veraPDF 1.30.0 · PDF/A-3b · 143 of 146 rules, not yet conformant · 14 September 2026
Lizenz und LieferketteLicence and Supply Chain
SBOM CycloneDX 1.4
Software Bill of Materials · alle Dritt-Bibliotheken dokumentiertall third-party libraries documented
VOLLSTÄNDIGCOMPLETEAutomatischAutomated
ErgebnisResultCycloneDX 1.4 · Herkunft und Lizenz jedes Bestandteils verzeichnetCycloneDX 1.4 · origin and licence of every component listed
Kein Laufzeit-CDN-RisikoNo Runtime CDN Risk
Alle Bibliotheken inline · kein externer JavaScript-Abruf zur LaufzeitAll libraries inline · no external JavaScript fetched at runtime
BESTÄTIGTCONFIRMEDAutomatischAutomated
ErgebnisResultalle Bibliotheken eingebettet · kein Abruf zur Laufzeit · automatischall libraries embedded · no download at runtime · automated
Verordnung (EU) 2024/2847 · Meldepflichten (Art. 14) seit 11. September 2026 · volle Geltung ab 11. Dezember 2027Regulation (EU) 2024/2847 · Reporting obligations (Art. 14) since 11 September 2026 · fully applicable from 11 December 2027
EinordnungAssessmentProdukt mit digitalen Elementen · Meldepflichten nach Art. 14 CRA gelten seit 11.09.2026, übrige Herstellerpflichten ab 11.12.2027. Wir behandeln Vivodepot als „wichtiges Produkt mit digitalen Elementen“ der Klasse I (CRA, Anhang III Nr. 1). · SBOM und Meldeweg sind in unserer Sicherheitsrichtlinie(öffnet in neuem Fenster)(opens in a new window) beschriebenProduct with digital elements · reporting obligations under Art. 14 CRA apply since 11 Sep 2026, other manufacturer obligations from 11 Dec 2027. We treat Vivodepot as an “important product with digital elements” of class I (CRA, Annex III No. 1). · SBOM and reporting route are described in our security policy(öffnet in neuem Fenster)(opens in a new window)
DSGVOGDPR — Datenschutz-GrundverordnungGeneral Data Protection Regulation
Privacy by Design · Keine serverseitige Verarbeitung lesbarer Inhalte. Bei einer Einmal-Freigabe liegt die verschlüsselte Datei auf share.vivodepot.de; der Schlüssel steht im Link und erreicht den Server nicht.Readable content is not processed server-side. With a one-time share, the encrypted file is stored on share.vivodepot.de; the key is in the link and never reaches the server.
Eigene EinordnungOwn assessment
EinordnungAssessmentVivodepot GmbH verarbeitet keine Depot-Inhalte; Ausnahme ist die Einmal-Freigabe, dort liegt das Dokument nur verschlüsselt, ohne SchlüsselVivodepot GmbH does not process depot contents; the exception is the one-time share, where the document lies only in encrypted form, without the key
WEEE / Stiftung EAR
Elektro- und Elektronikgerätegesetz · Vertreiberin, keine eigene RegistrierungElectrical Equipment Act · distributor, no registration of its own
ÜBER LIEFERKETTEVIA SUPPLY CHAINEigene EinordnungOwn assessment
EinordnungAssessmentüber den Lieferanten · WEEE-Nr. DE 31310269via the supplier · WEEE no. DE 31310269
Geräte-AbnahmeDevice acceptance
Zusätzlich zur automatischen Prüfung werden Änderungen an der Bedienoberfläche im Browser und auf dem Gerät gegen eine verschlüsselte Referenzdatei geprüft. Der Nachweis wird aus dem gespeicherten Datensatz geführt, nicht aus der Anzeige.In addition to automated testing, changes to the user interface are checked in the browser and on the device against an encrypted reference file. The evidence is taken from the stored record, not from the display.
727727definierte Browser-Testsdefined browser testsautomatisierte Ende-zu-Ende-Tests (Playwright, Chromium) · Stand v1.0.931 · 17.10.2026automated end-to-end tests (Playwright, Chromium) · as of v1.0.931 · 17 October 2026
0Bekannte SchwachstellenKnown vulnerabilitiesgeprüft gegen OSV.devchecked against OSV.dev