Why Nostr? What is Njump?
2024-03-26 22:03:37

5967820 on Nostr: #tuxdobananil #explains #nips #nip-01 # NIP-01: O BĆ”sico do Nostr šŸš€ ## VisĆ£o ...

#tuxdobananil #explains #nips #nip-01

# NIP-01: O BĆ”sico do Nostr šŸš€

## VisĆ£o Geral

NIP-01 estabelece o fundamento do protocolo Nostr, detalhando como eventos e assinaturas devem ser gerenciados em uma rede descentralizada. Ɖ essencial para garantir que todos sigam um padrĆ£o coerente, promovendo interoperabilidade e seguranƧa.

### šŸ—ļø Eventos e Assinaturas

- Cada usuĆ”rio possui um par de chaves, seguindo o padrĆ£o de assinaturas Schnorr na curva `secp256k1`.
- Os eventos sĆ£o a unidade bĆ”sica de dados, contendo metadados como a chave pĆŗblica do criador, timestamp, tipo de evento (kind), tags e conteĆŗdo, todos verificados por uma assinatura digital.

### šŸ·ļø Tags

- Utilizadas para categorizar e facilitar a busca de eventos, permitindo referĆŖncias a outros eventos, usuĆ”rios e URLs de relays recomendados.
- TrĆŖs tags padrĆ£o: `e` para eventos, `p` para usuĆ”rios e `a` para eventos substituĆ­veis ou parametrizados.

### šŸ”¢ Kinds

- Define a natureza e a interpretaĆ§Ć£o do conteĆŗdo dos eventos, como metadados do usuĆ”rio ou notas de texto.
- Inclui convenƧƵes para faixas de `kinds`, diferenciando eventos regulares, substituĆ­veis, efĆŖmeros e substituĆ­veis parametrizados.

### šŸ“” ComunicaĆ§Ć£o Cliente-Relay

- Os relays expƵem endpoints de WebSocket para conexƵes de clientes, suportando envio de eventos e criaĆ§Ć£o de assinaturas para recebimento de novos eventos.

#### Mensagens do Cliente para o Relay:

- `["EVENT", <evento JSON>]`: Publicar eventos.
- `["REQ", <id da subscriĆ§Ć£o>, <filtros>]`: Solicitar eventos e inscrever-se para atualizaƧƵes.
- `["CLOSE", <id da subscriĆ§Ć£o>]`: Encerrar subscriƧƵes anteriores.

#### Mensagens do Relay para o Cliente:

- `["EVENT", <id da subscriĆ§Ć£o>, <evento JSON>]`: Envio de eventos solicitados.
- `["OK", <id do evento>, <true|false>, <mensagem>]`: ConfirmaĆ§Ć£o ou negaĆ§Ć£o de eventos publicados.
- `["EOSE", <id da subscriĆ§Ć£o>]`: Indica o fim dos eventos armazenados.
- `["CLOSED", <id da subscriĆ§Ć£o>, <mensagem>]`: SubscriĆ§Ć£o encerrada pelo servidor.
- `["NOTICE", <mensagem>]`: Mensagens de erro ou avisos.

## ConclusĆ£o

NIP-01 Ć© o alicerce do Nostr, definindo o fluxo bĆ”sico e estruturas para uma comunicaĆ§Ć£o eficaz e segura dentro da rede. Sua implementaĆ§Ć£o correta Ć© crucial para a operaĆ§Ć£o e expansĆ£o da rede Nostr.
Author Public Key
npub1uykpm4luredxa7spwas287eewlhykl79rxauagl88ufhggvyk4tsl7w258