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
perl-CryptX — Kit de herramientas criptográficas en Perl que proporciona cifrados simétricos, modos AEAD, funciones hash, MACs, criptografía de clave pública, derivación de claves y generación aleatoria segura a través de la biblioteca LibTomCrypt incluida. | Kitploit
Herramientas/GitHubGitHub/dcit/perl-cryptx
Descifrado de ContraseñasHerramientas de Cifrado/DescifradoAnálisis de HashCriptografíaUtilidades y FrameworksAutenticación
GitHubdcit/perl-cryptx

perl-CryptX

Kit de herramientas criptográficas en Perl que proporciona cifrados simétricos, modos AEAD, funciones hash, MACs, criptografía de clave pública, derivación de claves y generación aleatoria segura a través de la biblioteca LibTomCrypt incluida.

Ver Repositorio
412621hace 29 díasRevisado 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
Sitio web

NOMBRE

CryptX - Kit de herramientas criptográficas

SINOPSIS

CryptX es el punto de entrada de la distribución. En el código normal, cargue uno de los módulos concretos que se enumeran a continuación.

## one-shot hashing
use Crypt::Digest qw(digest_data_hex);
my $sha256 = digest_data_hex('SHA256', 'hello world');

## classic AES-CBC encryption with padding
use Crypt::Mode::CBC;
my $cbc = Crypt::Mode::CBC->new('AES');
my $iv = random_bytes(16); # 16-byte AES block-size IV
my $cbc_ciphertext = $cbc->encrypt('hello world', $key, $iv);

## authenticated encryption (AEAD) with AES
use Crypt::AuthEnc::GCM qw(gcm_encrypt_authenticate);
my $key = random_bytes(32);   # 32-byte AES-256 key
my $nonce = random_bytes(12); # 12-byte unique nonce
my ($ciphertext, $tag) = gcm_encrypt_authenticate('AES', $key, $nonce, 'header', 'hello world');

## message authentication
use Crypt::Mac::HMAC qw(hmac_hex);
my $mac = hmac_hex('SHA256', $key, 'hello world');

## secure random data + UUID helpers
use Crypt::PRNG qw(random_bytes random_string);
use Crypt::Misc qw(random_v4uuid random_v7uuid);
my $salt = random_bytes(16);
my $token = random_string(24);
my $uuid4 = random_v4uuid();
my $uuid7 = random_v7uuid();

## classic password-based key derivation
use Crypt::KeyDerivation qw(pbkdf2);
my $dk = pbkdf2('password', $salt, 100_000, 'SHA256', 32);

## bare stream cipher (authenticate separately)
use Crypt::Stream::ChaCha;
my $stream = Crypt::Stream::ChaCha->new($key, $nonce);
my $stream_ciphertext = $stream->crypt('hello world');

## modern signatures
use Crypt::PK::Ed25519;
my $signer = Crypt::PK::Ed25519->new->generate_key;
my $sig = $signer->sign_message('hello world');
my $ok = $signer->verify_message($sig, 'hello world');

## key agreement
use Crypt::PK::X25519;
my $alice = Crypt::PK::X25519->new->generate_key;
my $bob = Crypt::PK::X25519->new->generate_key;
my $shared_secret = $alice->shared_secret($bob);

DESCRIPCIÓN

Módulos criptográficos Perl construidos sobre la librería LibTomCrypt incluida. La distribución también incluye Math::BigInt::LTM, un backend de Math::BigInt construido sobre la librería LibTomMath incluida, utilizada internamente por LibTomCrypt.

Este módulo sirve principalmente como página de nivel superior de la distribución/documentación. Para el trabajo real, use uno de los módulos concretos que se enumeran a continuación.

Guía de selección de algoritmos

Cifrado autenticado (AEAD)

Para diseños nuevos, prefiera el cifrado autenticado (AEAD) sobre los modos de cifrado simples:

  • ChaCha20-Poly1305 (Crypt::AuthEnc::ChaCha20Poly1305) - Rápido, de tiempo constante, ampliamente desplegado (TLS 1.3, WireGuard, SSH). Úselo como la opción AEAD por defecto.
  • XChaCha20-Poly1305 (Crypt::AuthEnc::XChaCha20Poly1305) - Variante de nonce extendido de 24 bytes. Prefiérala sobre ChaCha20-Poly1305 cuando los nonces se generen aleatoriamente.
  • AES-GCM (Crypt::AuthEnc::GCM) - El modo AEAD estándar para AES. Acelerado por hardware en CPUs modernas. Requiere nonces únicos; reutilizar un nonce rompe la seguridad por completo.
  • AES-SIV (Crypt::AuthEnc::SIV) - AEAD determinista, resistente al mal uso del nonce. Algo más lento, pero más seguro cuando no se puede garantizar la unicidad del nonce.
  • AES-GCM-SIV (Crypt::AuthEnc::GCMSIV) - AEAD resistente al mal uso del nonce (RFC 8452). Más rápido que AES-SIV; elija esta opción cuando necesite un rendimiento similar a GCM con seguridad frente a la reutilización de nonces.
  • AES-OCB (Crypt::AuthEnc::OCB) - AEAD de una sola pasada muy rápido. Verifique el estado de las patentes en su jurisdicción.
  • AES-EAX (Crypt::AuthEnc::EAX) - AEAD de dos pasadas basado en CTR+OMAC. Sin patentes, sin restricciones de longitud de nonce.
  • AES-CCM (Crypt::AuthEnc::CCM) - Utilizado en WiFi (WPA2) y Bluetooth. Requiere conocer la longitud del texto plano de antemano.

Aleatoriedad criptográficamente segura y UUIDs

  • Bytes / cadenas aleatorios (Crypt::PRNG) - Úselo para sales, claves, nonces, tokens y cualquier otro valor aleatorio secreto. Los asistentes funcionales random_bytes, random_bytes_hex, random_bytes_b64, random_bytes_b64u, random_string y random_string_from cubren la mayoría de los casos de uso. La API orientada a objetos y los envoltorios específicos de algoritmo (Crypt::PRNG::ChaCha20, Crypt::PRNG::Fortuna, etc.) se usan principalmente para flujos deterministas o interoperabilidad con un PRNG concreto.
  • UUIDs ("random_v4uuid" en Crypt::Misc, "random_v7uuid" en Crypt::Misc) - Use random_v4uuid para identificadores aleatorios opacos. Use random_v7uuid cuando desee identificadores aproximadamente ordenados por tiempo que se ordenen por hora de creación con granularidad de milisegundos. Los UUID son identificadores, no sustituyen a los bytes aleatorios secretos.

Cifrados de flujo

Los cifrados de flujo encriptan los datos byte a byte sin relleno de bloque. Para la mayoría de las aplicaciones, prefiera un modo AEAD (ver arriba) que combine el cifrado con la autenticación. Use cifrados de flujo simples únicamente cuando maneje la autenticación por separado.

  • ChaCha (Crypt::Stream::ChaCha) - La opción de cifrado de flujo por defecto. El mismo núcleo que ChaCha20-Poly1305 sin el MAC integrado.
  • XChaCha (Crypt::Stream::XChaCha) - Variante de nonce extendido de 24 bytes de ChaCha. Prefiérala cuando los nonces se generen aleatoriamente.
  • Salsa20 / XSalsa20 (Crypt::Stream::Salsa20, Crypt::Stream::XSalsa20) - Predecesor de ChaCha. Prefiera ChaCha para diseños nuevos; Salsa20 solo para interoperabilidad (p. ej. NaCl/libsodium).
  • RC4 (Crypt::Stream::RC4) - Roto; no lo use para diseños nuevos. Se proporciona únicamente para interoperabilidad heredada.
  • Rabbit, Sober128, Sosemanuk (Crypt::Stream::Rabbit, Crypt::Stream::Sober128, Crypt::Stream::Sosemanuk) - Cifrados de nicho del portafolio eSTREAM. Use ChaCha a menos que un protocolo específico requiera uno de estos.

Modos de cifrado por bloques (sin autenticación)

Use estos modos únicamente cuando la autenticación se maneje por separado o no sea necesaria:

Descargar herramienta