OpenSSL é um kit de ferramentas de código aberto robusto, de nível comercial e completo para os protocolos TLS (anteriormente SSL), DTLS e QUIC (atualmente apenas no lado do cliente).
As implementações do protocolo são baseadas em uma biblioteca criptográfica de uso geral completa, que também pode ser usada de forma independente. Também está incluído um módulo criptográfico validado para estar em conformidade com os padrões FIPS.
OpenSSL é descendente da biblioteca SSLeay desenvolvida por Eric A. Young e Tim J. Hudson.
A página inicial oficial do Projeto OpenSSL é www.openssl.org.
Visão geral
Download
Construir e instalar
Documentação
Licença
Apoiar
Contribuindo
Legalidades
O kit de ferramentas OpenSSL inclui:
libssl uma implementação de todas as versões do protocolo TLS até TLSv1.3 (RFC 8446), versões do protocolo DTLS até DTLSv1.2 (RFC 6347) e o protocolo QUIC (atualmente apenas no lado do cliente) versão 1 (RFC 9000).
libcrypto uma biblioteca criptográfica de uso geral completa. Constitui a base da implementação do TLS, mas também pode ser usado de forma independente.
openssl a ferramenta de linha de comando OpenSSL, um canivete suíço para tarefas criptográficas, testes e análises. Pode ser usado para
criação de parâmetros-chave
criação de certificados X.509, CSRs e CRLs
cálculo de resumos de mensagens
criptografia e descriptografia
SSL/TLS/DTLS e testes de cliente e servidor
Testes de cliente QUIC
manipulação de e-mail assinado ou criptografado S/MIME
e mais...
Os tarballs do código-fonte dos lançamentos oficiais podem ser baixados em www.openssl.org/source. O projeto OpenSSL não distribui o kit de ferramentas em formato binário.
No entanto, para uma grande variedade de sistemas operacionais, versões pré-compiladas do kit de ferramentas OpenSSL estão disponíveis. Em particular, no Linux e em outros sistemas operacionais Unix, normalmente é recomendado vincular-se às bibliotecas compartilhadas pré-compiladas fornecidas pelo distribuidor ou fornecedor.
Também mantemos uma lista de terceiros que produzem binários OpenSSL para vários sistemas operacionais (incluindo Windows) na página Binários em nosso wiki.
Embora o teste e o desenvolvimento também possam, em teoria, ser feitos usando os tarballs de origem, ter uma cópia local do repositório git com todo o histórico do projeto oferece muito mais informações sobre a base de código.
O repositório OpenSSL Git oficial está localizado em git.openssl.org. Há um espelho GitHub do repositório em github.com/openssl/openssl, que é atualizado automaticamente a partir do primeiro em cada commit.
Uma cópia local do repositório Git pode ser obtida clonando-o do repositório OpenSSL original usando
git clone git://git.openssl.org/openssl.git
ou do espelho do GitHub usando
git clone https://github.com/openssl/openssl.git
Se você pretende contribuir com o OpenSSL, seja para corrigir bugs ou contribuir com novos recursos, você precisa fazer um fork do repositório OpenSSL openssl/openssl no GitHub e clonar seu fork público.
git clone https://github.com/yourname/openssl.git
Isso é necessário porque todo o desenvolvimento do OpenSSL hoje em dia é feito por meio de pull requests do GitHub. Para obter mais detalhes, consulte Contribuindo.
Depois de obter o código-fonte, dê uma olhada no arquivo INSTALL para obter instruções detalhadas sobre como construir e instalar o OpenSSL. Para algumas plataformas, as instruções de instalação são alteradas por um documento específico da plataforma.
Notas para plataformas semelhantes a UNIX
Notas para plataformas Android
Notas para plataformas Windows
Notas para a plataforma DOS com DJGPP
Notas para a plataforma OpenVMS
Notas sobre Perl
Notas sobre Valgrind
Notas específicas sobre a atualização para OpenSSL 3.x de versões anteriores podem ser encontradas na página de manual ossl-guide-migration(7ossl).
Existem alguns arquivos README.md no nível superior da distribuição fonte contendo informações adicionais sobre tópicos específicos.
Informações sobre a implementação do protocolo OpenSSL QUIC
Informações sobre a arquitetura do provedor OpenSSL
Informações sobre como usar o módulo validado OpenSSL FIPS
Informações sobre a arquitetura legada do OpenSSL Engine
Existem alguns tutoriais e páginas introdutórias sobre alguns tópicos importantes do OpenSSL no Guia OpenSSL.
As páginas de manual do branch master e todas as versões estáveis atuais estão disponíveis online.
Mestre OpenSSL
OpenSSL 3.0
OpenSSL 3.1
OpenSSL 3.2
Existem inúmeras demonstrações de código-fonte para usar vários recursos OpenSSL na subpasta demos.
Existe um Wiki em wiki.openssl.org que atualmente não está muito ativo. Ele contém muitas informações úteis, nem todas atualizadas.
OpenSSL é licenciado sob a Licença Apache 2.0, o que significa que você é livre para obtê-lo e usá-lo para fins comerciais e não comerciais, desde que cumpra suas condições.
Consulte o arquivo LICENSE.txt para obter mais detalhes.
Existem várias maneiras de entrar em contato. O canal correto depende da sua necessidade. Consulte o arquivo SUPPORT para obter mais detalhes.
Se você estiver interessado e disposto a contribuir com o projeto OpenSSL, dê uma olhada no arquivo CONTRIBUTING.
Várias nações restringem o uso ou exportação de criptografia. Se você estiver potencialmente sujeito a tais restrições, procure aconselhamento jurídico antes de tentar desenvolver ou distribuir código criptográfico.
Copyright (c) 1998-2024 Os autores do projeto OpenSSL
Direitos autorais (c) 1995-1998 Eric A. Young, Tim J. Hudson
Todos os direitos reservados.