Bindings to OpenSSL libssl and libcrypto, plus custom SSH key parsers. Supports RSA, DSA and EC curves P-256, P-384, P-521, and curve25519. Cryptographic signatures can either be created and verified manually or via x509 certificates. AES can be used in cbc, ctr or gcm mode for symmetric encryption; RSA for asymmetric (public key) encryption or EC for Diffie Hellman. High-level envelope functions combine RSA and AES for encrypting arbitrary sized data. Other utilities include key generators, hash functions (md5, sha1, sha256, etc), base64 encoder, a secure random number generator, and 'bignum' math methods for manually performing crypto calculations on large multibyte integers.
Dependencies Show recursive | ||
|---|---|---|
| ||
| ||
|
| Suggests |
|---|
Graph Navigation
- Pan: Click and drag the canvas
- Zoom: Hold ctrl + scroll wheel
- Reset view: Click "Fit View" button
Legend
Dependency Anatomy Guide
Understanding Dependency Borders
Dependencies are visually distinguished by their border styles to help you understand their relationship to the current package:
Direct Dependencies
Thick solid border: These are dependencies directly specified in the package's DESCRIPTION file (Depends, Imports, Enhances, or LinkingTo).
Recursive Dependencies
Thin solid border: These are dependencies of dependencies (recursive/indirect dependencies). They are initially hidden but can be toggled with the switch button.
Version Constraint Conflicts
Thick border + Info icon: When both direct and recursive dependencies exist for the same package with different version constraints. This indicates the "true" version constraint for the package, as the recursive dependency requires the more strict version constraint.
Understanding the Info Icon
The yellow info circle appears when there are version constraint conflicts between direct and recursive dependencies for the same package. This helps give a more accurate picture of the version constraints for the dependencies of a given package.