P5-crypt-rsa

Jul 20, 2023

RSA public-key cryptosystem

CryptRSA is a pure-perl, cleanroom implementation of the RSA public-key cryptosystem. It uses MathPari3, a perl interface to the blazingly fast PARI library, for big integer arithmetic and number theoretic computations.

CryptRSA provides arbitrary size key-pair generation, plaintext-aware encryption OAEP and digital signatures with appendix PSS. For compatibility with SSLv3, RSAREF2, PGP and other applications that follow the PKCS #1 v1.5 standard, it also provides PKCS #1 v1.5 encryption and signatures.

CryptRSA is structured as bundle of modules that encapsulate different parts of the RSA cryptosystem. The RSA algorithm is implemented in CryptRSAPrimitives3. Encryption schemes, located under CryptRSAES, and signature schemes, located under CryptRSASS, use the RSA algorithm to build encryption/signature schemes that employ secure padding. See the note on Security of Padding Schemes.

The key generation engine and other functions that work on both components of the key-pair are encapsulated in CryptRSAKey3. CryptRSAKeyPublic3 & CryptRSAKeyPrivate3 provide mechanisms for storage & retrival of keys from disk, decoding & encoding of keys in certain formats, and secure representation of keys in memory. Finally, the CryptRSA module provides a convenient, DWIM wrapper around the rest of the modules in the bundle.



Checkout these related ports:
  • Zzuf - Transparent application input fuzzer
  • Zlint - X.509 certificate linter
  • Zeronet - Decentralized websites using Bitcoin crypto and BitTorrent network
  • Zenmap - GUI frontend for the Nmap scanning utility
  • Zeek - System for detecting network intruders in real-time
  • Zaproxy - The OWASP zed attack proxy
  • Yubioath-desktop - GUI for displaying OATH codes with a Yubikey
  • Yubikey-personalization-gui - Graphical YubiKey personalization tool
  • Yubikey-manager-qt - Cross-platform application for configuring any YubiKey
  • Yubikey-agent - Seamless ssh-agent for YubiKeys
  • Yubico-piv-tool - Yubico PIV tool
  • Ylva - Command line password manager and file encryption program
  • Ykpers - Library and tool for personalization of Yubico's YubiKey
  • Ykclient - Yubico C client library
  • Yersinia - Layer 2 vulnerability scanner (switches, spanning tree, 802.1q ...)