ספריית Tink Python, tink-py, תומכת ב-Python 3.10 ומעלה ב-macOS (x86-64 ו-ARM64), ב-Linux (x86-64 ו-ARM64) וב-Windows (x86-64). הגרסה האחרונה היא 1.16.0. אפשר להתקין אותו באופן מקומי באמצעות Pip או להשתמש בו עם Bazel.
Tink Python מספק שילובים עם AWS KMS, Google Cloud KMS ו-HashiCorp Vault.
צִפצוּף
אפשר להתקין את גרסת ה-Tink Python הבינארית למערכת מ-PyPI באמצעות הפקודה הבאה:
pip3 install tink==1.16.0
# Core Tink + Google Cloud KMS extension.
pip3 install tink[gcpkms]==1.16.0
# Core Tink + AWS KMS extension.
pip3 install tink[awskms]==1.16.0
# Core Tink + HashiCorp Vault KMS extension.
pip3 install tink[hcvault]==1.16.0
# Core Tink + all the KMS extensions.
pip3 install tink[all]==1.16.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.16.0.zip"],
strip_prefix = "tink-py-1.16.0",
sha256 = "176f9d034764624adcfc8d885d9fac6d28dfabc4ef2adbcb1894a07f230c9584",
)
הערה: אנחנו לא מפרסמים את Tink Python במאגר המרכזי של Bazel.
השלבים הבאים
אחרי שמסיימים להגדיר את Tink, ממשיכים לשלבים הרגילים לשימוש ב-Tink:
- בחירת פרימיטיב – מחליטים באיזה פרימיטיב להשתמש בהתאם לתרחיש לדוגמה
- ניהול מפתחות – הגנה על המפתחות באמצעות KMS חיצוני, יצירת קבוצות מפתחות והחלפת מפתחות