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
alaniz-cipher — Criptografia a partir de Morfismos de Feixes Não Lineares sobre Grafos | Kitploit
Ferramentas/GitHubGitHub/quantusync/alaniz-cipher
Análise EstáticaFerramentas de Criptografia/DescriptografiaCriptografiaPapers e PesquisaAprendizado e Educação
GitHubquantusync/alaniz-cipher

alaniz-cipher

Criptografia a partir de Morfismos de Feixes Não Lineares sobre Grafos

Ver Repositório
51há 3 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

A Cifra Alaniz (v3)

Criptografia Pós-Quântica Baseada em Feixes via Permutações de Corpo Finito com Valores Vetoriais

Uma primitiva criptográfica baseada no Problema de Inversão de Morfismo de Feixe Não Linear (NL-SMIP): um sistema polinomial com coeficientes secretos acoplados por cohomologia de feixes sobre grafos.

Artigo (v3): L. Alaniz Pintos, "A Cifra Alaniz v3: Criptografia Pós-Quântica Baseada em Feixes via Permutações de Corpo Finito com Valores Vetoriais", 2026.

O que mudou na v3

A versão 2 introduziu σ_SPN para derrotar o ataque de escalonamento que quebrou a v1. No entanto, a v2 é, por si só, quebrada por um ataque mais geral que combina interpolação polinomial com computação de base de Gröbner: qualquer criptografia determinística da forma c = As + Bσ(As) com σ de grau polinomial limitado permite um ataque de recuperação de chave CPA. Veja a Seção 3 do artigo e experiments/02_cpa_attack_analysis.py.

A versão 3 aborda isso no nível estrutural:

Característicav2v3
CriptografiaDeterminísticaProbabilística (nonce + PRG)
σSPN componente a componente sobre F_pCom valores vetoriais: π_e(x) = x^e em F_{p^d}
Chave secundáriaMatriz B_v ∈ GL(d, F_p)Escalar β_v ∈ F_{p^d}^*
DescriptografiaForça bruta sobre F_p^dFatoração univariada em F_{p^d}[τ]
Uniformidade diferencial de σδ ≥ 2p (~34 para p=17)δ ∈ {2, 4} (APN ou quase-APN)
Alvo IND-CCANão aplicávelAlcançado via transformação FO

14 configurações de semi-regularidade testadas, 14 correspondem exatamente às previsões de Hilbert-Poincaré. Nenhuma vulnerabilidade MinRank pelo Teorema 6.5 (argumento centralizador). Nenhuma chave fraca detectada em 69 configurações.

Visão Geral

As mensagens são codificadas como seções globais de um feixe celular em um grafo com posto cíclico β_1 ≥ 1. Criptografia por nó:

root@kitploit:~
r_v = PRG(nonce, v)
u_v = ι(A_v · s_v + r_v)           ∈ F_{p^d}
w_v = β_v · u_v + (β_v − 1) · (L · u_v + 1)^e
c_v = ι^{-1}(w_v) − r_v

onde A_v ∈ GL(d, F_p), β_v ∈ F_{p^d}^*, e L ∈ F_{p^d}^* é público. A descriptografia se reduz a encontrar raízes de γ·τ^e + α·τ − (c′ + α) = 0 em F_{p^d}[τ] via Cantor-Zassenhaus, depois filtrando via consistência cohomológica em todos os n − 1 vértices não raiz.

Conjuntos de Parâmetros

| Conjunto | d | log₂ p | n | e | |sk| | |pk| | |c| | Segurança | |---|---|---|---|---|---|---|---|---|---| | Demonstração | 2 | 4 | 4 | 17 | 30 B | 10 B | 16 B | não segura | | Acadêmico | 3 | 16 | 8 | 17 | 0.3 KB | 30 B | 96 B | ~80 bits clássico | | PQ-128 | 6 | 61 | 32 | 17 | 16 KB | 64 B | 1.5 KB | ≥128 pós-Grover | | PQ-256 | 8 | 127 | 64 | 17 | 170 KB | 128 B | 8 KB | ≥256 pós-Grover |

Início Rápido

root@kitploit:~
git clone https://github.com/QuantuSync/alaniz-cipher.git
cd alaniz-cipher
pip install -e .[test]

# Run the v2 demo (historical)
python -m alaniz.demo.demo_basic

# Run all tests
pytest tests/ -v

# Run v3 verification experiments
python experiments/07_semi_regularity.py
python experiments/08_weak_keys.py
python experiments/09_nonce_robustness.py
python experiments/10_centralizer.py
python experiments/11_kem_verification.py

Exemplo mínimo da v3

root@kitploit:~
from alaniz.core.field import FiniteField
from alaniz.core.graph import Graph
from alaniz.core.sheaf import Sheaf
from alaniz.crypto.protocol import ProtocolV3, PublicParamsV3
from alaniz.crypto.kem import KEM

Fp = FiniteField(17)
graph = Graph.cycle(4)
sheaf = Sheaf.random_with_cohomology(graph, dv=2, Fp=Fp)
proto = ProtocolV3(PublicParamsV3.generate(sheaf))
kem   = KEM(proto)

sk       = kem.keygen()
K, ct    = kem.encaps(sk)     # sender: random message + shared key
K_recv   = kem.decaps(sk, ct) # receiver: same K if valid
assert K == K_recv

Estrutura do Projeto

root@kitploit:~
alaniz-cipher/
├── alaniz/
│   ├── core/
│   │   ├── field.py        # Aritmética F_p (v2, ainda usado pela v1/v2)
│   │   ├── field_ext.py    # Aritmética F_{p^d} via galois (v3)
│   │   ├── graph.py        # Topologias de grafo (árvores, ciclos, etc.)
│   │   └── sheaf.py        # Feixes celulares + restrições de cohomologia
│   ├── crypto/
│   │   ├── sigma.py        # Mapas σ: monomial_power (v3), id_spn (v2), cube/inverse (v1)
│   │   ├── protocol.py     # Protocolo (v2), ProtocolV3 (v3)
│   │   ├── prg.py          # PRG SHAKE-256 para derivação de nonce (v3)
│   │   └── kem.py          # Fujisaki-Okamoto → KEM IND-CCA (v3)
│   └── demo/
│       └── demo_basic.py   # demonstração v2 (histórica)
├── experiments/
│   ├── 01-06_*.py          # análises v1 (históricas, Apêndice do artigo v2)
│   ├── 14_v2_redteam.py    # teste de penetração v2 (histórico)
│   ├── 07_semi_regularity.py    # v3: verificação de Hilbert-Poincaré
│   ├── 08_weak_keys.py          # v3: varredura de chave fraca com 69 configurações
│   ├── 09_nonce_robustness.py   # v3: Teorema 6.7
│   ├── 10_centralizer.py        # v3: Teorema 6.5
│   └── 11_kem_verification.py   # v3: testes empíricos de KEM IND-CCA
├── tests/
│   ├── test_protocol.py      # testes v2 (mantidos para regressão)
│   └── test_protocol_v3.py   # testes v3
├── pyproject.toml
└── README.md

v1 e v2: Status Histórico

v1: Quebrada pelo ataque de escalonamento de Langa em σ_cube(λy) = λ³ σ_cube(y) (Alaniz 2026, Apêndice A do artigo v3). Recuperação em O(d) consultas.

v2: Quebrada por ataque de interpolação polinomial + Gröbner contra qualquer c = As + Bσ(As) determinística com σ de grau limitado. Para d=2, p=17, recuperação completa da chave em 20 consultas CPA e ~5,7s de computação SymPy em 10/10 instâncias aleatórias. Veja experiments/02_cpa_attack_analysis.py e Seção 3 do artigo.

As classes v1 e v2 permanecem acessíveis neste repositório para reprodutibilidade histórica. Para qualquer novo uso, use ProtocolV3.

Citação

root@kitploit:~
@misc{alaniz2026cipherv3,
  author  = {Alaniz Pintos, Lucas},
  title   = {The Alaniz Cipher v3: Sheaf-Based Post-Quantum Encryption
             via Vector-Valued Finite Field Permutations},
  year    = {2026},
  url     = {https://github.com/QuantuSync/alaniz-cipher}
}

Agradecimentos

A. Rodríguez Langa (INECO) pela criptoanálise da v1 que motivou o caminho de redesenho levando à v2 e, finalmente, à v3.

Autor

Lucas Alaniz Pintos Divisão de Produtos Inteligentes, INECO [email protected] ORCID: 0009-0008-5179-2534

Licença

MIT

Baixar ferramenta