Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Concryptor — Un motor de cifrado de archivos de múltiples hilos y gigabytes por segundo. Logra un rendimiento extremo mediante un pipeline io_uring de triple búfer sin bloqueos, fragmentación paralela con Rayon y AEADs acelerados por hardware (AES-256-GCM / ChaCha20). | Kitploit
Herramientas/GitHubGitHub/frogsnot/concryptor
Utilidades de Propósito GeneralHerramientas de Cifrado/DescifradoRecuperación de DatosCriptografíaUtilidades y Frameworks
GitHubfrogsnot/concryptor

Concryptor

Un motor de cifrado de archivos de múltiples hilos y gigabytes por segundo. Logra un rendimiento extremo mediante un pipeline io_uring de triple búfer sin bloqueos, fragmentación paralela con Rayon y AEADs acelerados por hardware (AES-256-GCM / ChaCha20).

Ver Repositorio
74315hace 2 mesesRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Concryptor

Crates.io License: AGPL v3

Un motor de cifrado AEAD multi-hilo escrito en Rust. Cifra y descifra archivos a un rendimiento de gigabytes por segundo utilizando un pipeline de io_uring con triple búfer, procesamiento paralelo de fragmentos mediante Rayon y cifrados optimizados en ensamblador a través de ring.

⚠️ AVISO: SOFTWARE EXPERIMENTAL ⚠️

Este proyecto es extremadamente nuevo y actualmente NO se recomienda para uso en producción o en entornos críticos. Si bien los primitivos criptográficos (AES-256-GCM, ChaCha20-Poly1305 mediante ring) y el diseño del formato son sólidos, el código base no ha pasado por auditorías de seguridad formales ni pruebas exhaustivas en el mundo real. Úselo bajo su propio riesgo. Para proteger datos sensibles, considere usar herramientas probadas como GnuPG, age u OpenSSL hasta que este proyecto madure.

Características

  • Soporte de doble cifrado: AES-256-GCM (AES-NI en hardware) y ChaCha20-Poly1305 mediante ring (optimizado en ensamblador)
  • Cifrado paralelo: Procesamiento de fragmentos multi-hilo basado en Rayon en todos los núcleos de la CPU
  • Pipeline de io_uring con triple búfer: Superpone las E/S del kernel y las operaciones criptográficas de la CPU utilizando tres grupos de búferes rotativos — mientras las escrituras de un lote están en curso en el kernel, el siguiente lote está siendo cifrado por Rayon en la CPU, y las lecturas del tercer lote se están enviando al kernel. Sin sobrecarga de syscall por fragmento, sin limitaciones de mmap (sin SIGBUS, sin agotamiento del espacio de direcciones virtual)
  • Derivación de clave Argon2id: Estiramiento de contraseña de estándar industrial (por defecto 256 MiB de memoria, 3 iteraciones, configurable mediante --memory)
  • Parámetros KDF autodescriptivos: El costo de memoria, las iteraciones y el paralelismo se almacenan en la cabecera del archivo cifrado, por lo que el descifrado utiliza exactamente los parámetros elegidos en el momento del cifrado. Los archivos heredados (valor centinela todo ceros) se manejan de forma transparente con los valores predeterminados antiguos de 64 MiB
  • Nonces indexados por fragmento: La derivación de nonce mediante XOR al estilo TLS 1.3 previene ataques de reordenación de fragmentos
  • AAD autenticado por cabecera: La cabecera completa alineada a 4 KiB se incluye en el AAD de cada fragmento, autenticando todos los campos de la cabecera (núcleo, parámetros KDF y bytes reservados) y previniendo ataques de truncamiento, manipulación de campos de cabecera y contrabando en bytes reservados
  • Fragmento final al estilo STREAM: Un indicador de fragmento final en el AAD previene ataques de truncamiento y extensión (inspirado en la construcción STREAM)
  • Aleatoriedad fresca por archivo: Se generan una sal criptográficamente aleatoria de 16 bytes y un nonce base de 12 bytes para cada cifrado, almacenados en la cabecera
  • Cifrado in situ: seal_in_place_separate_tag / open_in_place mediante ring minimiza las asignaciones en el bucle principal
  • Zeroización de contraseñas: Las claves y contraseñas se borran de forma segura de la memoria después de su uso
  • O_DIRECT + formato alineado por sectores: Cabecera y ranuras de fragmentos alineadas a 4 KiB permiten E/S con O_DIRECT, evitando la caché de páginas del kernel para lecturas/escrituras a velocidad DMA en NVMe. Los grupos de búferes usan std::alloc con alineación de 4096 bytes
  • Cifrado de directorios: Cifre directorios completos como un único archivo cifrado. El empaquetado en tar conserva nombres de archivo, permisos, marcas de tiempo y estructura de directorios dentro del texto cifrado. La extracción valida contra ataques de path traversal y de escape de enlaces simbólicos
  • Formato de archivo autodescriptivo: La cabecera almacena el cifrado, tamaño de fragmento, tamaño original del archivo, sal, nonce base y parámetros KDF de Argon2id

Rendimiento

Benchmark con cargo bench (Criterion, 10 muestras por medición). La derivación de clave está excluida: los números reflejan solo el rendimiento criptográfico puro.

Hardware:

  • CPU: AMD Ryzen 5 5600X (6c/12t @ 3.7 GHz base)
  • RAM: 2x 8 GiB DDR4-2666 (doble canal, 16 GiB en total)
  • SO: Linux

Nota sobre E/S: Criterion escribe archivos temporales en /tmp, que en este sistema es tmpfs (respaldado por RAM). Con O_DIRECT, el kernel no puede usar DMA asíncrono real en tmpfs, por lo que estos números reflejan el rendimiento del cifrado + la sobrecarga de io_uring sin el beneficio de evitar DMA. En una unidad NVMe Gen4 real, O_DIRECT elimina el doble buffer de la caché de páginas y permite DMA directamente en los grupos de búferes alineados, lo que debería proporcionar un rendimiento significativamente mayor.

Tamaño de archivoCifrado AES-256-GCMCifrado ChaCha20Descifrado AES-256-GCMDescifrado ChaCha20
64 KiB244 MiB/s233 MiB/s233 MiB/s234 MiB/s
1 MiB1.08 GiB/s882 MiB/s1010 MiB/s876 MiB/s
16 MiB1.10 GiB/s923 MiB/s1.06 GiB/s988 MiB/s
64 MiB984 MiB/s935 MiB/s988 MiB/s973 MiB/s
256 MiB1.00 GiB/s1015 MiB/s1.01 GiB/s1.02 GiB/s

Barrido de tamaños de fragmento (AES-256-GCM, archivo de 64 MiB):

Tamaño de fragmentoRendimiento
64 KiB1.01 GiB/s
256 KiB1.05 GiB/s
1 MiB1.07 GiB/s
4 MiB988 MiB/s
8 MiB988 MiB/s
16 MiB1.00 GiB/s

Características de rendimiento

El motor utiliza ring (AES-NI / NEON / ARMv8-CE optimizado en ensamblador) para las operaciones de cifrado y un pipeline de io_uring con triple búfer para E/S. Tres grupos de búferes preasignados rotan a través del pipeline: mientras las escrituras del grupo A se completan en el kernel, el grupo B está siendo cifrado por Rayon en la CPU, y las lecturas del grupo C se están enviando al kernel. Esto superpone la latencia de E/S con el cómputo criptográfico.

Por qué AES-256-GCM es más rápido que ChaCha20-Poly1305 en archivos pequeños: El backend de AES-GCM de ring explota las instrucciones de hardware AES-NI + CLMUL disponibles en x86-64, lo que le otorga una ventaja de hardware sobre ChaCha20 (que es un cifrado por software). En tamaños más grandes, ambos cifrados convergen a ~1.0 GiB/s, lo que indica que el cuello de botella se desplaza del rendimiento del cifrado a la sobrecarga de envío de E/S.

Por qué el rendimiento máximo está en 1-16 MiB, no en 256 MiB: Los archivos pequeños (1-16 MiB) tienen pocos fragmentos, por lo que el paralelismo de Rayon es eficiente y el conjunto de trabajo cabe en la caché. En 64-256 MiB, el pipeline de io_uring está completamente activo (tres lotes en vuelo), pero la sobrecarga de envío por SQE y finalización por CQE escala con el número de fragmentos. El diseño de triple búfer asegura que E/S y cifrado se superpongan, ocultando parcialmente este costo.

Por qué ~1.0 GiB/s y no 10+ GiB/s: El AES-NI moderno puede alcanzar 2-4 GiB/s por núcleo. Con 12 hilos, el rendimiento bruto del cifrado podría exceder 10 GiB/s. Tres factores explican la brecha:

Descargar herramienta