A Python tool for calculating RSA and RSA-CRT cryptographic parameters and generating OpenSSL-compatible keys.
rsatool is a Python command-line utility for calculating RSA cryptographic parameters and generating OpenSSL-compatible private keys. It solves the problem of manually computing RSA values by automating the process of deriving all necessary parameters from either two primes or from modulus and private exponent inputs.
Security researchers, cryptography developers, and system administrators who need to generate RSA keys or work with RSA parameters in cryptographic implementations.
Developers choose rsatool for its simplicity and specificity—it does one thing well without the overhead of larger cryptographic libraries, and it produces keys that are immediately compatible with OpenSSL and other standard tools.
rsatool can be used to calculate RSA and RSA-CRT parameters
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Calculates all RSA and RSA-CRT values from primes or modulus/exponent pairs, as demonstrated in the README examples for deriving p, q, n, d, e, dP, dQ, and qInv.
Generates DER or PEM encoded private keys that work seamlessly with OpenSSL, ensuring easy integration into standard cryptographic workflows.
Accepts input as two primes or as modulus and private exponent, providing versatility for different key derivation scenarios, as shown in usage examples.
Command-line interface allows for automation in scripts, with simple commands for outputting keys to files in various formats.
Relies on Python packages like pyasn1 and gmpy2, which can complicate installation and maintenance, especially in restricted environments.
Focuses solely on RSA parameter calculation and key generation, lacking features for other algorithms, key management, or security validations.
Does not verify input prime validity or key security, placing the onus on users to ensure correct and secure parameters, which could lead to errors.