> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.6mm.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.6mm.com/_mcp/server.

# Agent SDK Secretos y HMAC Firmas

Agent SDK solicitudes se autentican con un socio API secreto. Guarda ese secreto dentro de un servicio de backend de confianza y deja que el SDK genere campos de firma siempre que sea posible.

> **Dos protocolos de firma**
>
> Agent SDK firma utiliza campos de solicitud ordenados, una marca de tiempo basada en segundos y un nonce. Las solicitudes de API del Desarrollador Directo utilizan el proceso separado descrito en [Solicitud de Firma](/es-ES/developer-api/request-signing). No reutilices un formato de carga útil para el otro.

<h2 id="signing-rule">
  Regla de firma
</h2>

Para Agent SDK peticiones:

1. Excluye el campo `sign` .
2. Omitir campos con valores vacíos.
3. Ordenar los nombres de campos restantes en ASCII orden.
4. Unir los campos como `k=v&k2=v2`.
5. Calcular la firma hexadecimal HMAC-SHA256 con `apiSecret`.

El SDK debería construir este valor a partir de los mismos datos que envía. Cambiar un campo de signos tras la generación de la firma provoca que la verificación falle.

<h2 id="sdk-managed-fields">
  SDK-campos gestionados
</h2>

| Campo          | Fuente                   | Descripción                                                    |
| -------------- | ------------------------ | -------------------------------------------------------------- |
| agentCode      | SDK configuración        | Código de agente asociado.                                     |
| Marca temporal | Hora actual del servidor | Marca de tiempo de Unix en segundos.                           |
| nonce          | Valor aleatorio seguro   | Cadena aleatoria contra protección contra repetición.          |
| Signo          | HMAC-SHA256              | Solicito firma.                                                |
| Moneda         | Moneda predeterminada    | Se usa cuando se API la transferencia/cuenta omitir la moneda. |

<h2 id="secret-storage">
  Almacenamiento secreto
</h2>

* Cargar `apiSecret` desde un gestor de secretos backend o una configuración de ejecución protegida.
* Nunca coloques el secreto en paquetes frontend, aplicaciones móviles, clientes de escritorio, capturas de pantalla o tickets de soporte.
* Mantener separadas las credenciales para desarrollo, puesta en escena y producción.
* Limitar el acceso a los servicios y operadores que lo requieran.
* Redactar firmas de solicitud, valores de autorización y secretos de los registros.
* Revocar y reemplazar credenciales cuando se sospeche de la exposición.

<h2 id="clock-and-replay-protection">
  Protección contra reloj y repeticiones
</h2>

El SDK incluye `timestamp` y `nonce` para reducir el riesgo de repetición. Mantén sincronizados los relojes del backend y no reutilices un nonce construido manualmente. Si la validación de firma falla, confirma el secreto configurado, la hora del servidor, los campos serializados y el entorno antes de intentarlo de nuevo.

<h2 id="integration-checklist">
  Lista de verificación de integración
</h2>

| Comprobado         | Resultado esperado                                                                                 |
| ------------------ | -------------------------------------------------------------------------------------------------- |
| Ubicación secreta  | Almacenamiento secreto solo en backend.                                                            |
| Medio ambiente     | La URL base y la credencial pertenecen al mismo entorno.                                           |
| Manejo en el campo | SDK genera `timestamp`, `nonce`y `sign`.                                                           |
| Tala               | Los identificadores de empresa permanecen visibles mientras que las credenciales están redactadas. |
| Rotación           | El propietario de la credencial y el proceso de reemplazo están documentados.                      |

<h2 id="related-security-docs">
  Documentos de seguridad relacionados
</h2>

#### [Agent SDK Resumen](/es-ES/sdk/agent-sdk/overview)

Revisa el flujo de integración backend recomendado.

#### [Webhooks e idempotencia](/es-ES/sdk/security/webhooks-idempotency)

Verifica las firmas de callback y evita el procesamiento duplicado.

#### [SDK Resolución de problemas](/es-ES/sdk/security/troubleshooting)

Diagnostica problemas de firma, reloj, entorno y solicitudes.