Tink'i yükleyip kurduktan sonra Sonraki Adımlar'a geçin.
Tink Java
Temel Java kitaplığı, en son sürümü 1.19.0 olan tink-java'dır. Tink Java, Java 11 veya daha yeni sürümleri destekler.
Maven
Maven'ı kullanarak Tink Java'yı ekleyebilirsiniz:
<dependency>
<groupId>com.google.crypto.tink</groupId>
<artifactId>tink</artifactId>
<version>1.19.0</version>
</dependency>
Bazel
Bazel kullanıcıları, MODULE.bazel dosyalarına aşağıdakileri ekleyerek Tink Java'yı bağımlılık olarak ekleyebilir:
bazel_dep(name = "tink_java", version = "1.19.0")
git_override(
module_name = "tink_java",
remote = "https://github.com/tink-crypto/tink-java",
tag = "v1.19.0",
)
Tink Android
Temel Android kitaplığı, en son sürümü 1.19.0 olan tink-java'dır.
Tink Android, API düzeyi 24'ten itibaren tam olarak desteklenir. Tink'in çoğu bölümünün API düzeyi 23'ten itibaren çalışması beklenir. Tink'in API düzeyi 23 ile kullanıma hazır olarak çalışmadığı kısımlar şunlardır:
JWT kitaplığı,
java.util.Optionalgibi sınıfları kullandığından API düzeyi 24 gerektirir. Bu sınırlama, desugaring ile önlenebilir.com.google.crypto.tink.streamingaead'daki bazı API'ler, yalnızca API düzeyi 24'ten itibaren kullanılabilenSeekableByteBufferChannelkullanır.
Teknik nedenlerden dolayı Tink'i yalnızca Google'ın dahili altyapısında Android'de test ediyoruz. Bu durumun herhangi bir soruna yol açmasını beklemiyoruz ancak sorunla karşılaşırsanız lütfen sorun kaydı oluşturun.
Tink Android için proguard yapılandırması gerekmez.
Gradle
Gradle'dan tink-android kullanabilirsiniz:
dependencies {
implementation 'com.google.crypto.tink:tink-android:1.19.0'
}
AWS KMS Uzantısı
Tink Java AWS KMS uzantısı, en son sürümü 1.11.0 olan tink-java-awskms'dir.
Maven
Maven'i kullanarak Tink Java AWS KMS uzantısını ekleyebilirsiniz:
<dependencies>
<dependency>
<groupId>com.google.crypto.tink</groupId>
<artifactId>tink-awskms</artifactId>
<version>1.11.0</version>
</dependency>
</dependencies>
Bazel
Maven sürümü yapısı
rules_jvm_external aracını kullanarak com.google.crypto.tink:tink-awskms Maven yapısını com.google.crypto.tink:tink ile birlikte yükleyebilirsiniz.
# ...
maven_install(
artifacts = [
"com.google.crypto.tink:tink:1.19.0",
"com.google.crypto.tink:tink-awskms:1.11.0",
# ... other dependencies ...
],
repositories = [
"https://maven.google.com",
"https://repo1.maven.org/maven2",
],
)
Kaynaktan derleme
Örneğin, belirli bir commit'i sabitlemek için tink-awskms öğesini kaynaktan oluşturmak istiyorsanız bunu WORKSPACE dosyanızda http_archive olarak ekleyebilirsiniz:
# ...
http_archive(
name = "tink_java",
urls = ["https://github.com/tink-crypto/tink-java/releases/download/v1.19.0/tink-java-1.19.0.zip"],
strip_prefix = "tink-java-1.19.0",
sha256 = "196d7437806151eff3e74997bdf3b39e5ec025ca90ca793c1bd24ef1953cdce0",
)
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",
],
)
Google Cloud KMS Uzantısı
Tink Java Google Cloud KMS uzantısı, en son sürümü 1.10.0 olan tink-java-gcpkms'dir.
Maven
Maven'i kullanarak Tink Java Google Cloud KMS uzantısını ekleyebilirsiniz:
<dependencies>
<dependency>
<groupId>com.google.crypto.tink</groupId>
<artifactId>tink-gcpkms</artifactId>
<version>1.10.0/version>
</dependency>
</dependencies>
Bazel
Maven sürümü yapısı
rules_jvm_external aracını kullanarak com.google.crypto.tink:tink-gcpkms Maven yapısını com.google.crypto.tink:tink ile birlikte yükleyebilirsiniz.
# ...
maven_install(
artifacts = [
"com.google.crypto.tink:tink:1.19.0",
"com.google.crypto.tink:tink-gcpkms:1.10.0",
# ... other dependencies ...
],
repositories = [
"https://maven.google.com",
"https://repo1.maven.org/maven2",
],
)
Kaynaktan derleme
Örneğin, belirli bir commit'i sabitlemek için tink-gcpkms öğesini kaynaktan oluşturmak istiyorsanız bunu WORKSPACE dosyanızda http_archive olarak ekleyebilirsiniz:
# ...
http_archive(
name = "tink_java",
urls = ["https://github.com/tink-crypto/tink-java/releases/download/v1.19.0/tink-java-1.19.0.zip"],
strip_prefix = "tink-java-1.19.0",
sha256 = "196d7437806151eff3e74997bdf3b39e5ec025ca90ca793c1bd24ef1953cdce0",
)
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",
],
)
Tink Java Uygulamaları
Tink Java Apps kitaplığı, Google Ödeme Yöntemi Jetonu, Google AdMob Ödüllü Reklamlarının Sunucu Tarafında Doğrulanması ve RFC 8291 - Web Push için Mesaj Şifreleme ile ilgili uygulamalar sunar. En son sürüm 1.12.2'dir.
Maven
Tink Java Apps kitaplığını Maven kullanarak ekleyebilirsiniz:
<dependency>
<groupId>com.google.crypto.tink</groupId>
<artifactId>apps-webpush</artifactId>
<version>1.12.2</version>
</dependency>
<dependency>
<groupId>com.google.crypto.tink</groupId>
<artifactId>apps-paymentmethodtoken</artifactId>
<version>1.12.2</version>
</dependency>
<dependency>
<groupId>com.google.crypto.tink</groupId>
<artifactId>apps-rewardedads</artifactId>
<version>1.12.2</version>
</dependency>
Bazel
rules_jvm_external aracını kullanarak com.google.crypto.tink:apps-* Maven yapıtlarından herhangi birini yükleyebilirsiniz.
# ...
maven_install(
artifacts = [
"com.google.crypto.tink:apps-webpush:1.12.2",
"com.google.crypto.tink:apps-paymentmethodtoken:1.12.2",
"com.google.crypto.tink:apps-rewardedads:1.12.2",
# ... other dependencies ...
],
repositories = [
"https://maven.google.com",
"https://repo1.maven.org/maven2",
],
)
Sonraki adımlar
Tink'i kurmayı tamamladıktan sonra standart Tink kullanım adımlarıyla devam edin:
- Bir temel seçin: Kullanım alanınıza göre hangi temelin kullanılacağına karar verin.
- Anahtarları yönetme: Anahtarlarınızı harici KMS'nizle koruyun, anahtar kümeleri oluşturun ve anahtarlarınızı döndürün.