# Crypto

## Crypto

A interface [Crypto](https://developer.mozilla.org/en-US/docs/Web/API/Crypto)&nbsp;possibilita acesso a um gerador de números aleatórios criptograficamente forte e a primitivas criptográficas.

Dentro de uma function da Azion, o objeto global `crypto` expõe esses recursos para que você execute operações seguras sem recorrer a bibliotecas externas. Por meio de `crypto.getRandomValues()` e `crypto.randomUUID()` você gera valores e identificadores aleatórios imprevisíveis, enquanto a propriedade `crypto.subtle` libera toda a API SubtleCrypto para gerar hash, assinar e verificar dados. Como o processamento acontece na arquitetura distribuída da Azion, computações sensíveis como validação de tokens ou assinatura de requisições rodam próximas ao usuário e dispensam idas e voltas até um servidor central, reduzindo a latência e a exposição.

## Propriedades

[Crypto.subtle](/pt-br/documentacao/produtos/applications/functions/runtime-apis/javascript/subtle-crypto/) retorna um objeto SubtleCrypto que fornece acesso a primitivas criptográficas comuns, como hash, assinatura, criptografia ou descriptografia.

## Métodos

`Crypto.getRandomValues()` Preenche o TypedArray passado com valores aleatórios criptograficamente sólidos.

`Crypto.randomUUID()` Retorna um UUID v4 de 36 caracteres gerado aleatoriamente.

## Casos de uso

- Gerar identificadores seguros e resistentes a colisões para sessões, requisições ou trace IDs com `randomUUID()`.
- Produzir valores aleatórios criptograficamente fortes para construir nonces ou tokens na rede global da Azion.
- Calcular hash de payloads de requisição ou digests para verificar a integridade antes de encaminhar o tráfego.
- Validar tokens assinados, como JWTs, diretamente na function sem contatar uma origem.

## Recursos relacionados

- [Crypto na MDN Web Docs](https://developer.mozilla.org/en-US/docs/Web/API/Crypto)
- [Runtime APIs](/pt-br/documentacao/produtos/applications/functions/runtime-apis/javascript/fetch/)

Para mais informações sobre [Crypto](https://developer.mozilla.org/en-US/docs/Web/API/Crypto) visite MDN Web Docs.





---