What is Nostr?
Song Jong
npub1uyk…w258
2024-03-27 02:48:11

Song Jong on Nostr: #tuxdobananil #explains #nips #nip-96 # NIP-96: Integração com Armazenamento de ...

#tuxdobananil #explains #nips #nip-96

# NIP-96: Integração com Armazenamento de Arquivos HTTP 🌐💾

## Visão Geral:
O NIP-96 define uma API REST para servidores de armazenamento de arquivos HTTP, visando uso conjunto com a rede Nostr. A API permite que usuários do Nostr carreguem arquivos e os referenciem posteriormente por URL em notas do Nostr, sem utilizar eventos regulares do Nostr para armazenamento, solicitação ou recuperação de dados.

## Adaptação do Servidor:

Servidores de armazenamento de arquivos que desejam ser acessíveis por usuários do Nostr devem optar por disponibilizar uma rota HTTPS em `/.well-known/nostr/nip96.json` com informações como `api_url`, `download_url` (opcional), `supported_nips` (opcional), `tos_url` (opcional), `content_types` (opcional) e `plans` (opcional), detalhando as capacidades e restrições do serviço.

## Upload:

Os arquivos podem ser carregados individualmente para a URL especificada no campo `api_url`, como `multipart/form-data`, usando o método `POST`. Metadados opcionais, como `expiration`, `size`, `alt`, `caption`, `media_type`, e `content_type`, podem ser fornecidos no processo de upload.

## Processamento Atrasado:

Para processamento diferido, o servidor pode incluir um `processing_url` na resposta, permitindo que o cliente acompanhe o status do processamento.

## Compressão de Arquivos:

A compressão de arquivos e outras transformações podem ser aplicadas pelo servidor, mas todas as ações de arquivo, como download e exclusão, são identificadas pelo hash SHA-256 do arquivo original.

## Download:

Os servidores devem disponibilizar uma rota para download de arquivos baseada no hash SHA-256 do arquivo original, podendo incluir transformações de mídia solicitadas por parâmetros de query, como redimensionamento de imagens.

## Deleção:

Os servidores devem permitir a exclusão de arquivos através de uma rota especificada, utilizando o método `DELETE` e autenticação via cabeçalho NIP-98 `Authorization`.

## Seleção de Servidor:

Um evento de Preferência de Servidor de Arquivos, do tipo `kind:10096`, permite ao usuário selecionar um ou mais servidores preferenciais para upload de arquivos, listados por meio de tags `server`.

Este NIP abre caminho para uma integração mais profunda entre a rede Nostr e serviços de armazenamento de arquivos, facilitando o compartilhamento de mídia e outros tipos de arquivos dentro do ecossistema Nostr, mantendo a simplicidade e flexibilidade.
Author Public Key
npub1uykpm4luredxa7spwas287eewlhykl79rxauagl88ufhggvyk4tsl7w258