Military-grade security

Sobre criptografar / descriptografar arquivos

Learn how SendFilesEncrypted protects your files with zero-knowledge encryption

The Encryption Journey

Your files are protected every step of the way

📄
Your File
Unencrypted
🔐
Your Browser
AES-256 Encryption
🔒
Our Servers
Encrypted Only

Step-by-Step Process

1

You Upload a File

Em sendfilesencrypted.com, nos preocupamos com a segurança de seus arquivos e queremos que sua experiência de compartilhamento de arquivos online seja e pareça segura.

2

Browser Generates a Key

É por isso que implementamos a funcionalidade de criptografia de arquivo gratuita.

3

File is Encrypted

Todos os arquivos que você compartilha em Sendfilesencrypted.com são criptografados antes de serem carregados em nossos servidores, isso adiciona uma camada de segurança a cada arquivo que você compartilha, evitando que qualquer pessoa ou ameaça os acesse.

4

Encrypted File is Uploaded

Da mesma forma, todos os seus arquivos são descriptografados em seu navegador usando a senha que você forneceu ao enviá-los. Isso garante que, se um invasor acessar seus arquivos, eles serão totalmente criptografados.

5

Recipient Downloads

Aqui está como criptografamos seus arquivos antes de serem carregados e armazenados em nossos servidores.

Technical Details

For security experts and the technically curious

🔐

AES-256-GCM

O código divide seus arquivos em vários pequenos arquivos, cada pedaço é criptografado usando a senha que você usou para enviá-los e um código único para cada grupo de arquivos, isso dá ainda mais segurança aos seus arquivos. Após este processo, cada pedaço do arquivo criptografado é carregado e armazenado em nosso servidor. Isso garante que mesmo nós, os desenvolvedores, não possamos acessar seus arquivos.

🔑

PBKDF2 Key Derivation

600,000 iterations transform your password into a secure encryption key, making brute-force attacks computationally infeasible.

🛡️

Zero-Knowledge Architecture

Agora vou mostrar como descriptografamos seus arquivos.

🔒

TLS Transport

Lembre-se de que cada arquivo original se transformou em vários pedaços de arquivos criptografados, que são os que ficam armazenados em nosso servidor. Cada peça é baixada no navegador e, em seguida, a senha inserida e o código exclusivo do bloco de arquivo são usados para ser capaz de descriptografar cada peça que será unida a muitas outras peças descriptografadas de seu arquivo original e, em seguida, criar e baixar o arquivo original.

See the Code

Our encryption implementation is transparent. Here's a simplified version of how we encrypt your files:

encryption.js
// Derive encryption key from password
async function deriveKey(password, salt) {
  const encoder = new TextEncoder();
  const keyMaterial = await crypto.subtle.importKey(
    'raw',
    encoder.encode(password),
    'PBKDF2',
    false,
    ['deriveBits', 'deriveKey']
  );

  return crypto.subtle.deriveKey(
    {
      name: 'PBKDF2',
      salt: salt,
      iterations: 600000,  // High iteration count
      hash: 'SHA-256'
    },
    keyMaterial,
    { name: 'AES-GCM', length: 256 },
    false,
    ['encrypt', 'decrypt']
  );
}

// Encrypt file data
async function encryptFile(fileData, password) {
  const salt = crypto.getRandomValues(new Uint8Array(16));
  const iv = crypto.getRandomValues(new Uint8Array(12));
  const key = await deriveKey(password, salt);

  const encrypted = await crypto.subtle.encrypt(
    { name: 'AES-GCM', iv: iv },
    key,
    fileData
  );

  return { encrypted, salt, iv };
}

This is a simplified example. Our actual implementation includes additional security measures.

⚠️

Important Security Note

Sem a senha, será impossível para nós descriptografar seus arquivos e você obterá um arquivo corrompido que é impossível de ler.

Gostou do que leu?

Send your first encrypted file in seconds. No account required.

Envie arquivos criptografados agora