Song Jong on Nostr: #tuxdobananil #explains #nips #nip-51 # Resumo do NIP-51 - Listas 📝 O NIP-51 ...
#tuxdobananil #explains #nips #nip-51
# Resumo do NIP-51 - Listas 📝
O NIP-51 define listas criadas pelos usuários, que podem conter referências a diversos itens, sendo essas referências **públicas** ou **privadas**.
## Detalhes Principais:
- **Itens Públicos**: Especificados no array `tags` do evento.
- **Itens Privados**: Especificados em um array JSON que imita a estrutura do array `tags`, mas é criptografado (usando o esquema do NIP-04) e armazenado no campo `.content`.
Quando novos itens são adicionados a uma lista existente, os clientes DEVEM anexá-los ao final da lista, mantendo a ordem cronológica.
## Tipos de Listas:
### Listas Padrão:
Usam eventos substituíveis não parametrizados, significando que os usuários podem ter apenas uma lista de cada tipo. Estas listas têm significados especiais e os clientes podem utilizá-las para enriquecer o perfil do usuário ou a experiência de navegação.
Exemplos incluem:
- **Lista de Mudos**: Contém as chaves públicas de spammers e atores ruins que os usuários não querem ver em seus feeds.
- **Notas Fixadas**: Eventos que o usuário deseja destacar em sua página de perfil.
- **Marcadores**: Lista global e não categorizada de itens que o usuário deseja salvar.
- E mais, incluindo **Comunidades**, **Chats Públicos**, **Relays Bloqueados**, **Relays de Pesquisa**, **Grupos Simples**, **Interesses**, **Emojis**.
### Conjuntos:
São listas com significados bem definidos que podem aprimorar a funcionalidade e a UI dos clientes que os utilizam. Ao contrário das listas padrão, espera-se que os usuários tenham mais de um conjunto de cada tipo, sendo cada um deles atribuído a um identificador diferente `"d"`.
Exemplos incluem:
- **Conjuntos de Seguidores**: Grupos categorizados de usuários.
- **Conjuntos de Relays**: Grupos de relays definidos pelo usuário.
- **Conjuntos de Marcadores**: Categorias definidas pelo usuário para marcadores.
- **Conjuntos de Curadoria**: Grupos de artigos selecionados por usuários.
- **Conjuntos de Interesses**: Tópicos de interesse representados por um conjunto de hashtags.
- **Conjuntos de Emojis**: Grupos categorizados de emojis.
- **Conjuntos de Artefatos de Lançamento**: Grupos de arquivos de uma liberação de software.
## Exemplos de Implementação:
### Lista de Mudos com Itens Públicos e Privados:
Um exemplo seria uma lista que contém chaves públicas especificadas abertamente e outras criptografadas para privacidade.
### Conjunto de Curadoria de Artigos e Notas Sobre Iaques:
Pode incluir uma coleção de artigos e notas, com identificadores e informações adicionais como título, imagem e descrição, todos abertamente especificados para fácil acesso e compartilhamento.
### Conjunto de Artefatos de Lançamento de um Aplicativo de Exemplo:
Incluiria uma coleção de metadados de arquivos para diferentes plataformas, como Windows, MacOS, Linux e PWA, com informações adicionais como versão, título e imagem.
## Processo de Criptografia:
O conteúdo privado é criptografado usando o esquema do NIP-04, convertido para uma string base64 e armazenado no campo `.content` do evento, seguindo a prática recomendada de segurança para a proteção de informações sensíveis.
Este NIP apresenta uma estrutura flexível e segura para a criação, gerenciamento e compartilhamento de listas dentro do ecossistema Nostr, permitindo uma organização eficiente e personalizada de conteúdo por parte dos usuários.
# Resumo do NIP-51 - Listas 📝
O NIP-51 define listas criadas pelos usuários, que podem conter referências a diversos itens, sendo essas referências **públicas** ou **privadas**.
## Detalhes Principais:
- **Itens Públicos**: Especificados no array `tags` do evento.
- **Itens Privados**: Especificados em um array JSON que imita a estrutura do array `tags`, mas é criptografado (usando o esquema do NIP-04) e armazenado no campo `.content`.
Quando novos itens são adicionados a uma lista existente, os clientes DEVEM anexá-los ao final da lista, mantendo a ordem cronológica.
## Tipos de Listas:
### Listas Padrão:
Usam eventos substituíveis não parametrizados, significando que os usuários podem ter apenas uma lista de cada tipo. Estas listas têm significados especiais e os clientes podem utilizá-las para enriquecer o perfil do usuário ou a experiência de navegação.
Exemplos incluem:
- **Lista de Mudos**: Contém as chaves públicas de spammers e atores ruins que os usuários não querem ver em seus feeds.
- **Notas Fixadas**: Eventos que o usuário deseja destacar em sua página de perfil.
- **Marcadores**: Lista global e não categorizada de itens que o usuário deseja salvar.
- E mais, incluindo **Comunidades**, **Chats Públicos**, **Relays Bloqueados**, **Relays de Pesquisa**, **Grupos Simples**, **Interesses**, **Emojis**.
### Conjuntos:
São listas com significados bem definidos que podem aprimorar a funcionalidade e a UI dos clientes que os utilizam. Ao contrário das listas padrão, espera-se que os usuários tenham mais de um conjunto de cada tipo, sendo cada um deles atribuído a um identificador diferente `"d"`.
Exemplos incluem:
- **Conjuntos de Seguidores**: Grupos categorizados de usuários.
- **Conjuntos de Relays**: Grupos de relays definidos pelo usuário.
- **Conjuntos de Marcadores**: Categorias definidas pelo usuário para marcadores.
- **Conjuntos de Curadoria**: Grupos de artigos selecionados por usuários.
- **Conjuntos de Interesses**: Tópicos de interesse representados por um conjunto de hashtags.
- **Conjuntos de Emojis**: Grupos categorizados de emojis.
- **Conjuntos de Artefatos de Lançamento**: Grupos de arquivos de uma liberação de software.
## Exemplos de Implementação:
### Lista de Mudos com Itens Públicos e Privados:
Um exemplo seria uma lista que contém chaves públicas especificadas abertamente e outras criptografadas para privacidade.
### Conjunto de Curadoria de Artigos e Notas Sobre Iaques:
Pode incluir uma coleção de artigos e notas, com identificadores e informações adicionais como título, imagem e descrição, todos abertamente especificados para fácil acesso e compartilhamento.
### Conjunto de Artefatos de Lançamento de um Aplicativo de Exemplo:
Incluiria uma coleção de metadados de arquivos para diferentes plataformas, como Windows, MacOS, Linux e PWA, com informações adicionais como versão, título e imagem.
## Processo de Criptografia:
O conteúdo privado é criptografado usando o esquema do NIP-04, convertido para uma string base64 e armazenado no campo `.content` do evento, seguindo a prática recomendada de segurança para a proteção de informações sensíveis.
Este NIP apresenta uma estrutura flexível e segura para a criação, gerenciamento e compartilhamento de listas dentro do ecossistema Nostr, permitindo uma organização eficiente e personalizada de conteúdo por parte dos usuários.