TLS/SSL and crypto library https://www.openssl.org

Roelof duToit d4d9864411 Update PR#3925 6 years ago
.github 92e2ed5689 Remind people to have 'Fixes #XXXX' in the commit message 7 years ago
Configurations b3e5db40ec VMS: Make sure to include MAIN from static libraries if needed 7 years ago
VMS 3abcc4ac91 VMS: Don't force symbol mixed case when building DSOs 7 years ago
apps d4d9864411 Update PR#3925 6 years ago
boringssl @ 2070f8ad91 4b5f7e7555 Update ossl_config.json for later BoringSSL commit 7 years ago
crypto f0ef20bf38 Added support for ESSCertIDv2 7 years ago
demos 2f0ca54c32 Remove some obsolete/obscure internal define switches: 7 years ago
doc 47f7cf051b Update the documentation for "Groups" and "Curves" 7 years ago
engines a68d35057b check length sanity before correcting in EVP_CTRL_AEAD_TLS1_AAD 7 years ago
external ac3d0e1377 Copyright consolidation; .pm and Configure 8 years ago
fuzz b12ae4a912 fuzz/{client,server}.c: omit _time64 "overload method". 7 years ago
include 2698bbfec6 Add an SSL_ prefix to SERVERINFOV2 and SERVERINFOV1 7 years ago
krb5 @ b9ad6c4950 0fef74486e [extended tests] Enable krb5 tests in Travis 7 years ago
ms f219a1b048 Revert "RT4526: Call TerminateProcess, not ExitProcess" 7 years ago
os-dep 6c4be50a5d Move Haiku configuration to separate config file to denote 8 years ago
pyca-cryptography @ 6c5a519f9b 5cc9776191 Update the pyca-cryptography submodule to version 1.8.1 7 years ago
ssl 96c9aee2a8 Limit padded record to max plaintext 7 years ago
test c3a48c7b1d Add a test for CT in TLSv1.3 7 years ago
tools 7d959c358a Add -h and -help for c_rehash script and app 7 years ago
util 84c34ba876 Extend the SERVERINFO file format to include an extensions context 7 years ago
.gitattributes 1194ea8dc3 crypto/pkcs12: facilitate accessing data with non-interoperable password. 7 years ago
.gitignore 645c694d85 Ignore all .a files, not just the top ones 7 years ago
.gitmodules 0fef74486e [extended tests] Enable krb5 tests in Travis 7 years ago
.travis-create-release.sh c7f1fa8ec0 Remove the -n tar flag from osx dist creation 8 years ago
.travis.yml 0fef74486e [extended tests] Enable krb5 tests in Travis 7 years ago
ACKNOWLEDGEMENTS ab29c82a55 Refer to website for acknowledgements. 8 years ago
AUTHORS e0a651945c Copyright consolidation: perl files 8 years ago
CHANGES 11ba87f2ff Ensure s_client sends an SNI extension by default 7 years ago
CONTRIBUTING 663ece0faa Update the location of the pod files 7 years ago
Configure 96db26919d Remove duplicates from clang_devteam_warnings 7 years ago
FAQ 4f46473a86 Move FAQ to the web. 8 years ago
INSTALL 3556b83ea2 Make the TLSv1.3 downgrade mechanism a configurable option 7 years ago
LICENSE 6faa345632 Update year, wording tweak 7 years ago
Makefile.shared 43f9e0a08c Code health: Remove base address setting for mingw 7 years ago
NEWS d4da1bb5ab Update CHANGES and NEWS for new release 7 years ago
NOTES.DJGPP 07930a75a1 Slight cleanup of the collection of READMEs, INSTALLs and NOTES 8 years ago
NOTES.PERL 073b1b72f6 Tweaks to NOTES.PERL 7 years ago
NOTES.UNIX 45632ee3bb Add NOTES.UNIX, with a description on how to deal with runpaths 7 years ago
NOTES.VMS 69687aa829 More typo fixes 7 years ago
NOTES.WIN 3a80bd29be NOTES.WIN: mention Strawberry Perl as option. 7 years ago
README 12a7715e3d Fix typo (reported by Matthias St. Pierre) 7 years ago
README.ECC c5ee394b58 Add NSA sublicense info. 13 years ago
README.ENGINE 766579ec89 Remove Ubsec engine 8 years ago
README.FIPS 700b4a4ae7 Remove more (rest?) of FIPS build stuff. 8 years ago
appveyor.yml 3de47fb2c5 appveyor.yml: split {build,test}_scripts to avoid exit code masking. 7 years ago
build.info 8842005e75 Have the VMS shared library file names contain the shared version 7 years ago
config 41bee3e8fb Better way to recognise mingw64 in config script 7 years ago
config.com 2238119751 VMS: no ENDIF on one line IF statements, in config.com 7 years ago
e_os.h 5f5840139e e_os.h: drop now-redundant PRIu64 [and fix OSSLzu]. 7 years ago

README


OpenSSL 1.1.1-dev

Copyright (c) 1998-2016 The OpenSSL Project
Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson
All rights reserved.

DESCRIPTION
-----------

The OpenSSL Project is a collaborative effort to develop a robust,
commercial-grade, fully featured, and Open Source toolkit implementing the
Transport Layer Security (TLS) protocols (including SSLv3) as well as a
full-strength general purpose cryptographic library.

OpenSSL is descended from the SSLeay library developed by Eric A. Young
and Tim J. Hudson. The OpenSSL toolkit is licensed under a dual-license (the
OpenSSL license plus the SSLeay license), which means that you are free to
get and use it for commercial and non-commercial purposes as long as you
fulfill the conditions of both licenses.

OVERVIEW
--------

The OpenSSL toolkit includes:

libssl (with platform specific naming):
Provides the client and server-side implementations for SSLv3 and TLS.

libcrypto (with platform specific naming):
Provides general cryptographic and X.509 support needed by SSL/TLS but
not logically part of it.

openssl:
A command line tool that can be used for:
Creation of key parameters
Creation of X.509 certificates, CSRs and CRLs
Calculation of message digests
Encryption and decryption
SSL/TLS client and server tests
Handling of S/MIME signed or encrypted mail
And more...

INSTALLATION
------------

See the appropriate file:
INSTALL Linux, Unix, Windows, OpenVMS, ...
NOTES.* INSTALL addendums for different platforms

SUPPORT
-------

See the OpenSSL website www.openssl.org for details on how to obtain
commercial technical support. Free community support is available through the
openssl-users email list (see
https://www.openssl.org/community/mailinglists.html for further details).

If you have any problems with OpenSSL then please take the following steps
first:

- Download the latest version from the repository
to see if the problem has already been addressed
- Configure with no-asm
- Remove compiler optimisation flags

If you wish to report a bug then please include the following information
and create an issue on GitHub:

- OpenSSL version: output of 'openssl version -a'
- Any "Configure" options that you selected during compilation of the
library if applicable (see INSTALL)
- OS Name, Version, Hardware platform
- Compiler Details (name, version)
- Application Details (name, version)
- Problem Description (steps that will reproduce the problem, if known)
- Stack Traceback (if the application dumps core)

Just because something doesn't work the way you expect does not mean it
is necessarily a bug in OpenSSL. Use the openssl-users email list for this type
of query.

HOW TO CONTRIBUTE TO OpenSSL
----------------------------

See CONTRIBUTING

LEGALITIES
----------

A number of nations restrict the use or export of cryptography. If you
are potentially subject to such restrictions you should seek competent
professional legal advice before attempting to develop or distribute
cryptographic code.