קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
הפונקציה Pseudo-Random Function (PRF) מאפשרת ליצור פלטים יציבים ושרירותיים באורך פסאודו אקראי לקלט נתון.
מכיוון ש-Tink פועלת על ערכות מפתחות, פרימיטיב זה חושף קבוצה תואמת של PRF במקום PRF אחד. מפתחות ה-PRF נוספים לאינדקס באמצעות מזהה מפתח של 32 ביט. אפשר להשתמש בה כדי לסובב את המפתח שמשמש לצנזור פיסת מידע, בלי לאבד את השיוך הקודם.
ל-PRF יש את המאפיינים הבאים:
דטרמיניסטי: חישוב PRF לגבי קלט נתון תמיד יניב את אותו הפלט.
אקראיות: אי אפשר להבחין בין הפלט של PRF לבין בייטים אקראיים.
בחירת סוג מפתח
אנחנו ממליצים להשתמש ב-HMAC_SHA256_PRF לרוב השימושים, אבל יש גם אפשרויות נוספות.
באופן כללי, התנאים הבאים נכונים:
מהירות HMAC_SHA512_PRF עשויה להיות מהירה יותר, בהתאם לגודל הקלט ולדרישות הספציפיות של החומרה שבה אתם משתמשים.
HMAC_SHA512_PRF הוא המצב השמרני ביותר שאפשר להשתמש בו
למספר בלתי מוגבל של הודעות.
המהירות של AES_CMAC_PRF היא המהירה ביותר במערכות שתומכות בהאצת חומרה של AES-NI.
רמת אבטחה מינימלית
ללא ידיעת המפתח, לא ניתן להבחין בין ה-PRF לבין פונקציה אקראית
אבטחה של 128 ביט לפחות, גם בתרחישים של משתמשים מרובים (כשתוקף לא מתמקד במפתח ספציפי, אלא כל מפתח מקבוצה של עד 232 מפתחות)
פלט זמין של לפחות 16 בייטים
תרחישים לדוגמה
תרחישים לדוגמה של PRF כוללים צנזור דטרמיניסטי של פרטים אישיים מזהים (PII), פונקציות גיבוב (hash) מפתחות ויצירה של מזהי משנה שלא מאפשרים להצטרף למערך הנתונים המקורי בלי לדעת מה המפתח.
אפשר להשתמש ב-PRFs כדי להוכיח אותנטיות של הודעה, אבל מומלץ להשתמש בפרימיטיב של MAC לתרחיש לדוגמה הזה, כי יש בו תמיכה באימות, הימנעות מבעיות אבטחה שמתרחשות לעיתים קרובות במהלך האימות ושימוש אוטומטי ברוטציית מפתחות. הוא גם מאפשר להשתמש באלגוריתמים לא דטרמיניסטיים.
[[["התוכן קל להבנה","easyToUnderstand","thumb-up"],["התוכן עזר לי לפתור בעיה","solvedMyProblem","thumb-up"],["סיבה אחרת","otherUp","thumb-up"]],[["חסרים לי מידע או פרטים","missingTheInformationINeed","thumb-down"],["התוכן מורכב מדי או עם יותר מדי שלבים","tooComplicatedTooManySteps","thumb-down"],["התוכן לא עדכני","outOfDate","thumb-down"],["בעיה בתרגום","translationIssue","thumb-down"],["בעיה בדוגמאות/בקוד","samplesCodeIssue","thumb-down"],["סיבה אחרת","otherDown","thumb-down"]],["עדכון אחרון: 2025-07-25 (שעון UTC)."],[[["\u003cp\u003eTink's PRF primitive provides stable, pseudo-random outputs for given inputs, enabling deterministic redaction and keyed hashing functionalities.\u003c/p\u003e\n"],["\u003cp\u003ePRFs in Tink are indexed by key IDs within keysets, allowing for key rotation without association loss.\u003c/p\u003e\n"],["\u003cp\u003eWhile offering strong security, PRFs are deterministic and do not guarantee anonymity, only pseudonymity, requiring careful application in privacy-sensitive systems.\u003c/p\u003e\n"],["\u003cp\u003eTink supports various PRF key types, with HMAC_SHA256_PRF recommended for most use cases and AES_CMAC_PRF potentially offering the best performance on hardware with AES-NI acceleration.\u003c/p\u003e\n"],["\u003cp\u003ePRFs provide a minimum of 128-bit security, even in multi-user environments with large key sets, and can generate at least 16 bytes of output.\u003c/p\u003e\n"]]],["Pseudo-Random Function (PRF) produces stable, pseudo-random outputs for a given input, managed via keysets indexed by a 32-bit key ID for rotation. Key properties include deterministic output and randomness. `HMAC_SHA256_PRF` is recommended, with alternatives like `HMAC_SHA512_PRF` and `AES_CMAC_PRF`. PRF provides pseudonymity, not anonymity, and is secure with at least 128-bit security. Use cases include deterministic PII redaction and creating non-joinable sub-IDs. MAC is recommended for proving authenticity.\n"],null,[]]