Skip to content

adorsys/datasafe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

62f006a · Jan 30, 2024
Jan 30, 2024
Nov 5, 2019
Jan 30, 2024
Jan 30, 2024
Jan 30, 2024
Jan 30, 2024
Jan 30, 2024
Jan 30, 2024
Jan 30, 2024
Jan 30, 2024
Jan 30, 2024
Jan 30, 2024
Jan 30, 2024
Jan 30, 2024
Jan 30, 2024
Jan 30, 2024
Jan 30, 2024
Jan 30, 2024
Dec 13, 2023
Oct 2, 2023
Jan 30, 2024
Jan 30, 2024
Jul 9, 2019
Apr 4, 2019
Apr 5, 2019
Aug 2, 2021
Jan 25, 2022
Dec 13, 2023
Nov 8, 2019
Oct 24, 2019
May 8, 2019
Sep 11, 2019
Sep 11, 2019
Jan 30, 2024

Repository files navigation

Build Status codecov Maintainability

Secure, Encrypted and Versioned Data Storage Library

Overview

Datasafe is a robust library tailored for developers and enterprises, offering encrypted and versioned data storage. It enhances the security of data-sensitive applications, making it ideal for mission-critical usage.

Key Features

  • Enhanced Security: Each user gets unique key encryption keys, reducing the risk of widespread data breaches.
  • Full Confidentiality: Offers full or partial file path encryption.
  • Ransomware Protection: Versioned storage safeguards against ransomware attacks.
  • Secure File Exchange: Features asynchronous inboxes for safe user-to-user file transfers.
  • Zero Trust Environments: Ideal as a data encryption layer in critical data processing backends.

Technical Specifications

Datasafe uses AES-GCM (and Chacha-Poly for large files) for encryption, with CMS-envelopes (RFC 5652) for encrypted content wrapping. The library's flexible design allows seamless integration and customization. For more details, refer to our Security Whitepaper.

Highlights

  • Configurability: Dagger2 for dependency injection and modular design.
  • Storage Compatibility: Tested with Amazon S3, Minio, CEPH, and local filesystems.
  • User Privacy: Encrypts both the document and its path in each user's private space.
  • Versioning Support: Provides application layer versioning for systems lacking native versioning support.

Getting Started

Building the Project

Without tests:

mvn clean install -DskipTests=true

Full Build:

mvn clean install

Adding Datasafe to Your Project

Include Datasafe in your Maven project:

<!-- Datasafe Business Module -->
<dependency>
    <groupId>de.adorsys</groupId>
    <artifactId>datasafe-business</artifactId>
    <version>{datasafe.version}</version>
</dependency>

<!-- S3 Storage Provider -->
<dependency>
    <groupId>de.adorsys</groupId>
    <artifactId>datasafe-storage-impl-s3</artifactId>
    <version>{datasafe.version}</version>
</dependency>

<!-- Filesystem Storage Provider for Tests-->
<dependency>
    <groupId>de.adorsys</groupId>
    <artifactId>datasafe-storage-impl-fs</artifactId>
    <version>{datasafe.version}</version>
    <scope>test</scope>
</dependency>

In-depth Insights

Additional Resources

Contributing to Datasafe

Dual-Licensing

Datasafe is available under two licenses: