หลังจากติดตั้งและตั้งค่า Tink แล้ว ให้ทำตามขั้นตอนถัดไป
Tink Java
ไลบรารี Java หลักคือ tink-java โดยมีเวอร์ชันล่าสุดเป็น 1.19.0 Tink Java รองรับ Java 11 ขึ้นไป
Maven
คุณรวม Tink Java ได้โดยใช้ Maven ดังนี้
<dependency>
<groupId>com.google.crypto.tink</groupId>
<artifactId>tink</artifactId>
<version>1.19.0</version>
</dependency>
Bazel
ผู้ใช้ Bazel สามารถเพิ่ม Tink Java เป็นทรัพยากร Dependency ได้โดย
เพิ่มข้อมูลต่อไปนี้ในไฟล์ MODULE.bazel
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
ไลบรารีหลักของ Android คือ tink-java โดยมี 1.19.0 เป็นรุ่นล่าสุด
Tink Android รองรับอย่างเต็มรูปแบบตั้งแต่ API ระดับ 24 เป็นต้นไป คาดว่าส่วนใหญ่ของ Tink จะทำงานได้ตั้งแต่ API ระดับ 23 เป็นต้นไป ส่วนที่ Tink ไม่ทำงานทันทีเมื่อใช้ API ระดับ 23 ได้แก่
ไลบรารี JWT ต้องใช้ API ระดับ 24 เนื่องจากใช้คลาสต่างๆ เช่น
java.util.Optionalคุณหลีกเลี่ยงข้อจำกัดนี้ได้ด้วยการยกเลิกการเพิ่มน้ำตาลAPI บางรายการใน
com.google.crypto.tink.streamingaeadใช้SeekableByteBufferChannelซึ่งพร้อมใช้งานตั้งแต่ API ระดับ 24 ขึ้นไปเท่านั้น
เนื่องด้วยเหตุผลทางเทคนิค เราจึงทดสอบ Tink ใน Android บนโครงสร้างพื้นฐานภายในของ Google เท่านั้น เราไม่คาดว่าจะมีปัญหาใดๆ จากการดำเนินการนี้ แต่หากคุณพบปัญหา โปรดรายงานปัญหา
Tink Android ไม่ต้องมีการกำหนดค่า ProGuard
Gradle
คุณใช้ tink-android จาก Gradle ได้ดังนี้
dependencies {
implementation 'com.google.crypto.tink:tink-android:1.19.0'
}
ส่วนขยาย AWS KMS
ส่วนขยาย Tink Java AWS KMS คือ tink-java-awskms โดยมี 1.11.0 เป็นเวอร์ชันล่าสุด ที่เผยแพร่
Maven
คุณสามารถรวมส่วนขยาย Tink Java AWS KMS ได้โดยใช้ Maven ดังนี้
<dependencies>
<dependency>
<groupId>com.google.crypto.tink</groupId>
<artifactId>tink-awskms</artifactId>
<version>1.11.0</version>
</dependency>
</dependencies>
Bazel
อาร์ติแฟกต์รุ่น Maven
คุณสามารถติดตั้ง com.google.crypto.tink:tink-awskms Maven artifact
พร้อมกับ com.google.crypto.tink:tink ได้โดยใช้เครื่องมือ
rules_jvm_external
# ...
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",
],
)
สร้างจากซอร์ส
หากต้องการสร้าง tink-awskms จากแหล่งที่มา เช่น เพื่อปักหมุดคอมมิตที่เฉพาะเจาะจง คุณสามารถรวมไว้เป็น http_archive ในไฟล์ WORKSPACE
ได้โดยทำดังนี้
# ...
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
ส่วนขยาย Tink Java Google Cloud KMS คือ tink-java-gcpkms โดยมี 1.10.0 เป็นรุ่นล่าสุด
Maven
คุณสามารถรวมส่วนขยาย Tink Java Google Cloud KMS ได้โดยใช้ Maven ดังนี้
<dependencies>
<dependency>
<groupId>com.google.crypto.tink</groupId>
<artifactId>tink-gcpkms</artifactId>
<version>1.10.0/version>
</dependency>
</dependencies>
Bazel
อาร์ติแฟกต์รุ่น Maven
คุณสามารถติดตั้ง com.google.crypto.tink:tink-gcpkms Maven artifact
พร้อมกับ com.google.crypto.tink:tink ได้โดยใช้เครื่องมือ
rules_jvm_external
# ...
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",
],
)
สร้างจากซอร์ส
หากต้องการสร้าง tink-gcpkms จากแหล่งที่มา เช่น เพื่อปักหมุดคอมมิตที่เฉพาะเจาะจง คุณสามารถรวมไว้เป็น http_archive ในไฟล์ WORKSPACE
ได้โดยทำดังนี้
# ...
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
ไลบรารี Tink Java Apps มีการติดตั้งใช้งานสำหรับ Google Payment Method Token การยืนยันฝั่งเซิร์ฟเวอร์ของโฆษณาที่มีการให้รางวัลของ Google AdMob และ RFC 8291 - การเข้ารหัสข้อความสำหรับ Web Push โดยมี 1.12.2 เป็นรุ่นล่าสุด
Maven
คุณสามารถรวมไลบรารีแอป Java ของ Tink ได้โดยใช้ Maven ดังนี้
<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
คุณติดตั้งอาร์ติแฟกต์ Maven ของ com.google.crypto.tink:apps-* ได้โดยใช้เครื่องมือ rules_jvm_external
# ...
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",
],
)
ขั้นตอนถัดไป
เมื่อตั้งค่า Tink เสร็จแล้ว ให้ทำตามขั้นตอนการใช้งาน Tink มาตรฐานต่อไป
- เลือกองค์ประกอบพื้นฐาน - ตัดสินใจเลือกองค์ประกอบพื้นฐานที่จะใช้ตามกรณีการใช้งาน
- จัดการคีย์ - ปกป้องคีย์ด้วย KMS ภายนอก สร้างชุดคีย์ และหมุนเวียนคีย์