Skip to content

Releases: TankerHQ/sdk-android

v2.4.1

03 Jul 13:47
Compare
Choose a tag to compare
  • Internal improvements
  • Update dependencies

v2.4.0

05 Jun 09:27
Compare
Choose a tag to compare

Encryption sessions

The encryption sessions feature is now generally available. This allows you to encrypt multiple resources with a reduced number of keys. This guide will help you getting started.

Deprecations

  • EncryptOptions has been deprecated and renamed to EncryptionOptions
  • ShareOptions has been deprecated and renamed to SharingOptions

v2.3.2

26 Mar 13:37
Compare
Choose a tag to compare
  • Fix possible crash on session start

v2.3.1

17 Mar 09:33
Compare
Choose a tag to compare
  • Fix possible crash on exit
  • Internal improvements

v2.3.0

11 Mar 09:34
Compare
Choose a tag to compare
  • Add the prehashPassword function
  • Some APIs now return a CONFLICT error if there was a concurrent operation made by another device on the server.

v2.2.2

24 Jan 11:08
Compare
Choose a tag to compare
  • Internal performance improvements
  • Deprecate the https://maven.tanker.io URL for the maven repository. Use https://storage.googleapis.com/maven.tanker.io URL instead:
allprojects { 
  repositories { 
    // ... 
    maven { 
      url 'https://storage.googleapis.com/maven.tanker.io' 
    } 
  } 
} 

Note that previous releases are also accessible on the new URL.

  • Simplify revocation handling in Tanker apps. Before version 2.2.2, you had to set the connectDeviceRevokedHandler to handle the revocation in this callback. Starting with this release, this is no longer necessary. Instead, calling any encryption method on Tanker while the device is revoked will throw a new DEVICE_REVOKED exception, trigger the connectDeviceRevokedHandler callback, and close the session.

v2.2.0

29 Oct 17:42
Compare
Choose a tag to compare

Released a preview version of Identity Verification with OpenID Connect.

v2.1.0

22 Aug 15:20
Compare
Choose a tag to compare

Encryption channels

This release adds a better way to encrypt large files: encryption channels.
Their primary purpose is to greatly reduce memory footprint.

Two overloads were added: encrypt and decrypt.

Take a look at this section to learn more about channels.

v2.0.1

11 Jul 14:19
Compare
Choose a tag to compare

Fixed deadlock when the SDK receives blocks from newer SDK versions.

v2.0.0

27 Jun 16:18
Compare
Choose a tag to compare

v2.0

This is a major release with many backward incompatible changes. If you are using a SDK version in the 1.x series, make sure to read the migration guide before upgrading.

Table of contents:

Highlights

Pre-registration

The Tanker SDK now allows pre-registration sharing. This means you can share resources with users who do not have registered their identity with Tanker yet.

Multi-device support improvement

With a SDK version in the 1.x series, users could register an invalid email at account creation, thus making it impossible for them to recover access to their data in case of device loss.

This and similar problems have been fixed in this release:

  • It is no longer possible to register a device with Tanker without any verification method.
  • Once a verification method has been chosen it must be verified right away - this means you should adapt the UX flow of account creation in your application.

API revamp

In order to implement these changes, the Tanker API has changed significantly. See the migration guide for details.

New concepts

Identities

The SDK version 1.10.x required IDs and user tokens to identify users of your application.

In 2.0, a single concept named "identity" is used instead.

Those identities can be sorted on two axes:

Public/Secret

  • Public identity: used to share encrypted data (either directly or within a group).
  • Secret identity: used to match a user of the application with a user registered in the Trustchain. It
    should only be sent from the application server to the application after a successful authentication.

Permanent/Provisional

  • Permanent identity: represents a user who is registered in the Trustchain.
  • Provisional identity: represents a user who is not yet registered in the Trustchain.

Verification

The concept of "unlock" has been renamed to "verification". For instance, instead of "unlock devices", we use the term "verify identities".

Please check the guide for more information.

Removal of deprecated features

ChunkEncryptor class

The ChunkEncryptor class was deprecated in 1.10 and thus has been removed in the 2.0 release.

unlockRequired, waitingForValidation events

The unlockRequired and waitingForValidation events are gone. Instead of using a callback, use tanker.verifyIdentity() after checking the returned value of tanker.start().