Después de instalar y configurar Tink, continúa con los próximos pasos.
Tink Java
La biblioteca principal de Java es tink-java, con la versión 1.21.0 como la más reciente. Tink Java admite Java 11 o versiones posteriores.
Maven
Puedes incluir Tink Java con Maven:
<dependency>
<groupId>com.google.crypto.tink</groupId>
<artifactId>tink</artifactId>
<version>1.21.0</version>
</dependency>
Bazel
Los usuarios de Bazel pueden agregar Tink Java como dependencia si
agregan lo siguiente en su archivo MODULE.bazel:
bazel_dep(name = "tink_java", version = "1.21.0")
git_override(
module_name = "tink_java",
remote = "https://github.com/tink-crypto/tink-java",
tag = "v1.21.0",
)
Tink Android
La biblioteca principal de Android es tink-java, con la versión 1.21.0 como la más reciente.
Tink Android es totalmente compatible a partir del nivel de API 24. Se espera que la mayoría de las partes de Tink funcionen a partir del nivel de API 23. Las partes en las que Tink no se ejecuta de inmediato con el nivel de API 23 son las siguientes:
La biblioteca JWT requiere el nivel de API 24, ya que usa clases como
java.util.Optional. Esta limitación se puede evitar con la eliminación de azúcar sintáctico.Algunas APIs en
com.google.crypto.tink.streamingaeadusanSeekableByteBufferChannel, que solo está disponible a partir del nivel de API 24.
Por motivos técnicos, solo probamos Tink en Android en la infraestructura interna de Google. No esperamos ningún problema debido a esto, pero, si tienes alguno, presenta un problema.
Tink Android no requiere configuración de ProGuard.
Gradle
Puedes usar tink-android desde Gradle:
dependencies {
implementation 'com.google.crypto.tink:tink-android:1.21.0'
}
Extensión de AWS KMS
La extensión de AWS KMS de Tink Java es tink-java-awskms, con la versión 1.11.0 como la más reciente.
Maven
Puedes incluir la extensión de AWS KMS de Tink Java con Maven:
<dependencies>
<dependency>
<groupId>com.google.crypto.tink</groupId>
<artifactId>tink-awskms</artifactId>
<version>1.11.0</version>
</dependency>
</dependencies>
Bazel
Artefacto de lanzamiento de Maven
Puedes instalar el artefacto de Maven com.google.crypto.tink:tink-awskmsjunto con com.google.crypto.tink:tink con la
rules_jvm_external herramienta.
# ...
maven_install(
artifacts = [
"com.google.crypto.tink:tink:1.21.0",
"com.google.crypto.tink:tink-awskms:1.11.0",
# ... other dependencies ...
],
repositories = [
"https://maven.google.com",
"https://repo1.maven.org/maven2",
],
)
Compila a partir del código fuente
Si deseas compilar tink-awskms a partir del código fuente, por ejemplo, para fijar una confirmación específica, puedes incluirla como un http_archive en tu archivo WORKSPACE:
# ...
http_archive(
name = "tink_java",
urls = ["https://github.com/tink-crypto/tink-java/releases/download/v1.21.0/tink-java-1.21.0.zip"],
strip_prefix = "tink-java-1.21.0",
sha256 = "771051851184047a3fdfbe2aca552e00c2984ac4a596951a7ad1ea8837b178da",
)
load("@tink_java//:tink_java_deps.bzl", "TINK_MAVEN_ARTIFACTS", "tink_java_deps")
tink_java_deps()
load("@tink_java//:tink_java_deps_init.bzl", "tink_java_deps_init")
tink_java_deps_init()
http_archive(
name = "tink_java_awskms",
urls = ["https://github.com/tink-crypto/tink-java-awskms/releases/download/v1.11.0/tink-java-awskms-1.11.0.zip"],
strip_prefix = "tink-java-awskms-1.11.0",
sha256 = "18f8faa7ba0019fc584f9e03f94221ebbcc83f059568d2277a4866003153e151",
)
load("@tink_java_awskms//:tink_java_awskms_deps.bzl", "TINK_JAVA_AWSKMS_MAVEN_ARTIFACTS")
maven_install(
artifacts = TINK_MAVEN_ARTIFACTS + TINK_JAVA_AWSKMS_MAVEN_ARTIFACTS + [
# ... other dependencies ...
],
repositories = [
"https://maven.google.com",
"https://repo1.maven.org/maven2",
],
)
Extensión de Google Cloud KMS
La extensión Google Cloud KMS de Tink Java es tink-java-gcpkms, con la versión 1.10.0 como la más reciente.
Maven
Puedes incluir la extensión de Google Cloud KMS de Tink Java con Maven:
<dependencies>
<dependency>
<groupId>com.google.crypto.tink</groupId>
<artifactId>tink-gcpkms</artifactId>
<version>1.10.0/version>
</dependency>
</dependencies>
Bazel
Artefacto de lanzamiento de Maven
Puedes instalar el artefacto de Maven com.google.crypto.tink:tink-gcpkmsjunto con com.google.crypto.tink:tink con la herramienta rules_jvm_external.
# ...
maven_install(
artifacts = [
"com.google.crypto.tink:tink:1.21.0",
"com.google.crypto.tink:tink-gcpkms:1.10.0",
# ... other dependencies ...
],
repositories = [
"https://maven.google.com",
"https://repo1.maven.org/maven2",
],
)
Compila a partir del código fuente
Si deseas compilar tink-gcpkms a partir del código fuente, por ejemplo, para fijar una confirmación específica, puedes incluirla como un http_archive en tu archivo WORKSPACE:
# ...
http_archive(
name = "tink_java",
urls = ["https://github.com/tink-crypto/tink-java/archive/refs/tags/v1.21.0.zip],
urls = ["https://github.com/tink-crypto/tink-java/releases/download/v1.21.0/tink-java-1.21.0.zip"],
strip_prefix = "tink-java-1.21.0",
sha256 = "771051851184047a3fdfbe2aca552e00c2984ac4a596951a7ad1ea8837b178da",
)
load("@tink_java//:tink_java_deps.bzl", "TINK_MAVEN_ARTIFACTS", "tink_java_deps")
tink_java_deps()
load("@tink_java//:tink_java_deps_init.bzl", "tink_java_deps_init")
tink_java_deps_init()
http_archive(
name = "tink_java_gcpkms",
urls = ["https://github.com/tink-crypto/tink-java-gcpkms/releases/download/v1.10.0/tink-java-gcpkms-1.10.0.zip"],
strip_prefix = "tink-java-gcpkms-1.10.0",
sha256 = "ad85625cc4409f2f6ab13a8eef39c965501585e9323d59652cce322b3d2c09a2",
)
load("@tink_java_gcpkms//:tink_java_gcpkms_deps.bzl", "TINK_JAVA_GCPKMS_MAVEN_ARTIFACTS")
maven_install(
artifacts = TINK_MAVEN_ARTIFACTS + TINK_JAVA_GCPKMS_MAVEN_ARTIFACTS + [
# ... other dependencies ...
],
repositories = [
"https://maven.google.com",
"https://repo1.maven.org/maven2",
],
)
Apps de Tink Java
La biblioteca Tink Java Apps proporciona implementaciones para el token de método de pago de Google, la verificación del servidor de los anuncios recompensados de Google AdMob y el RFC 8291: Encriptación de mensajes para la inserción web, con la versión 1.14.0 como la más reciente.
Maven
Puedes incluir la biblioteca de apps de Tink Java con Maven:
<dependency>
<groupId>com.google.crypto.tink</groupId>
<artifactId>apps-webpush</artifactId>
<version>1.14.0</version>
</dependency>
<dependency>
<groupId>com.google.crypto.tink</groupId>
<artifactId>apps-paymentmethodtoken</artifactId>
<version>1.14.0</version>
</dependency>
<dependency>
<groupId>com.google.crypto.tink</groupId>
<artifactId>apps-rewardedads</artifactId>
<version>1.14.0</version>
</dependency>
Bazel
Puedes instalar cualquiera de los com.google.crypto.tink:apps-* artefactos de Maven
con la rules_jvm_external herramienta.
# ...
maven_install(
artifacts = [
"com.google.crypto.tink:apps-webpush:1.14.0",
"com.google.crypto.tink:apps-paymentmethodtoken:1.14.0",
"com.google.crypto.tink:apps-rewardedads:1.14.0",
# ... other dependencies ...
],
repositories = [
"https://maven.google.com",
"https://repo1.maven.org/maven2",
],
)
Próximos pasos
Una vez que termines de configurar Tink, continúa con los pasos de uso estándar de Tink:
- Elige un elemento primitivo – Decide qué elemento primitivo usar según tu caso de uso
- Administra claves: Protege tus claves con tu KMS externo, genera conjuntos de claves y rota tus claves.