d4l-data4life / hc-crypto-sdk-kmp

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

About The Project

The Data4Life Crypto SDK is an implementation of the D4L crypto protocol in version 1.

It supports encryption and decryption of data that should be stored in the Personal Health Data Platform (PHDP).

Features

  • Crypto protocol 1

Getting Started

Instructions how to get software up and running.

Prerequisites

Installation

A step by step series of examples that tell you how to get it running.

Consume GitHub Packages

We use GitHub Packages to distribute the SDK. In order to consume our dependencies you need to generate a GitHub Personal Access Token. Please follow the how to authenticate to GitHub Packages.

NOTICE

You need to have read access to this repository and generate a personal access token with repo and read:packages scope.

Token

The token needs to be made available.

  1. Add gpr.user = {GitHub username} and gpr.key = {GitHub Personal Access Token} to your global Gradle properties ~/.gradle/gradle.properties

    gpr.user=github-username
    gpr.key=github-token
  2. Or add following environment variables PACKAGE_REGISTRY_USERNAME={GitHub username} and PACKAGE_REGISTRY_TOKEN={GitHub Personal Access Token}

Setup Maven Repository

Add the following maven repository configuration to your root build.gradle:

    allprojects {
        repositories {
            ...
            maven {
                url = URI("https://maven.pkg.github.com/d4l-data4life/hc-crypto-sdk-kmp")
                credentials {
                    username = project.findProperty("gpr.user") as String? ?: System.getenv("PACKAGE_REGISTRY_USERNAME")
                    password = project.findProperty("gpr.key") as String? ?: System.getenv("PACKAGE_REGISTRY_TOKEN")
                }
            }
        }
    }

Java

Add following dependencies to your app build.gradle.

dependencies {
    implementation "care.data4life.hc-crypto-sdk-kmp:crypto-jvm:$version"
}

Android

dependencies {
    implementation "care.data4life.hc-crypto-sdk-kmp:crypto-android:$version"
}

Usage

TODO

Roadmap

This project is work in progress. We are working on adding more functionality, guidelines, documentation and other improvements.

Next planed features:

  • move more crypto code from HC-SDK-KMP

Also see the open issues for a list of proposed features and known issues.

Changelog

See changelog

Versioning

We use Semantic Versioning as a guideline for our versioning.

Releases use this format: {major}.{minor}.{patch}

  • Breaking changes bump {major} and reset {minor} & {patch}

  • Backward compatible changes bump {minor} and reset {patch}

  • Bug fixes bump {patch}

Contributing

You want to help or share a proposal? You have a specific problem? Read the following:

  • Code of conduct for details on our code of conduct.

  • Contributing for details about how to report bugs and propose features.

  • Developing for details about our development process and how to build and test the project.

Copyright (c) 2022 D4L data4life gGmbH / All rights reserved.

Please refer to our License for further details.

About

License:Other


Languages

Language:Kotlin 100.0%