MiHawk πŸ¦…πŸ‘οΈ is simple and secure πŸ”’ Android Library to store and retrieve pair of key-value data with encryption , internally it use jetpack DataStore Preferences πŸ’½ to store data.

Overview

MiHawk

MiHawk πŸ¦… πŸ‘οΈ is simple and secure πŸ”’ Android Library to store and retrieve pair of key-value data with encryption , internally it use jetpack DataStore Preferences πŸ’½ to store data.

Usage

Dependency

//In build.gradle
allprojects {
  repositories {
     maven { url 'https://jitpack.io' }
  }
}

//Include the library in your build.gradle.YOUR_MODULE
dependencies {
   implementation 'com.github.nedaluof:MiHawk:1.0.0'
}
 - init MiHawk:
   MiHawk.init(context) //must called before any use of MiHawk else RuntimeException will be thrown
 
 - put data to MiHawk:
   MiHawk.put(key: String, value: T)
 
- get data from MiHawk:
  MiHawk.get(key: String, result: (T?) -> Unit)
  OR with default value:
  MiHawk.get(key: String, defaultValue: T,  result: (T?) -> Unit)
 
- remove data from MiHawk:
  MiHawk.remove(key: String, result: (Boolean) -> Unit)
 
- to check if data exist in MiHawk by key:
  MiHawk.contains(key: String, result: (Boolean) -> Unit)

- to delete all data saved in MiHawk:
  MiHawk.deleteAll(result: (Boolean) -> Unit)

Coming channgeess / Todos


  • Replace GSON with Moshi.
  • Make the MiHawk customizable.
  • Replace Facebook Conceal with alternative encryption algorithm.
  • Provide heavy unit test.
  • Provide simple UI that simulate the inputs to test.

License

Copyright 2021 Nedal Hasan ABDALLAH (NedaluOf)

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an 
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
either express or implied. See the License for the specific 
language governing permissions and limitations under the License.

~ Inspired from Hawk Library. ~

You might also like...
Create one-time links for securely sending data

Dead Drop Service Send One-Time Secrets in a secure way A Dead Drop service written in Kotlin / KTor. This service uses sjcl on client-side to encrypt

A simple android app that parses its own signature and displays it

SigDisplayer Usage Download the release APK or clone the repository and compile yourself. Sign the APK with your preferred keystore. Install and open

AndroidHybridCrypto is simple customizable Android implementation of hybrid cryptography (AES+RSA+Hash) recommended by OWASP.

AndroidHybridCrypto HybridCrypto is simple customizable Android implementation of hybrid cryptography (AES+RSA+Hash) recommended by OWASP. Usage Step

A simple and opinionated AES encrypt / decrypt Ruby gem that just works.

AESCrypt - Simple AES encryption / decryption for Ruby AESCrypt is a simple to use, opinionated AES encryption / decryption Ruby gem that just works.

simple implementation KTLint with lib JLLeitschuh/ktlint-gradle

Simple DETEKT implementation others KTLint KTLint-gradle DeteKT Spotless gradle-code-quality-tools-plugin Tutorials medium Config detekt config.yml Gr

PermissionX is an extension Android library that makes Android runtime permission request extremely easy
PermissionX is an extension Android library that makes Android runtime permission request extremely easy

PermissionX is an extension Android library that makes Android runtime permission request extremely easy. You can use it for basic pe

Signal Protocol library for Java/Android

Overview A ratcheting forward secrecy protocol that works in synchronous and asynchronous messaging environments. PreKeys This protocol uses a concept

πŸ”“ Kotlin version of the popular google/easypermissions wrapper library to simplify basic system permissions logic on Android M or higher.
πŸ”“ Kotlin version of the popular google/easypermissions wrapper library to simplify basic system permissions logic on Android M or higher.

πŸ”“ Kotlin version of the popular google/easypermissions wrapper library to simplify basic system permissions logic on Android M or higher.

Dex manipulation library

dexterity Description dexterity is a C library intended for manipulation and analysis of DEX files. It has python bindings for all basic DEX structure

Releases(1.2.2)
Owner
Nedal Hasan Ibrahem
Learning new things everyday in the right way is challenge ... i can do it , watch me ✌
Nedal Hasan Ibrahem
A Paper fork with secure feature seed based on Secure Seed mod by Earthcomputer

GitHub | Download | Discord Matter Matter is a Paper fork that currently only adds what we call a secure feature seed. Based on Secure Seed mod by Ear

Plasmo 51 Dec 26, 2022
Simple API to perform AES encryption on Android. This is the Android counterpart to the AESCrypt library Ruby and Obj-C (with the same weak security defaults :( ) created by Gurpartap Singh. https://github.com/Gurpartap/aescrypt

AESCrypt-Android Simple API to perform AES encryption on Android with no dependancies. This is the Android counterpart to the AESCrypt library Ruby an

Scott Alexander-Bown 636 Dec 18, 2022
A simple text encryption/decryption password based GUI+CLI tool

ZeText: Zero disk exposition texts This is a simple text encryption/decryption password based GUI+CLI tool, allowing to enter, edit and decrypt files

sergeych 0 Dec 21, 2021
Grab’n Run, a simple and effective Java Library for Android projects to secure dynamic code loading.

Grab’n Run, a simple and effective Java Library for Android projects to secure dynamic code loading.

Luca Falsina 418 Dec 29, 2022
Secure your REST APIs with Spring Security, Resource and Authorization Server from zero to JWT

Secure REST APIs with Spring ./mvnw RTFM YouTube: Spring Security Patterns YouTube: Spring Security 5.5 From Taxi to Takeoff Official Apache Maven doc

Maksim Kostromin 1 Dec 5, 2021
Secure Secret Keys With Kotlin

Secure-Secret-Keys How to Secure Secrets ?? in Android CMake β€” Native Libraries

Muhammad Shams 4 Jan 21, 2022
ZRoot is a library that makes it easy to use root on Android, such as calling system service with root privilege.

ZRoot is a library that makes it easy to use root on Android, such as calling system service with root privilege. Usage See sample or user guide

null 2 Nov 26, 2021
a version of the official Android openssl setup to build standalone for use in app

OpenSSL on the Android platform. --- The code in this directory is based on $OPENSSL_VERSION in the file openssl.version. See patches/README for more

Guardian Project 371 Dec 8, 2022
Xposed OneLineClock - Always use one line clock on Android 12 lock screen

Xposed OneLineClock - Always use one line clock on Android 12 lock screen

null 3 Feb 3, 2022
A simple library that can help you detect if you app is modded or tampered with

Android Tamper Detector A simple library that can help you detect if you app is modded or tampered with. This adds a security level that makes it diff

Mukesh Solanki 130 Nov 14, 2022