Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
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
Ferramentas/GitHubGitHub/nccgroup/fips203
Segurança de Sistemas EmbarcadosFerramentas de Criptografia/DescriptografiaCriptografia
GitHubnccgroup/fips203

fips203

Implementação pura em Rust do padrão (draft) FIPS 203 Module-Lattice-based Key-Encapsulation Mechanism para aplicações de servidor, desktop, navegador e embarcadas.

Ver Repositório
191há 2 anosAinda 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

NCC Group: Padrão de Mecanismo de Encapsulamento de Chave Baseado em Reticulados Modulares FIPS 203

crate Docs Build Status Apache2/MIT licensed Rust Version

FIPS 203 (Rascunho Público Inicial) Padrão de Mecanismo de Encapsulamento de Chave Baseado em Reticulados Modulares escrito em Rust puro para aplicações de servidor, desktop, navegador e embarcadas. O repositório de origem inclui exemplos demonstrando benchmarks, um alvo embarcado, medições estatísticas de tempo constante, fuzzing, execução WASM, FFI em C e bindings Python.

Este crate implementa o padrão rascunho do FIPS 203 em Rust puro com dependências mínimas e convencionais, e sem nenhum código inseguro. Todos os três conjuntos de parâmetros de segurança são totalmente suportados e testados. A implementação opera em tempo constante (exceto rho, que faz parte da chave de encapsulamento enviada através da fronteira de confiança em claro), não requer a biblioteca padrão, por exemplo #[no_std], não possui alocações no heap, por exemplo, não precisa de alloc, e opcionalmente expõe a RNG, tornando-a adequada para toda a gama de aplicações até bare-metal. A API está estabilizada e o código é fortemente voltado para segurança e correção; otimizações de desempenho adicionais serão implementadas à medida que o padrão amadurecer. Este crate seguirá rapidamente quaisquer mudanças no FIPS 203 assim que estiverem disponíveis.

Consulte https://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.203.ipd.pdf para uma descrição completa da funcionalidade alvo.

A funcionalidade é extremamente simples de usar, como demonstrado pelo exemplo a seguir.

root@kitploit:~
// Use the desired target parameter set.
use fips203::ml_kem_512; // Could also be ml_kem_768 or ml_kem_1024. 
use fips203::traits::{Decaps, Encaps, KeyGen, SerDes};

// Alice runs `try_keygen()` and then serializes the encaps key `ek` for Bob (to bytes).
let (alice_ek, alice_dk) = ml_kem_512::KG::try_keygen().unwrap();
let alice_ek_bytes = alice_ek.into_bytes();

// Alice sends the encaps key `ek_bytes` to Bob.
let bob_ek_bytes = alice_ek_bytes;

// Bob deserializes the encaps `ek_bytes` and then runs `encaps() to get the shared 
// secret `ssk` and ciphertext `ct`. He serializes the ciphertext `ct` for Alice (to bytes).
let bob_ek = ml_kem_512::EncapsKey::try_from_bytes(bob_ek_bytes).unwrap();
let (bob_ssk_bytes, bob_ct) = bob_ek.try_encaps().unwrap();
let bob_ct_bytes = bob_ct.into_bytes();

// Bob sends the ciphertext `ct_bytes` to Alice
let alice_ct_bytes = bob_ct_bytes;

// Alice deserializes the ciphertext `ct` and runs `decaps()` with her decaps key
let alice_ct = ml_kem_512::CipherText::try_from_bytes(alice_ct_bytes).unwrap();
let alice_ssk_bytes = alice_dk.try_decaps(&alice_ct).unwrap();

// Alice and Bob will now have the same secret key
assert_eq!(bob_ssk_bytes, alice_ssk_bytes);

A Documentação em Rust está disponível em cada Módulo correspondente ao parâmetro de segurança desejado abaixo.

Notas

  • Este crate é totalmente funcional e corresponde ao primeiro rascunho público inicial do FIPS 203.
  • A operação em tempo constante visa apenas o nível de código-fonte no MSRV, com confirmação por meio de revisão/inspeção manual, do alvo embarcado e dos testes dinâmicos dudect.
  • Observe que o FIPS 203 impõe requisitos específicos sobre aleatoriedade conforme a seção 3.3, daí a RNG exposta.
  • Requer Rust 1.70 ou superior. A versão mínima suportada do Rust (MSRV) pode ser alterada no futuro, mas isso será feito com um aumento de versão menor (quando a versão principal for maior que 0).
  • Todos os recursos ativados por padrão desta biblioteca são cobertos pelo SemVer.
  • O padrão de rascunho FIPS 203 e este software são experimentais -- USE POR SUA CONTA E RISCO!

Licença

O conteúdo é licenciado sob a Licença Apache Versão 2.0 ou a licença MIT à sua escolha.

Contribuição

Salvo indicação explícita em contrário, qualquer contribuição intencionalmente submetida para inclusão no trabalho por você, conforme definido na licença Apache-2.0, será licenciada duplamente como acima, sem quaisquer termos ou condições adicionais.

Baixar ferramenta