crypto.pod 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. =pod
  2. =head1 NAME
  3. crypto - OpenSSL cryptographic library
  4. =head1 SYNOPSIS
  5. =head1 DESCRIPTION
  6. The OpenSSL B<crypto> library implements a wide range of cryptographic
  7. algorithms used in various Internet standards. The services provided
  8. by this library are used by the OpenSSL implementations of SSL, TLS
  9. and S/MIME, and they have also been used to implement SSH, OpenPGP, and
  10. other cryptographic standards.
  11. =head1 OVERVIEW
  12. B<libcrypto> consists of a number of sub-libraries that implement the
  13. individual algorithms.
  14. The functionality includes symmetric encryption, public key
  15. cryptography and key agreement, certificate handling, cryptographic
  16. hash functions and a cryptographic pseudo-random number generator.
  17. =over 4
  18. =item SYMMETRIC CIPHERS
  19. L<blowfish(3)|blowfish(3)>, L<cast(3)|cast(3)>, L<des(3)|des(3)>,
  20. L<idea(3)|idea(3)>, L<rc2(3)|rc2(3)>, L<rc4(3)|rc4(3)>, L<rc5(3)|rc5(3)>
  21. =item PUBLIC KEY CRYPTOGRAPHY AND KEY AGREEMENT
  22. L<dsa(3)|dsa(3)>, L<dh(3)|dh(3)>, L<rsa(3)|rsa(3)>
  23. =item CERTIFICATES
  24. L<x509(3)|x509(3)>, L<x509v3(3)|x509v3(3)>
  25. =item AUTHENTICATION CODES, HASH FUNCTIONS
  26. L<hmac(3)|hmac(3)>, L<md2(3)|md2(3)>, L<md4(3)|md4(3)>,
  27. L<md5(3)|md5(3)>, L<mdc2(3)|mdc2(3)>, L<ripemd(3)|ripemd(3)>,
  28. L<sha(3)|sha(3)>
  29. =item AUXILIARY FUNCTIONS
  30. L<err(3)|err(3)>, L<threads(3)|threads(3)>, L<rand(3)|rand(3)>,
  31. L<OPENSSL_VERSION_NUMBER(3)|OPENSSL_VERSION_NUMBER(3)>
  32. =item INPUT/OUTPUT, DATA ENCODING
  33. L<asn1(3)|asn1(3)>, L<bio(3)|bio(3)>, L<evp(3)|evp(3)>, L<pem(3)|pem(3)>,
  34. L<pkcs7(3)|pkcs7(3)>, L<pkcs12(3)|pkcs12(3)>
  35. =item INTERNAL FUNCTIONS
  36. L<bn(3)|bn(3)>, L<buffer(3)|buffer(3)>, L<lhash(3)|lhash(3)>,
  37. L<objects(3)|objects(3)>, L<stack(3)|stack(3)>,
  38. L<txt_db(3)|txt_db(3)>
  39. =back
  40. =head1 NOTES
  41. Some of the newer functions follow a naming convention using the numbers
  42. B<0> and B<1>. For example the functions:
  43. int X509_CRL_add0_revoked(X509_CRL *crl, X509_REVOKED *rev);
  44. int X509_add1_trust_object(X509 *x, ASN1_OBJECT *obj);
  45. The B<0> version uses the supplied structure pointer directly
  46. in the parent and it will be freed up when the parent is freed.
  47. In the above example B<crl> would be freed but B<rev> would not.
  48. The B<1> function uses a copy of the supplied structure pointer
  49. (or in some cases increases its link count) in the parent and
  50. so both (B<x> and B<obj> above) should be freed up.
  51. =head1 SEE ALSO
  52. L<openssl(1)|openssl(1)>, L<ssl(3)|ssl(3)>
  53. =cut