הגדרת Tink Python

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

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

Pip

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

pip3 install tink==1.13.0
# Core Tink + Google Cloud KMS extension.
pip3 install tink[gcpkms]==1.13.0
# Core Tink + AWS KMS extension.
pip3 install tink[awskms]==1.13.0
# Core Tink + HashiCorp Vault KMS extension.
pip3 install tink[hcvault]==1.13.0
# Core Tink + all the KMS extensions.
pip3 install tink[all]==1.13.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/releases/download/v1.13.0/tink-py-1.13.0.zip"],
    strip_prefix = "tink-py-1.13.0",
    sha256 = "874a9837022d6124e3d28785cf40f0a9495637ab5e91fda5392412b200f0cced",
)

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

השלבים הבאים

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

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