> ## Documentation Index
> Fetch the complete documentation index at: https://praison.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Device Auth • AI Agent SDK

> DeviceAuth: Device-identity proof carried in a ``hello`` frame.

# DeviceAuth

> Defined in the [**protocols**](https://praison.ai/docs/sdk/reference/praisonaiagents/modules/protocols.md) module.

AI Agent

Device-identity proof carried in a `hello` frame.

Attributes:
device\_id: Fingerprint of `public_key` (see :func:`device_id_from_public_key`).
public\_key: Standard base64 (padded) of the device's raw public key.
signature: Standard base64 (padded) signature over :meth:`signing_payload`.
signed\_at: Integer Unix seconds at which the device signed the challenge
(an integer so every client language renders identical signed bytes).
nonce: The server-issued challenge nonce being answered.

## Properties

**device\_id** `str`

No description available.

**public\_key** `str`

No description available.

**signature** `str`

No description available.

**signed\_at** `int`

No description available.

**nonce** `str`

No description available.

## Methods

> [card] [signing\_payload()](https://praison.ai/docs/sdk/reference/praisonaiagents/functions/DeviceAuth-signing_payload.md)
>
> Canonical bytes the device signs and the gateway verifies.

## Source

> [card] [View on GitHub](https://github.com/MervinPraison/PraisonAI/blob/main/src/praisonai-agents/praisonaiagents/gateway/protocols.py#L373)
>
> `praisonaiagents/gateway/protocols.py` at line 373


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.