Configurer Tink Java

Après avoir installé et configuré Tink, passez à la section Étapes suivantes.

Tink Java

La bibliothèque Java principale est tink-java, dont la dernière version est la 1.23.0. Tink Java est compatible avec Java 11 ou version ultérieure.

Maven

Vous pouvez inclure Tink Java à l'aide de Maven :

<dependency>
  <groupId>com.google.crypto.tink</groupId>
  <artifactId>tink</artifactId>
  <version>1.23.0</version>
</dependency>

Bazel

Les utilisateurs de Bazel peuvent ajouter Tink Java comme dépendance en ajoutant les lignes suivantes à leur fichier MODULE.bazel :

  bazel_dep(name = "tink_java", version = "1.23.0")

  git_override(
      module_name = "tink_java",
      remote = "https://github.com/tink-crypto/tink-java",
      tag = "v1.23.0",
  )

Tink Android

La bibliothèque Android principale est tink-java, dont la dernière version est la 1.23.0.

Tink Android est entièrement compatible à partir du niveau d'API 24. La plupart des composants de Tink devraient fonctionner à partir du niveau d'API 23. Les composants pour lesquels Tink ne fonctionne pas immédiatement avec le niveau d'API 23 sont les suivants :

  • La bibliothèque JWT nécessite le niveau d'API 24, car elle utilise des classes telles que java.util.Optional. Cette limitation peut être évitée grâce au désucrage.

  • Certaines API de com.google.crypto.tink.streamingaead utilisent SeekableByteBufferChannel, qui n'est disponible qu'à partir du niveau d'API 24.

Pour des raisons techniques, nous ne testons Tink sur Android que sur l'infrastructure interne de Google. Nous ne prévoyons aucun problème, mais si vous en rencontrez, veuillez en signaler un.

Tink Android ne nécessite aucune configuration ProGuard.

Gradle

Vous pouvez utiliser tink-android à partir de Gradle :

dependencies {
  implementation 'com.google.crypto.tink:tink-android:1.23.0'
}

Extension KMS AWS

L'extension KMS AWS de Tink Java est tink-java-awskms, dont la dernière version est la 2.1.0.

Maven

Vous pouvez inclure l'extension KMS AWS de Tink Java à l'aide de Maven :

<dependencies>
  <dependency>
    <groupId>com.google.crypto.tink</groupId>
    <artifactId>tink-awskms</artifactId>
    <version>2.1.0</version>
  </dependency>
</dependencies>

Bazel

Artefact de version Maven

Vous pouvez installer l'artefact Maven com.google.crypto.tink:tink-awskms avec com.google.crypto.tink:tink à l'aide de l'outil rules_jvm_external.

# ...

maven_install(
    artifacts = [
        "com.google.crypto.tink:tink:1.23.0",
        "com.google.crypto.tink:tink-awskms:2.1.0",
        # ... other dependencies ...
    ],
    repositories = [
        "https://maven.google.com",
        "https://repo1.maven.org/maven2",
    ],
)

Extension Google Cloud KMS

L'extension Google Cloud KMS de Tink Java est tink-java-gcpkms, dont la dernière version est la 1.12.0.

Maven

Vous pouvez inclure l'extension Google Cloud KMS de Tink Java à l'aide de Maven :

<dependencies>
  <dependency>
    <groupId>com.google.crypto.tink</groupId>
    <artifactId>tink-gcpkms</artifactId>
    <version>1.12.0/version>
  </dependency>
</dependencies>

Bazel

Artefact de version Maven

Vous pouvez installer l'artefact Maven com.google.crypto.tink:tink-gcpkmsavec com.google.crypto.tink:tink à l'aide de l'outil rules_jvm_external.

# ...

maven_install(
    artifacts = [
        "com.google.crypto.tink:tink:1.23.0",
        "com.google.crypto.tink:tink-gcpkms:1.12.0",
        # ... other dependencies ...
    ],
    repositories = [
        "https://maven.google.com",
        "https://repo1.maven.org/maven2",
    ],
)

Créer à partir de la source

Ajoutez les lignes suivantes à votre fichier MODULE.bazel.

bazel_dep(name = "tink_java_gcpkms")

git_override(
    module_name = "tink_java_gcpkms",
    remote = "https://github.com/tink-crypto/tink-java-gcpkms",
    tag = "v1.12.0",
)

Applications Tink Java

La bibliothèque Tink Java Apps fournit des implémentations pour le jeton de mode de paiement Google, la validation côté serveur des annonces avec récompense Google AdMob et le RFC 8291 – Message Encryption for Web Push, dont la dernière version est la 1.15.0.

Maven

Vous pouvez inclure la bibliothèque Tink Java Apps à l'aide de Maven :

<dependency>
  <groupId>com.google.crypto.tink</groupId>
  <artifactId>apps-webpush</artifactId>
  <version>1.15.0</version>
</dependency>

<dependency>
  <groupId>com.google.crypto.tink</groupId>
  <artifactId>apps-paymentmethodtoken</artifactId>
  <version>1.15.0</version>
</dependency>

<dependency>
  <groupId>com.google.crypto.tink</groupId>
  <artifactId>apps-rewardedads</artifactId>
  <version>1.15.0</version>
</dependency>

Bazel

Vous pouvez installer n'importe quel artefact Maven com.google.crypto.tink:apps-* à l'aide de l'outil rules_jvm_external.

# ...

maven_install(
    artifacts = [
        "com.google.crypto.tink:apps-webpush:1.15.0",
        "com.google.crypto.tink:apps-paymentmethodtoken:1.15.0",
        "com.google.crypto.tink:apps-rewardedads:1.15.0",
        # ... other dependencies ...
    ],
    repositories = [
        "https://maven.google.com",
        "https://repo1.maven.org/maven2",
    ],
)

Étapes suivantes

Une fois que vous avez terminé de configurer Tink, suivez les étapes d'utilisation standard de Tink :

  • Choisir une primitive : décidez quelle primitive utiliser en fonction de votre cas d'utilisation.
  • Gérer les clés : protégez vos clés avec votre KMS externe, générez des ensembles de clés et faites-les pivoter.