Thiết lập Tink C++

Sau khi cài đặt và thiết lập Tink, hãy tiếp tục với phần Các bước tiếp theo.

Khả năng tương thích

Tương thích với mọi thư viện Ngoài ra, còn tương thích với Tink C++
Ngôn ngữ C++ >= 17 Không có
Hệ điều hành UbuntuLTS >= 20.04 (x86_64)
macOS >= 12.5 Monterey (x86_64)
Windows Server >= 2019 (x86_64)
Trình biên dịch GCC >= 7.5.0
Apple Clang >= 14
MSVC >= 2019
Hệ thống xây dựng Bazel >= 7 LTS CMake >= 3.22

Cài đặt

Tink C++

Thư viện C++ cốt lõi là tink-cc với 2.4.0 là bản phát hành mới nhất.

Bazel

Bzlmod

Thêm đoạn mã này vào tệp MODULE.bazel:

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

WORKSPACE

Thêm đoạn mã này vào tệp 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.4.0.zip"],
    strip_prefix = "tink-2.4.0",
    sha256 = "06c4d49b0b1357f0b8c3abc77a7d920130dc868e4597d432a9ce1cda4f65e382",
)

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()

CMake

Thêm tink-cc làm phần phụ thuộc trong cây.

cmake_minimum_required(VERSION 3.22)
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.4.0.zip
  URL_HASH  SHA256=06c4d49b0b1357f0b8c3abc77a7d920130dc868e4597d432a9ce1cda4f65e382
)
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)

Tiện ích AWS KMS

Tiện ích AWS KMS C++ của Tink là tink-cc-awskms với 2.0.1 là bản phát hành mới nhất.

Bazel

WORKSPACE

Thêm đoạn mã này vào tệp 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.4.0.zip"],
    strip_prefix = "tink-2.4.0",
    sha256 = "06c4d49b0b1357f0b8c3abc77a7d920130dc868e4597d432a9ce1cda4f65e382",
)

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()

Tiện ích Google Cloud KMS

Tiện ích Google Cloud KMS của Tink C++ là tink-cc-gcpkms với 2.4.0 là bản phát hành mới nhất.

Bazel

WORKSPACE

Thêm đoạn mã này vào tệp 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.4.0/tink-cc-gcpkms-2.4.0.zip"],
    strip_prefix = "tink-cc-gcpkms-2.4.0",
    sha256 = "b2c7803b03fcce2d52b15e97f871155d477ccf88b2146337d54202defd074418",
)

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)

Các bước tiếp theo

Sau khi hoàn tất quá trình thiết lập Tink, hãy tiếp tục với các bước sử dụng Tink tiêu chuẩn: