Protocolo

ACIDs, pacotes e transporte criptografado.

As mensagens Auranet são envelopes estruturados com cabeçalhos explícitos, cargas, carimbos de tempo e identificadores de sessão. O protocolo foi desenhado para manter a identidade estável enquanto os pares se comunicam diretamente ou por relays.

Modelo de identidade

ACIDs permanentes e temporários têm funções diferentes.

Tipo Formato Uso
ACID permanente auranet-p-... Identidade de longa duração para usuários, serviços, relays e nós.
ACID temporário auranet-t-... Identificador efêmero de sessão que delimita uma troca ativa.

Criptografia

Dois modos, um envelope consistente.

Chave de rede compartilhada

Use o modo de chave compartilhada quando os dois pares operam dentro de um limite confiável e precisam de menos custo de handshake.

Troca de chave privada

Use o modo privado quando os pares precisam de sigilo ponto a ponto por X25519 e uma chave simétrica de transporte derivada.

Cargas autenticadas

ChaCha20-Poly1305 protege o corpo da mensagem e impede adulteração nos dois modos.

Transporte

UDP primeiro; encapsulamento em fluxo quando a sessão precisa.

Transporte UDP
  um pacote -> uma mensagem Auranet
  ideal para trocas em tempo real e com relays

Transporte em fluxo
  prefixo de 4 bytes de tamanho -> quadro de carga criptografada
  ideal para canais de controle e transferências sobre socket