Git Product home page Git Product logo

xvalleycorp / datasafe Goto Github PK

View Code? Open in Web Editor NEW

This project forked from adorsys/datasafe

0.0 0.0 0.0 44.39 MB

Datasafe - flexible and secure data storage and document sharing using cryptographic message syntax for data encryption

Home Page: https://adorsys.github.io/datasafe/

License: GNU Affero General Public License v3.0

Shell 1.63% JavaScript 0.20% Java 93.66% Groovy 0.36% TypeScript 2.72% XSLT 0.42% CSS 0.05% Hack 0.01% HTML 0.83% Dockerfile 0.14%

datasafe's Introduction

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:

datasafe's People

Contributors

valb3r avatar max402 avatar yatsenko-ihor avatar electronicpeter avatar francis-pouatcha avatar pn-iyatsenko avatar jkroepke avatar mani0201 avatar dependabot[bot] avatar mme-adorsys avatar prabaadorsys avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.