הגדרת Tink Python

ספריית Tink Python‏, tink-py, תומכת ב-Python 3.9 ומעלה ב-macOS‏ (x86-64 ו-ARM64), ב-Linux‏ (x86-64 ו-ARM64) וב-Windows‏ (x86-64). הגרסה האחרונה היא 1.15.0. אפשר להתקין אותו באופן מקומי באמצעות Pip או להשתמש בו עם Bazel.

‫Tink Python מספק שילובים עם AWS KMS,‏ Google Cloud KMS ו-HashiCorp Vault.

Pip

אפשר להתקין את גרסת ה-Tink Python הבינארית במערכת מ-PyPI באמצעות הפקודה הבאה:

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

אם חבילה בינארית לא מתפרסמת בסביבה שלכם, pip המערכת באופן אוטומטי חוזרת לבניית הפרויקט באמצעות הפצת המקור שפורסמה ב-PyPI. במקרה כזה, צריך להתקין את Bazel או את Bazelisk ואת הקומפיילר של protobuf כדי לבנות את הפרויקט בהצלחה.

Bazel

משתמשי Bazel יכולים להשתמש ב-Tink Python כתלות ב-pip באמצעות מאקרו pip_parse של rules_python, או כתלות ב-Bazel בקובץ MODULE.bazel שלהם:

bazel_dep(name = "tink_py")
archive_override(
    module_name = "tink_py",
    urls = ["https://github.com/tink-crypto/tink-py/archive/refs/tags/v1.15.0.zip"],
    strip_prefix = "tink-py-1.15.0",
    sha256 = "804f74733f586e44d13464e04e48b79cb6bdcffe581e2bce06a1d9eff58d480d",
)

הערה: אנחנו לא מפרסמים את Tink Python במרשם המרכזי של Bazel.

השלבים הבאים

אחרי שמסיימים להגדיר את Tink, ממשיכים לשלבים הרגילים לשימוש ב-Tink:

  • בחירת פרימיטיב – מחליטים באיזה פרימיטיב להשתמש בהתאם לתרחיש לדוגמה
  • ניהול מפתחות – הגנה על המפתחות באמצעות KMS חיצוני, יצירת קבוצות מפתחות והחלפת מפתחות