Skip to content
/ memguard Public

Lightweight and extensible memory security and protection library for Java and Android applications.

License

Notifications You must be signed in to change notification settings

tolpp/memguard

Repository files navigation

memguard Build Status

Memguard is a lightweight and extensible memory security and protection library for Java and Android applications. Memguard protects your sensitive data in memory against memory editing software (Like trainers, GameGuardian in Android etc..).

Installation

For Gradle

Add dependencies to your projects build.gradle file

dependencies {
    compile 'com.tolpp.memguard:memguard:0.0.1'
    // compile 'com.tolpp.memguard:memguard-serializer-fst:0.0.1' // uncomment if you will use fst serializer
}
For Maven

Add dependencies to your projects pom.xml file.

<dependency>
    <groupId>com.tolpp.memguard</groupId>
    <artifactId>memguard</artifactId>
    <version>0.0.1</version>
</dependency>

Simple Usage

Guard<Integer> score = new Guard.Builder<Integer>().value(10).build();
score.set(20);
Integer unboxedInt = score.get();

Customizing Serializer

New serializer can be given during creating builder.

new Guard.Builder<String>()
    .serializer(FstSerializer.create())
    .build()

Customizing Encoder

Encoders can be given via encoder factories to the builder. If you give more than one encoder, Guard encodes serialized variable as same order as the your adding order of the encoder factories.

new Guard.Builder<String>()
    .addEncoderFactory(RandomXorEncoderFactory.create())
    .addEncoderFactory(YourEncoderFactory.create())
    .build()

By default, memguard uses Java's default serializer as serializer and RandomXorEncoder as variable encoder.

TODO's

  • Continuous integration
  • Wiki page
  • Add project to maven central
  • Add RSA Encryption encoder

License

Apache 2.0

About

Lightweight and extensible memory security and protection library for Java and Android applications.

Resources

License

Stars

Watchers

Forks

Packages

No packages published