
Pastebin criptografado com conhecimento zero. Seus dados são criptografados antes de saírem do seu navegador.
Seus dados são criptografados antes de saírem do seu navegador. Não podemos lê-los. Ninguém pode.
Demonstração ao Vivo • Reportar Bug • Solicitar Funcionalidade
Pastebins tradicionais armazenam seus dados em texto claro. Administradores de servidor, hackers ou qualquer pessoa com acesso ao banco de dados pode ler tudo que você compartilha.
CloakBin é diferente.
┌─────────────────────────────────────────────────────────────────┐
│ ZERO-KNOWLEDGE FLOW │
├─────────────────────────────────────────────────────────────────┤
│ │
│ YOUR BROWSER SERVER DATABASE │
│ ──────────── ────── ──────── │
│ │
│ "secret msg" │
│ │ │
│ ▼ │
│ ┌─────────┐ │
│ │ ENCRYPT │ AES-256-GCM │
│ │ locally │ (browser) │
│ └────┬────┘ │
│ │ │
│ ▼ │
│ "a3f8b2c1..." ───────► "a3f8b2c1..." ───► "a3f8b2c1..." │
│ (ciphertext) (ciphertext) (ciphertext) │
│ │
│ KEY stays in URL fragment (#) │
│ example.com/p/abc#KEY ◄── never sent to server │
│ │
└─────────────────────────────────────────────────────────────────┘
A chave de criptografia reside no fragmento da URL (#), que navegadores nunca enviam para servidores. Mesmo que nosso banco de dados seja comprometido, atacantes só obtêm texto cifrado sem significado.
| Componente | O que vê |
|---|---|
| Seu Navegador | ✅ Texto claro (você controla) |
| Rede/Provedor |
Detalhes Criptográficos:
crypto.getRandomValues)Não acredite apenas na nossa palavra — a garantia é verificável no seu navegador:
POST de saída que salva a pasta e observe o corpo da requisição. Você verá apenas texto cifrado e um salt — nunca seu texto claro, e nunca a chave de criptografia.# (o fragmento da URL). Por padrão da web, navegadores nunca enviam o fragmento para o servidor — ele permanece do lado do cliente.#fragment.Como a chave só existe no fragmento e no navegador do destinatário, o servidor (e seu banco de dados, e qualquer pessoa na rede) só vê blocos criptografados. Não existe caminho de código do lado do servidor que possa ler seu conteúdo — mesmo sob intimação, apenas texto cifrado existe para ser entregue.
# Clone
git clone https://github.com/Ishannaik/CloakBin.git
cd CloakBin
# Install
pnpm install
# Configure
cp .env.example .env
# Edit .env with your MongoDB URI
# Run
pnpm dev
MONGODB_URI=mongodb://localhost:27017/cloakbin
ADMIN_USER=admin
ADMIN_PASS=your-secure-password
src/
├── lib/
│ ├── components/ # Componentes de interface
│ ├── db/ # Adaptadores de banco de dados
│ └── crypto.ts # Criptografia (AES-256-GCM, PBKDF2)
├── routes/
│ ├── +page.svelte # Criar pasta
│ ├── p/[id]/ # Visualizar pasta
│ ├── api/ # Endpoints REST
│ └── admin/ # Painel administrativo
└── app.html
CloakBin é totalmente open source. Implante sua própria instância:
PRs são bem-vindos! Por favor:
GNU Affero General Public License v3.0 (AGPL-3.0) - veja LICENSE
Se você executar uma versão modificada do CloakBin como um serviço de rede, a AGPL §13 exige que você ofereça o código fonte modificado aos seus usuários.
Seus segredos merecem privacidade real.
Feito por Ishan Naik
| 🔒 Apenas texto cifrado criptografado |
| Servidor CloakBin | 🔒 Apenas texto cifrado criptografado |
| Banco de Dados | 🔒 Apenas texto cifrado criptografado |
| Destinatário da URL | ✅ Texto claro (eles têm a chave) |
| Camada | Tecnologia |
|---|
| Framework | SvelteKit 2.0, Svelte 5 |
| Linguagem | TypeScript |
| Estilização | Tailwind CSS 4.0 |
| Banco de Dados | MongoDB |
| Criptografia | Web Crypto API |
| Editor | CodeMirror 6 |
| Hospedagem | Vercel |