Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
O primitivo de função pseudoaleatória (PRF, na sigla em inglês) permite produzir saídas pseudoaleatórias
estáveis e arbitrárias para uma determinada entrada.
Como a Tink opera em conjuntos de chaves, esse primitivo expõe um
conjunto correspondente de PRFs em vez de um único PRF. Os PRFs são indexados por um
ID de chave de 32 bits. Isso pode ser usado para alternar a chave usada para editar uma informação, sem perder a associação anterior.
O PRF tem as seguintes propriedades:
Determinista:
o cálculo de um PRF para uma determinada entrada sempre produzirá a mesma saída.
Aleatoriedade:
a saída de um PRF é indistinguível de bytes aleatórios.
Escolher um tipo de chave
Recomendamos o uso de HMAC_SHA256_PRF para a maioria dos usos, mas também há outras
opções.
De modo geral, o seguinte se aplica:
O HMAC_SHA512_PRF pode ou não ser mais rápido, dependendo do tamanho da entrada e
das especificidades do hardware usado.
HMAC_SHA512_PRF é o modo mais conservador que pode ser usado para
um número praticamente ilimitado de mensagens.
AES_CMAC_PRF é mais rápido em sistemas compatíveis com a aceleração de hardware AES-NI.
Garantias mínimas de segurança
Sem o conhecimento da chave, a PRF é indistinguível de uma função aleatória
Segurança pelo menos de 128 bits, também em cenários multiusuário (quando um invasor não
está visando uma chave específica, mas qualquer chave de um conjunto de até 232
chaves)
Pelo menos 16 bytes de saída disponíveis
Exemplos de casos de uso
Os casos de uso do PRF incluem a edição determinística de informações de identificação
pessoal (PII), funções hash com chave e a criação de subIDs que não permitem
a mesclagem com o conjunto de dados original sem conhecer a chave.
Embora os PRFs possam ser usados para provar a autenticidade de uma mensagem, o
primário MAC é recomendado para esse caso de uso porque oferece suporte para
verificação, evitando os problemas de segurança que geralmente acontecem durante
a verificação e oferecendo suporte automático para a rotação de chaves. Ela também permite algoritmos não determinísticos.
[[["Fácil de entender","easyToUnderstand","thumb-up"],["Meu problema foi resolvido","solvedMyProblem","thumb-up"],["Outro","otherUp","thumb-up"]],[["Não contém as informações de que eu preciso","missingTheInformationINeed","thumb-down"],["Muito complicado / etapas demais","tooComplicatedTooManySteps","thumb-down"],["Desatualizado","outOfDate","thumb-down"],["Problema na tradução","translationIssue","thumb-down"],["Problema com as amostras / o código","samplesCodeIssue","thumb-down"],["Outro","otherDown","thumb-down"]],["Última atualização 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,[]]