টিঙ্ক সেটআপ

আপনি উৎস থেকে Tink তৈরি করতে পারেন বা ভাষা-নির্দিষ্ট প্যাকেজ ব্যবহার করতে পারেন। নিম্নলিখিত নির্দেশাবলী আপনাকে শুরু করে।

আপনি Tink ইনস্টল এবং সেট আপ করা শেষ করার পরে, এই পৃষ্ঠার শেষে পরবর্তী পদক্ষেপগুলি চালিয়ে যান৷

সি++

Tink নিম্নলিখিত C++ লাইব্রেরি প্রদান করে:

টিঙ্ক সি++ (টিঙ্ক-সিসি)

টিঙ্ক C++ এর উপর নির্ভর করে:

Tink C++ সমর্থন করে:

  • C++ >= ১৪
  • ওএস:
    • উবুন্টুএলটিএস >= 20.04 (x86_64)
    • macOS >= 12.5 মন্টেরি (x86_64)
    • উইন্ডোজ সার্ভার >= 2019 (x86_64)
  • কম্পাইলার:
    • GCC >= 7.5.0
    • আপেল ঝনঝন >= 14
    • MSVC >= 2019
  • সিস্টেম তৈরি করুন:

সিমেক

আপনি একটি ইন-ট্রি নির্ভরতা হিসাবে tink-cc যোগ করা উচিত. যেমন:

cmake_minimum_required(VERSION 3.13)
project(YourProject CXX)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_STANDARD 14)
include(FetchContent)

# Import Tink as an in-tree dependency.
FetchContent_Declare(
  tink
  URL       https://github.com/tink-crypto/tink-cc/archive/refs/tags/v2.3.0.zip
  URL_HASH  SHA256=363ce671ab5ce0b24f279d3647185597a25f407c3608db007315f79f151f436b
)
FetchContent_GetProperties(tink)
if(NOT googletest_POPULATED)
  FetchContent_Populate(tink)
    add_subdirectory(${tink_SOURCE_DIR} ${tink_BINARY_DIR} EXCLUDE_FROM_ALL)
endif()

add_executable(your_app your_app.cc)
target_link_libraries(your_app tink::static)

বাজেল

Bzlmod

আপনি যদি মডিউল সহ Bazel ব্যবহার করেন তাহলে আপনার MODULE.bazel ফাইলে নিম্নলিখিত যোগ করুন:

bazel_dep(name = "tink_cc", version = "2.3.0")

ওয়ার্কস্পেস

আপনি যদি WORKSPACE ফাইলের সাথে Bazel ব্যবহার করেন তাহলে আপনার WORKSPACE ফাইলে নিম্নলিখিত যোগ করুন:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "tink_cc",
    urls = ["https://github.com/tink-crypto/tink-cc/archive/refs/tags/v2.3.0.zip"],
    strip_prefix = "tink-2.3.0",
    sha256 = "363ce671ab5ce0b24f279d3647185597a25f407c3608db007315f79f151f436b",
)

load("@tink_cc//:tink_cc_deps.bzl", "tink_cc_deps")

tink_cc_deps()

load("@tink_cc//:tink_cc_deps_init.bzl", "tink_cc_deps_init")

tink_cc_deps_init()

Tink C++ AWS KMS এক্সটেনশন (tink-cc-awskms)

Tink C++ Google Cloud KMS এর উপর নির্ভর করে:

Tink C++ AWS KMS সমর্থন করে:

  • C++ >= ১৪
  • ওএস:
    • উবুন্টুএলটিএস >= 20.04 (x86_64)
    • macOS >= 12.5 মন্টেরি (x86_64)
  • কম্পাইলার:
    • GCC >= 7.5.0
    • আপেল ঝনঝন >= 14
  • সিস্টেম তৈরি করুন:

বাজেল

আপনার প্রকল্পের WORKSPACE ফাইলে আপনাকে নিম্নলিখিতগুলি যুক্ত করতে হবে:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "tink_cc",
    urls = ["https://github.com/tink-crypto/tink-cc/archive/refs/tags/v2.3.0.zip"],
    strip_prefix = "tink-2.3.0",
    sha256 = "363ce671ab5ce0b24f279d3647185597a25f407c3608db007315f79f151f436b",
)

load("@tink_cc//:tink_cc_deps.bzl", "tink_cc_deps")

tink_cc_deps()

load("@tink_cc//:tink_cc_deps_init.bzl", "tink_cc_deps_init")

tink_cc_deps_init()

http_archive(
    name = "tink_cc_awskms",
    urls = ["https://github.com/tink-crypto/tink-cc-awskms/archive/refs/tags/v2.0.1.zip"],
    strip_prefix = "tink-cc-awskms-2.0.1",
    sha256 = "366319b269f62af120ee312ce4c99ce3738ceb23ce3f9491b4859432f8b991a4",
)

load("@tink_cc_awskms//:tink_cc_awskms_deps.bzl", "tink_cc_awskms_deps")

tink_cc_awskms_deps()

Tink C++ Google Cloud KMS এক্সটেনশন (tink-cc-gcpkms)

Tink C++ Google Cloud KMS এর উপর নির্ভর করে:

Tink C++ Google Cloud KMS সমর্থন করে:

  • C++ >= ১৪
  • ওএস:
    • উবুন্টুএলটিএস >= 20.04 (x86_64)
    • macOS >= 12.5 মন্টেরি (x86_64)
  • কম্পাইলার:
    • GCC >= 7.5.0
    • আপেল ঝনঝন >= 14
  • সিস্টেম তৈরি করুন:

বাজেল

আপনার প্রকল্পের WORKSPACE ফাইলে আপনাকে নিম্নলিখিতগুলি যুক্ত করতে হবে:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "tink_cc_gcpkms",
    urls = ["https://github.com/tink-crypto/tink-cc-gcpkms/releases/download/v2.3.0/tink-cc-gcpkms-2.3.0.zip"],
    strip_prefix = "tink-cc-gcpkms-2.3.0",
    sha256 = "5af0d0a502afc346bbaa40f226e8f3b28fe3f5def696cbaaa7bc13702af78901",
)

load("@tink_cc_gcpkms//:tink_cc_gcpkms_deps.bzl", "tink_cc_gcpkms_deps")

tink_cc_gcpkms_deps()

load("@tink_cc_gcpkms//:tink_cc_gcpkms_deps_init.bzl", "tink_cc_gcpkms_deps_init")

tink_cc_gcpkms_deps_init(register_go = True)

যাও

Tink নিম্নলিখিত Go লাইব্রেরি প্রদান করে:

সমস্ত Tink Go লাইব্রেরি Go মডিউল হিসাবে প্রকাশিত হয় যা স্ট্যান্ডার্ড Go টুলিং বা Bazel এর সাথে ব্যবহার করা যেতে পারে।

টিঙ্ক গো (টিঙ্ক-গো)

টুলিং যান

আপনার প্রকল্প ডিরেক্টরি থেকে নিম্নলিখিত কমান্ড চালানো হচ্ছে:

go get github.com/tink-crypto/tink-go/v2@v2.2.0

অফিসিয়াল গো ডকুমেন্টেশন দেখুন।

Tink Go AWS KMS এক্সটেনশন (tink-go-awskms)

টুলিং যান

আপনার প্রকল্প ডিরেক্টরি থেকে নিম্নলিখিত কমান্ড চালান:

go get github.com/tink-crypto/tink-go-awskms/v2@2.1.0

অফিসিয়াল গো ডকুমেন্টেশন দেখুন।

Tink Go Google Cloud KMS এক্সটেনশন (tink-go-gcpkms)

টুলিং যান

আপনার প্রকল্প ডিরেক্টরি থেকে নিম্নলিখিত কমান্ড চালান:

go get github.com/tink-crypto/tink-go-gcpkms/v2@v2.2.0

অফিসিয়াল গো ডকুমেন্টেশন দেখুন।

Tink Go HashiCorp ভল্ট এক্সটেনশন (tink-go-hcvault)

টুলিং যান

আপনার প্রকল্প ডিরেক্টরি থেকে নিম্নলিখিত কমান্ড চালান:

go get github.com/tink-crypto/tink-go-hcvault/v2@v2.2.0

অফিসিয়াল গো ডকুমেন্টেশন দেখুন।

জাভা

Tink Java এবং এক্সটেনশন সেট আপ করুন

ObjC

GitHub-এ HOWTO দেখুন

পাইথন

Tink Python লাইব্রেরি, tink-py ম্যাকওএস (x86-64 এবং ARM64), Linux (x86-64 এবং ARM64) এবং Windows (x86-64) এ Python 3.8 বা তার চেয়ে নতুন সমর্থন করে। সর্বশেষ রিলিজ হল 1.10.0 । এটি স্থানীয়ভাবে Pip ব্যবহার করে ইনস্টল করা যেতে পারে বা Bazel এর সাথে ব্যবহার করা যেতে পারে।

Tink Python AWS KMS , Google Cloud KMS এবং HashiCorp ভল্টের সাথে ইন্টিগ্রেশন প্রদান করে।

পিপ

আপনি নিম্নলিখিত কমান্ডটি চালিয়ে PyPI থেকে আপনার সিস্টেমের জন্য Tink Python বাইনারি রিলিজ ইনস্টল করতে পারেন:

pip3 install tink==1.10.0
# Core Tink + Google Cloud KMS extension.
pip3 install tink[gcpkms]==1.10.0
# Core Tink + AWS KMS extension.
pip3 install tink[awskms]==1.10.0
# Core Tink + HashiCorp Vault KMS extension.
pip3 install tink[hcvault]==1.10.0
# Core Tink + all the KMS extensions.
pip3 install tink[all]==1.10.0

যদি আপনার পরিবেশের জন্য একটি বাইনারি প্যাকেজ প্রকাশিত না হয়, pip স্বয়ংক্রিয়ভাবে PyPI-তে প্রকাশিত উৎস বিতরণ ব্যবহার করে প্রকল্পটি তৈরি করতে রিসোর্ট করে। যদি এটি হয় তবে প্রকল্পটি সফলভাবে তৈরি করতে আপনার Bazel বা Bazelisk এবং প্রোটোবাফ কম্পাইলার ইনস্টল করা দরকার।

বাজেল

Bazel ব্যবহারকারীরা তাদের WORKSPACE ফাইলে Tink Python অন্তর্ভুক্ত করতে পারেন:

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "tink_py",
    urls = ["https://github.com/tink-crypto/tink-py/releases/download/v1.10.0/tink-py-1.10.0.zip"],
    strip_prefix = "tink-py-1.10.0",
    sha256 = "767453aae4aad6de4fbb4162992184aa427b7b27864fe9912c270b24c673e1cc",
)

load("@tink_py//:tink_py_deps.bzl", "tink_py_deps")
tink_py_deps()

load("@rules_python//python:repositories.bzl", "py_repositories")
py_repositories()

load("@tink_py//:tink_py_deps_init.bzl", "tink_py_deps_init")
tink_py_deps_init("tink_py")

পরবর্তী পদক্ষেপ

একবার আপনি Tink সেট আপ করা শেষ করে, স্ট্যান্ডার্ড Tink ব্যবহারের পদক্ষেপগুলি চালিয়ে যান:

  • একটি আদিম চয়ন করুন - আপনার ব্যবহারের ক্ষেত্রে উপর ভিত্তি করে কোন আদিম ব্যবহার করবেন তা নির্ধারণ করুন
  • কীগুলি পরিচালনা করুন - আপনার বাহ্যিক KMS দিয়ে আপনার কীগুলিকে সুরক্ষিত করুন, কীসেট তৈরি করুন এবং আপনার কীগুলি ঘোরান