Last Version

Virgil Double Ratchet Android SDK 0.1.4

Virgil Security is presenting an implementation of the [Double Ratchet](https://signal.org/docs/specifications/doubleratchet/) algorithm, which is used by parties to exchange encrypted messages based on a shared secret key. The implementation includes: - **Virgil Perfect Forward Secrecy (PFS) service** – a standalone web-service that is dedicated to managing one-time keys and long-time keys that are based on their Identity Public Keys (public keys that are contained in user cards published on Virgil Cards service); - **Ratchet SDK** – interacts with PFS service for publishing and managing one-time keys and long-time keys and interacts with Virgil Cards service for retrieving user's indentity cards which the OTK and LTK are based on. The parties derive new keys for every Double Ratchet message so that previous private keys cannot be calculated from new ones. The parties that participate in the communication also send Diffie-Hellman public values attached to their messages. The results of Diffie-Hellman calculations are mixed into the derived keys so that the new private keys cannot be calculated from the previous ones.

License

License

Virgil Security, Inc. license
Categories

Categories

Security
GroupId

GroupId

com.virgilsecurity
ArtifactId

ArtifactId

ratchet-android
Version

Version

0.1.4
Type

Type

aar
Description

Description

Virgil Double Ratchet Android SDK
Virgil Security is presenting an implementation of the [Double Ratchet](https://signal.org/docs/specifications/doubleratchet/) algorithm, which is used by parties to exchange encrypted messages based on a shared secret key. The implementation includes: - **Virgil Perfect Forward Secrecy (PFS) service** – a standalone web-service that is dedicated to managing one-time keys and long-time keys that are based on their Identity Public Keys (public keys that are contained in user cards published on Virgil Cards service); - **Ratchet SDK** – interacts with PFS service for publishing and managing one-time keys and long-time keys and interacts with Virgil Cards service for retrieving user's indentity cards which the OTK and LTK are based on. The parties derive new keys for every Double Ratchet message so that previous private keys cannot be calculated from new ones. The parties that participate in the communication also send Diffie-Hellman public values attached to their messages. The results of Diffie-Hellman calculations are mixed into the derived keys so that the new private keys cannot be calculated from the previous ones.
Project URL

Project URL

https://www.virgilsecurity.com/
Source Code Management

Source Code Management

https://github.com/VirgilSecurity/virgil-ratchet-kotlin

Download ratchet-android 0.1.4


<!-- https://jarcasting.com/artifacts/com.virgilsecurity/ratchet-android/ -->
<dependency>
    <groupId>com.virgilsecurity</groupId>
    <artifactId>ratchet-android</artifactId>
    <version>0.1.4</version>
    <type>aar</type>
</dependency>
// https://jarcasting.com/artifacts/com.virgilsecurity/ratchet-android/
implementation 'com.virgilsecurity:ratchet-android:0.1.4'
// https://jarcasting.com/artifacts/com.virgilsecurity/ratchet-android/
implementation ("com.virgilsecurity:ratchet-android:0.1.4")
'com.virgilsecurity:ratchet-android:aar:0.1.4'
<dependency org="com.virgilsecurity" name="ratchet-android" rev="0.1.4">
  <artifact name="ratchet-android" type="aar" />
</dependency>
@Grapes(
@Grab(group='com.virgilsecurity', module='ratchet-android', version='0.1.4')
)
libraryDependencies += "com.virgilsecurity" % "ratchet-android" % "0.1.4"
[com.virgilsecurity/ratchet-android "0.1.4"]

Dependencies

compile (4)

Group / Artifact Type Version
com.virgilsecurity : ratchet jar 0.1.4
com.virgilsecurity.sdk : sdk-android jar 7.3.1
com.virgilsecurity.sdk : crypto-android jar 7.3.1
com.virgilsecurity.crypto : ratchet-android jar 0.15.2

runtime (2)

Group / Artifact Type Version
org.jetbrains.kotlin : kotlin-android-extensions-runtime jar 1.3.61
org.jetbrains.kotlin : kotlin-stdlib-jdk8 jar 1.3.61

Project Modules

There are no modules declared in this project.