আপনি উৎস থেকে Tink তৈরি করতে পারেন বা ভাষা-নির্দিষ্ট প্যাকেজ ব্যবহার করতে পারেন। নিম্নলিখিত নির্দেশাবলী আপনাকে শুরু করে।
আপনি Tink ইনস্টল এবং সেট আপ করা শেষ করার পরে, এই পৃষ্ঠার শেষে পরবর্তী পদক্ষেপগুলি চালিয়ে যান৷
সি++
Tink নিম্নলিখিত C++ লাইব্রেরি প্রদান করে:
- একটি মূল C++ লাইব্রেরি, tink-cc । সর্বশেষ রিলিজ হল 2.3.0
- একটি AWS KMS এক্সটেনশন, tink-cc-awskms । সর্বশেষ রিলিজ হল 2.0.1 ।
- একটি Google ক্লাউড KMS এক্সটেনশন, tink-cc-gcpkms । সর্বশেষ রিলিজ হল 2.3.0 ।
টিঙ্ক সি++ (টিঙ্ক-সিসি)
টিঙ্ক C++ এর উপর নির্ভর করে:
- প্রোটোবাফ 26.1
- Abseil LTS 20230802.0
- বিরক্তিকর এসএসএল বা ওপেনএসএসএল >=1.1.1
- RapidJSON 1.1.0
- googletest 1.14.0 (শুধুমাত্র পরীক্ষা)
- Wycheproof (শুধুমাত্র পরীক্ষা)
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 এর উপর নির্ভর করে:
- টিঙ্ক C++ 2.1.0
- AWS C++ SDK 1.7.345
- googletest 1.11.0 (শুধুমাত্র পরীক্ষা)
Tink C++ AWS KMS সমর্থন করে:
- C++ >= ১৪
- ওএস:
- উবুন্টুএলটিএস >= 20.04 (x86_64)
- macOS >= 12.5 মন্টেরি (x86_64)
- কম্পাইলার:
- GCC >= 7.5.0
- আপেল ঝনঝন >= 14
- সিস্টেম তৈরি করুন:
- Bazel >= 6 LTS
বাজেল
আপনার প্রকল্পের 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 এর উপর নির্ভর করে:
- টিঙ্ক C++ 2.1.0
- gRPC 1.59.3
- Google ক্লাউড C++ ক্লায়েন্ট লাইব্রেরি 2.16.0
- googletest 1.11.0 (শুধুমাত্র পরীক্ষা)
Tink C++ Google Cloud KMS সমর্থন করে:
- C++ >= ১৪
- ওএস:
- উবুন্টুএলটিএস >= 20.04 (x86_64)
- macOS >= 12.5 মন্টেরি (x86_64)
- কম্পাইলার:
- GCC >= 7.5.0
- আপেল ঝনঝন >= 14
- সিস্টেম তৈরি করুন:
- Bazel >= 6 LTS
বাজেল
আপনার প্রকল্পের 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 লাইব্রেরি প্রদান করে:
- একটি মূল টিঙ্ক লাইব্রেরি, টিঙ্ক-গো । সর্বশেষ প্রকাশ v2.2.0 হয়
- একটি AWS KMS এক্সটেনশন, tink-go-awskms সর্বশেষ প্রকাশ হল 2.1.0 ।
- একটি Google ক্লাউড KMS এক্সটেনশন, tink-go-gcpkms । সর্বশেষ রিলিজ হল 2.2.0 ।
- একটি HashiCorp ভল্ট এক্সটেনশন, tink-go-hcvault । সর্বশেষ রিলিজ হল 2.2.0 ।
সমস্ত 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
অফিসিয়াল গো ডকুমেন্টেশন দেখুন।
জাভা
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 দিয়ে আপনার কীগুলিকে সুরক্ষিত করুন, কীসেট তৈরি করুন এবং আপনার কীগুলি ঘোরান