Tink Java सेट अप करना

Tink को इंस्टॉल और सेट अप करने के बाद, अगले चरण पर जाएं.

Tink Java

कोर Java लाइब्रेरी tink-java है. इसका सबसे नया वर्शन 1.24.0 है. Tink Java, Java 11 या इसके बाद के वर्शन के साथ काम करता है.

Maven

Maven का इस्तेमाल करके, Tink Java को शामिल किया जा सकता है:

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

Bazel

Bazel का इस्तेमाल करने वाले लोग, Tink Java को डिपेंडेंसी के तौर पर जोड़ सकते हैं. इसके लिए, उन्हें अपनी MODULE.bazel फ़ाइल में यह कोड जोड़ना होगा:

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

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

Tink Android

Android की मुख्य लाइब्रेरी tink-java है. इसका सबसे नया वर्शन 1.24.0 है.

Tink Android, एपीआई लेवल 24 और इसके बाद के वर्शन पर पूरी तरह से काम करता है. Tink के ज़्यादातर हिस्से, एपीआई लेवल 23 से काम करने लगते हैं. Tink के कुछ हिस्से, एपीआई लेवल 23 के साथ डिफ़ॉल्ट रूप से काम नहीं करते. जैसे:

  • JWT लाइब्रेरी के लिए, एपीआई लेवल 24 ज़रूरी है, क्योंकि यह java.util.Optional जैसी क्लास का इस्तेमाल करती है. डिशुगरिंग की मदद से, इस समस्या से बचा जा सकता है.

  • com.google.crypto.tink.streamingaead में मौजूद कुछ एपीआई, SeekableByteBufferChannel का इस्तेमाल करते हैं. यह सिर्फ़ एपीआई लेवल 24 से उपलब्ध है.

तकनीकी वजहों से, हम Tink को सिर्फ़ Google के इंटरनल इन्फ़्रास्ट्रक्चर पर Android के लिए टेस्ट करते हैं. हमें नहीं लगता कि इससे कोई समस्या होगी. हालांकि, अगर आपको कोई समस्या आती है, तो कृपया उसकी शिकायत करें.

Tink Android के लिए, ProGuard कॉन्फ़िगरेशन की ज़रूरत नहीं होती.

ग्रेडल

Gradle से tink-android का इस्तेमाल किया जा सकता है:

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

AWS KMS एक्सटेंशन

Tink Java AWS KMS एक्सटेंशन, tink-java-awskms है. इसका सबसे नया वर्शन 2.2.0 है.

Maven

Maven का इस्तेमाल करके, Tink Java AWS KMS एक्सटेंशन को शामिल किया जा सकता है:

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

Bazel

Maven रिलीज़ आर्टफ़ैक्ट

rules_jvm_external टूल का इस्तेमाल करके, com.google.crypto.tink:tink के साथ-साथ com.google.crypto.tink:tink-awskms Maven आर्टफ़ैक्ट को इंस्टॉल किया जा सकता है.

# ...

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

Google Cloud KMS एक्सटेंशन

Tink Java Google Cloud KMS एक्सटेंशन, tink-java-gcpkms है. इसका सबसे नया वर्शन 1.12.0 है.

Maven

Maven का इस्तेमाल करके, Tink Java Google Cloud KMS एक्सटेंशन को शामिल किया जा सकता है:

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

Bazel

Maven रिलीज़ आर्टफ़ैक्ट

rules_jvm_external टूल का इस्तेमाल करके, com.google.crypto.tink:tink के साथ-साथ com.google.crypto.tink:tink-gcpkms Maven आर्टफ़ैक्ट को इंस्टॉल किया जा सकता है.

# ...

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

सोर्स से बनाएं

अपनी 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",
)

Tink Java ऐप्लिकेशन

Tink Java Apps लाइब्रेरी, Google के पेमेंट के तरीके के टोकन, Google AdMob के इनाम वाले विज्ञापनों की सर्वर साइड से की जाने वाली पुष्टि, और आरएफ़सी 8291 - वेब पुश के लिए मैसेज एन्क्रिप्शन को लागू करने की सुविधा देती है. इसका सबसे नया वर्शन 1.15.0 है.

Maven

Maven का इस्तेमाल करके, Tink Java ऐप्लिकेशन की लाइब्रेरी को शामिल किया जा सकता है:

<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

rules_jvm_external टूल का इस्तेमाल करके, com.google.crypto.tink:apps-* Maven आर्टफ़ैक्ट में से कोई भी आर्टफ़ैक्ट इंस्टॉल किया जा सकता है.

# ...

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",
    ],
)

अगले चरण

Tink को सेट अप करने के बाद, Tink के इस्तेमाल के स्टैंडर्ड चरणों को जारी रखें:

  • प्रिमिटिव चुनें – अपने इस्तेमाल के उदाहरण के आधार पर तय करें कि किस प्रिमिटिव का इस्तेमाल करना है
  • कुंजियां मैनेज करना – अपने बाहरी केएमएस की मदद से कुंजियों को सुरक्षित रखें, कुंजियों के सेट जनरेट करें, और कुंजियों को रोटेट करें