dabih -- encrypted data storage and sharing platform
Michael Huttner, Jakob Simeth, Renato Liguori, Fulvia Ferrazzi, Rainer Spang
TL;DR
The paper presents dabih, a browser-based platform for secure storage and sharing of sensitive biomedical data, addressing usability barriers to strong cryptography by performing encryption within the Web Crypto API and avoiding client-side software installs. It implements a hybrid envelope encryption scheme (AES-256-CBC data encryption with RSA-4096 OAEP key encapsulation), with private keys kept on the user’s device and OAuth2/OpenID for authentication, enabling fine-grained access control and secure data exchange. Key contributions include open-source server and client components (web app, CLI in Rust, and a bulk uploader), containerized deployments, root keys for emergency recovery, and offline recovery data, plus token-based data ingestion. The solution lowers barriers to adopting strong cryptography in clinical research by providing secure, auditable, and user-friendly data management that can interoperate via APIs while avoiding bespoke client software deployment.
Abstract
Background: The secure management of sensitive clinical data, particularly human genomics data, has become a critical requirement in modern biomedical research. Although the necessary software and algorithms are readily available, their use by non-IT experts poses significant challenges. Methods: We developed dabih, an open-source web application specifically designed to facilitate user-friendly encrypted data management. dabih enables web-based uploading, storing, sharing, and downloading of sensitive data in any format. Its approach to data security involves a two-stage envelope encryption process. We combine symmetric-key encryption for data and public-key encryption as key encapsulation mechanism. The private key necessary for decrypting the data remains exclusively on the owner's device. Thus, accessing data is impossible without explicit permission from the keyholder. Results: dabih is available open-source on GitHub https://github.com/spang-lab/dabih, as ready to use containers on docker hub and includes a command line interface and a graphical bulk upload tool as pre-built binaries. Documentation is available as part of the web application. Conclusions: dabih enables everyone to use strong cryptography for their data, while being just as simple to use as other, non-encrypted, data storage solutions. All the cryptography occurs seamlessly in the background as users interact with a secure web portal, simply by dragging and dropping files.
