Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
rust_citadel — Biblioteca de criptografia híbrida pós-quântica que combina X25519 + ML-KEM-768 com AES-256-GCM | Kitploit
Ferramentas/GitHubGitHub/mrcord77/rust_citadel
Autenticação e AutorizaçãoFerramentas de Criptografia/DescriptografiaCriptografiaSegurança na NuvemSegurança de API
GitHubmrcord77/rust_citadel

rust_citadel

Biblioteca de criptografia híbrida pós-quântica que combina X25519 + ML-KEM-768 com AES-256-GCM

Ver Repositório
223há 5 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Citadel

Servidor de criptografia híbrida pós-quântica e gerenciamento de chaves.

A Citadel combina X25519 + ML-KEM-768 para encapsulamento de chave e AES-256-GCM para criptografia de dados, seguindo a abordagem híbrida do NIST para a transição pós-quântica. Aplicações criptografam e descriptografam dados por meio de uma API REST. A Citadel gerencia as chaves — geração, rotação, revogação, controle de acesso e registro de auditoria.

Status: Implementação funcional. Não auditado. Sem implantações em produção. Consulte Segurança abaixo.


O Que Ela Faz

Your Application              Citadel                         Database
       |                         |                               |
       |-- POST /encrypt ------->|                               |
       |                         |-- hybrid KEM (X25519+ML-KEM)  |
       |                         |-- derive AES-256 key (HKDF)   |
       |                         |-- encrypt with AES-256-GCM    |
       |<-- encrypted blob ------|                               |
       |                                                         |
       |-- store blob ------------------------------------------>|

Sua aplicação nunca toca no material bruto da chave. O bloco criptografado é autossuficiente — inclui a chave encapsulada, identificadores de algoritmo e o texto cifrado. Armazene-o em qualquer banco de dados. Descriptografe enviando-o de volta à Citadel com o mesmo AAD e contexto.

Arquitetura

citadel-envelope    Hybrid encryption core (X25519 + ML-KEM-768 + AES-256-GCM)
citadel-keystore    Key lifecycle management, 4-level hierarchy, threat-adaptive policies
citadel-api         HTTP server, scoped API key auth, rate limiting, real-time dashboard

Início Rápido

Docker (recomendado)

# Clone
git clone https://github.com/mrcord77/rust_citadel.git
cd rust_citadel

# Set your admin API key
echo -n "your-secret-key" | sha256sum | cut -d' ' -f1
# Copy the hash

# Start
CITADEL_API_KEY_HASH=<paste-hash> docker compose up -d

# Verify
curl http://localhost:3000/health
# {"status":"ok","version":"0.2.0"}

Painel: http://localhost:3000

A partir do Código-Fonte

Requer Rust 1.75+.

cargo build --release -p citadel-api
CITADEL_API_KEY="your-secret-key" CITADEL_SEED_DEMO=true ./target/release/citadel-api

Uso

Python

import requests

api = "http://localhost:3000"
headers = {"Authorization": "Bearer your-secret-key"}

# Encrypt
r = requests.post(f"{api}/api/keys/{dek_id}/encrypt", headers=headers, json={
    "plaintext": "sensitive data",
    "aad": "record-001",        # binds ciphertext to this record
    "context": "patient-records" # domain separation
})
blob = r.json()

# Decrypt
r = requests.post(f"{api}/api/decrypt", headers=headers, json={
    "blob": blob,
    "aad": "record-001",
    "context": "patient-records"
})
plaintext = r.json()["plaintext"]

Consulte citadel_example.py para um exemplo completo em funcionamento com vinculação de AAD, rotação de chaves e comportamento de aplicação ciente de ameaças.

curl

# Status
curl http://localhost:3000/api/status -H "Authorization: Bearer $KEY"

# List keys
curl http://localhost:3000/api/keys -H "Authorization: Bearer $KEY"

# Encrypt
curl -X POST http://localhost:3000/api/keys/$DEK_ID/encrypt \
  -H "Authorization: Bearer $KEY" \
  -H "Content-Type: application/json" \
  -d '{"plaintext":"hello","aad":"test","context":"demo"}'

Endpoints da API

EndpointMétodoEscopoDescrição
/healthGET—Verificação de saúde
/api/statusGETreadNível de ameaça, contagens de chaves
/api/metricsGETreadMétricas de segurança
/api/keysGETreadListar todas as chaves
/api/keysPOSTmanageGerar nova chave
/api/keys/:idGETreadObter detalhes da chave
/api/keys/:id/activatePOSTmanageAtivar uma chave pendente
/api/keys/:id/rotatePOSTmanageRotacionar chave (nova versão)
/api/keys/:id/revokePOSTmanageRevogar chave permanentemente
/api/keys/:id/destroyPOSTmanageDestruir material de chave
/api/keys/:id/encryptPOSTencryptCriptografar dados
/api/decryptPOSTencryptDescriptografar dados
/api/threatGETreadDetalhes de inteligência de ameaças
/api/policiesGETreadPolíticas de chave ativas
/api/auth/whoamiGETreadInformações da chave de API atual
/api/auth/keysGETadminListar chaves de API
/api/auth/keysPOSTadminCriar chave de API
/api/auth/keys/:idDELETEadminRevogar chave de API

Hierarquia de Chaves

Root Key
  └── Domain Key (per environment / business unit)
        └── KEK — Key Encrypting Key (wraps DEKs)
              └── DEK — Data Encrypting Key (encrypts application data)

Segue o NIST SP 800-57. Cada nível contém o raio de impacto de um comprometimento — uma DEK vazada não expõe outras DEKs porque a KEK é separada.

Escopos de Chave de API

EscopoPermissões
readVisualizar chaves, status, métricas, nível de ameaça
encryptCriptografar e descriptografar dados
manageCriar, rotacionar, revogar, destruir chaves
adminTudo acima + gerenciar chaves de API

admin implica todos os outros escopos. Princípio do menor privilégio: conceda read a painéis de monitoramento, read + encrypt a serviços de aplicação e admin a ferramentas administrativas.

Sistema Adaptativo de Ameaças

A Citadel monitora eventos de segurança e ajusta automaticamente as políticas de chaves:

NívelGatilhoResposta
LOWOperações normaisPeríodos criptográficos padrão
GUARDEDAnomalias menoresRotação ligeiramente mais restrita
ELEVATEDPadrões suspeitosCronogramas de rotação compactados
HIGHIndicadores de ameaça ativosRotação forçada, limites de uso reduzidos
CRITICALSob ataqueRestrições máximas

Eventos que elevam o nível de ameaça: autenticação falha, falhas de descriptografia, padrões de acesso rápidos, escalonamento manual. A pontuação decai ao longo do tempo.

Criptografia

ComponenteAlgoritmoPadrão
Encapsulamento de chave (clássico)X25519 ECDHRFC 7748
Encapsulamento de chave (pós-quântico)ML-KEM-768FIPS 203
Criptografia de dadosAES-256-GCMNIST SP 800-38D
Derivação de chaveHKDF-SHA256NIST SP 800-56C

Construção híbrida: ambos os segredos compartilhados são concatenados e alimentados por meio de HKDF. A segurança é mantida se qualquer um entre X25519 ou ML-KEM-768 permanecer seguro.

Formato de Transmissão

version[1] || suite_kem[1] || suite_aead[1] || flags[1] || kem_ct_len[2] ||
x25519_ephemeral_pk[32] || mlkem768_ct[1088] || nonce[12] || aead_ct[variable]

Autodescritivo, versionado, sem negociação (previne ataques de downgrade). Consulte SPEC.md para a especificação completa.

Propriedades de Segurança

  • Comparação em tempo constante — a verificação de chave de API via crate subtle previne ataques de temporização
  • Zeroização — Todos os segredos compartilhados e chaves AES envolvidos em Zeroizing<T>, zerados ao serem descartados
  • Erros uniformes — Falhas de descriptografia retornam mensagens de erro idênticas (sem oráculo de descriptografia)
  • Log de auditoria com encadeamento de integridade — cadeia de hash SHA-256 detecta adulteração de log
  • Limite de taxa — bucket de tokens por IP com escalonamento de ameaça em violações

Segurança

A Citadel é um software não auditado.

Baixar ferramenta