RFC 9562 · SHA-1 · DETERMINISTIC

UUID v5 Generator

Gere UUID v5 determinísticos a partir de um namespace e um nome usando SHA-1. Teste a reprodutibilidade, analise os bytes UTF-8 e gere UUIDs em massa no navegador.

Browser-only: Namespace and name values are processed locally.

1. Choose Namespace

Namespace scopes your names
Selected Namespace DNS
Namespace UUID 6ba7b810-9dad-11d1-80b4-00c04fd430c8

2. Enter Name

Exact bytes are hashed
Names: 0 Characters: 0 UTF-8 Bytes: 0
RFC v5 Test Vector DNS + www.example.com 2ed6657d-e927-568b-95e1-2665a8aea6a2

O que é UUID v5?

UUID v5 é um formato de UUID determinístico e baseado em nome. Em vez de gerar um identificador aleatório, ele combina um UUID de namespace com um nome e aplica SHA-1 à sequência de bytes resultante.

Os primeiros 128 bits do digest SHA-1 são adaptados ao formato UUID, definindo os bits da versão como 5 e os bits da variante conforme a RFC. Como o processo é determinístico, o mesmo namespace e os mesmos bytes do nome sempre produzem o mesmo UUID.

Namespaces de UUID v5

  • DNS: Nomes de domínio, como example.com
  • URL: URLs e identificadores relacionados a URLs
  • OID: Identificadores de objetos
  • X.500: Nomes distintos
  • Personalizado: UUIDs de namespace controlados pela aplicação

Quando usar UUID v5

  • IDs estáveis para URLs e domínios
  • Importações de dados determinísticas
  • Operações ETL idempotentes
  • Correspondência de registros entre sistemas
  • Fixtures de teste estáveis
  • Identificadores de cache ou recursos baseados em namespace

UUID v5 vs UUID v4

UUID v4 é principalmente aleatório e é útil quando um novo identificador imprevisível é necessário. UUID v5 é determinístico e é útil quando um identificador precisa ser reproduzível a partir de uma entrada conhecida.

UUID v5 vs UUID v3

UUID v3 e UUID v5 usam um namespace e um nome. UUID v3 usa MD5, enquanto UUID v5 usa SHA-1. Para novas implementações de UUIDs determinísticos, UUID v5 geralmente é a opção preferida quando é necessária interoperabilidade com o padrão UUID v5.

Frequently Asked Questions

UUID v5 é um formato de UUID determinístico e baseado em nome. Ele combina um UUID de namespace e um nome, aplica SHA-1 aos dados e converte o resultado em um UUID com versão 5 e a variante definida pela RFC.

Sim. Quando o UUID de namespace e os bytes do nome são exatamente iguais, uma implementação compatível com UUID v5 produz o mesmo UUID.

Um namespace é um UUID que define o contexto do nome usado no cálculo. Os namespaces padrão incluem DNS, URL, OID e X.500. As aplicações também podem usar seu próprio UUID de namespace personalizado.

Não. O UUID v5 aplica o hash aos bytes do nome fornecido. Diferenças como letras maiúsculas, espaços, barras finais em URLs ou diferentes representações Unicode podem produzir UUIDs diferentes.

Não. UUID v5 é determinístico, e não aleatório. O mesmo namespace e os mesmos bytes do nome produzem o mesmo UUID.

Não. UUID v5 foi projetado para identificadores determinísticos, não para senhas, tokens de autenticação, segredos ou assinaturas digitais.

Sim. Insira um nome por linha e a ferramenta gera um UUID v5 determinístico para cada nome usando o namespace selecionado.

Ambos são UUIDs determinísticos baseados em namespace, mas UUID v3 usa MD5, enquanto UUID v5 usa SHA-1 para o algoritmo de geração do UUID.

Não. O cálculo de SHA-1 e a formatação dos UUIDs são realizados localmente no seu navegador.