{"id":157,"date":"2026-06-19T21:04:01","date_gmt":"2026-06-19T21:04:01","guid":{"rendered":"https:\/\/shattered.io\/pt\/2026\/06\/19\/openssl-vs-libressl\/"},"modified":"2026-06-19T21:05:22","modified_gmt":"2026-06-19T21:05:22","slug":"openssl-vs-libressl","status":"publish","type":"post","link":"https:\/\/shattered.io\/pt\/2026\/06\/19\/openssl-vs-libressl\/","title":{"rendered":"OpenSSL vs LibreSSL: FIPS, QUIC e 28K req\/s [2026]"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Em junho de 2026, duas bibliotecas de c\u00f3digo aberto dividem o mercado das implementa\u00e7\u00f5es TLS em servidores Linux: o <strong>OpenSSL 4.0.1<\/strong> e o <strong>LibreSSL 4.3.2<\/strong>. A escolha entre elas pode definir se a sua infraestrutura suporta conformidade FIPS 140-2, liga\u00e7\u00f5es QUIC, algoritmos p\u00f3s-qu\u00e2nticos ou uma base de c\u00f3digo audit\u00e1vel com menor superf\u00edcie de ataque. O OpenSSL \u00e9 a biblioteca padr\u00e3o de facto na grande maioria das distribui\u00e7\u00f5es Linux, com 276 programadores ativos e mais de 5.000 patches integrados num per\u00edodo de tr\u00eas anos. O LibreSSL, criado pelo projeto OpenBSD em abril de 2014 como resposta direta \u00e0 vulnerabilidade Heartbleed, oferece uma base de c\u00f3digo mais pequena, uma API mais segura por design (a libtls) e um historial de CVEs de alta severidade significativamente mais curto. Ambas as bibliotecas s\u00e3o gratuitas, implementam TLS 1.3 e s\u00e3o mantidas por comunidades de c\u00f3digo aberto ativas. As diferen\u00e7as surgem quando se comparam funcionalidades avan\u00e7adas como QUIC, conformidade regulat\u00f3ria e compatibilidade de API. Este artigo cobre as especifica\u00e7\u00f5es t\u00e9cnicas completas, benchmarks de desempenho de fontes independentes, casos de uso reais, pr\u00f3s e contras, um guia de migra\u00e7\u00e3o e um veredicto claro com dados para ajudar programadores e administradores de sistemas a tomar a decis\u00e3o certa em 2026.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"o-que-e-o-openssl\">O Que \u00c9 o OpenSSL?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">O OpenSSL \u00e9 a implementa\u00e7\u00e3o de c\u00f3digo aberto mais utilizada no mundo do protocolo TLS (Transport Layer Security) e de um conjunto abrangente de primitivas criptogr\u00e1ficas. Lan\u00e7ado pela primeira vez em dezembro de 1998 por Eric A. Young e Tim Hudson como derivado da biblioteca SSLeay, o projeto cresceu para se tornar o alicerce criptogr\u00e1fico de praticamente toda a pilha de servidores Linux. O Apache HTTP Server, o Nginx, o curl, o Postfix, o Dovecot e centenas de outras aplica\u00e7\u00f5es dependem do OpenSSL por omiss\u00e3o nas distribui\u00e7\u00f5es Linux convencionais.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A vers\u00e3o <strong>4.0.1<\/strong>, lan\u00e7ada em 9 de junho de 2026, \u00e9 a mais recente da s\u00e9rie 4.0, com suporte ativo at\u00e9 14 de maio de 2027. A vers\u00e3o LTS mais recente \u00e9 a <strong>3.5.7<\/strong>, com suporte garantido at\u00e9 8 de abril de 2030, tornando-a a escolha mais conservadora e prudente para ambientes de produ\u00e7\u00e3o que pretendem estabilidade de longo prazo sem atualiza\u00e7\u00f5es frequentes. A s\u00e9rie 3.0, que foi LTS durante v\u00e1rios anos, encerra o suporte de seguran\u00e7a em 7 de setembro de 2026. A vers\u00e3o 4.0 introduziu a remo\u00e7\u00e3o de v\u00e1rios comportamentos depreciados e novos recursos criptogr\u00e1ficos e de protocolo, alguns incompat\u00edveis com vers\u00f5es anteriores, seguindo a estrat\u00e9gia adotada a partir da 3.5 de lan\u00e7amentos semestrais (abril e outubro) e uma nova vers\u00e3o LTS a cada dois anos.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A partir da vers\u00e3o 3.5 (abril de 2025), o OpenSSL adicionou suporte nativo a algoritmos p\u00f3s-qu\u00e2nticos padronizados pelo NIST, incluindo <strong>ML-KEM<\/strong> (encapsulamento de chaves, baseado em CRYSTALS-Kyber) e <strong>ML-DSA<\/strong> (assinaturas digitais, baseado em CRYSTALS-Dilithium). A mesma vers\u00e3o introduziu QUIC do lado do servidor, tornando o OpenSSL a escolha natural para infraestruturas que precisam de HTTP\/3. Em termos de conformidade regulat\u00f3ria, o OpenSSL mant\u00e9m um m\u00f3dulo FIPS 140-2 validado para a s\u00e9rie 3.x, um requisito cr\u00edtico para contratos governamentais nos EUA e para setores regulados como sa\u00fade e finan\u00e7as. O tarball da vers\u00e3o 4.0.1 tem 52,5 MB, reflexo de uma base de c\u00f3digo extensa que cobre centenas de algoritmos, interfaces de compatibilidade e extens\u00f5es de protocolo.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">O desenvolvimento do OpenSSL \u00e9 supervisionado pela <strong>OpenSSL Foundation<\/strong> e pela <strong>OpenSSL Corporation<\/strong>. A OpenSSL Corporation oferece suporte comercial pago, incluindo suporte estendido para vers\u00f5es como a 1.0.2 e 1.1.1 que j\u00e1 atingiram o fim de vida oficial. A dimens\u00e3o da equipa de desenvolvimento \u00e9 outro ponto de diferencia\u00e7\u00e3o significativo: no per\u00edodo entre o final de 2018 e o in\u00edcio de 2021, a equipa do OpenSSL integrou mais de <strong>5.000 patches de 276 programadores<\/strong>, um ritmo de desenvolvimento muito superior ao de qualquer alternativa de c\u00f3digo aberto no espa\u00e7o TLS. O Debian experimental j\u00e1 inclui o OpenSSL 4.0.1 e o Debian testing usa a vers\u00e3o 3.6.2, enquanto o Ubuntu alinha as suas vers\u00f5es LTS com as s\u00e9ries OpenSSL mais recentes.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"o-que-e-o-libressl\">O Que \u00c9 o LibreSSL?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">O LibreSSL \u00e9 um <em>fork<\/em> do OpenSSL criado pelo projeto OpenBSD em abril de 2014, imediatamente ap\u00f3s a divulga\u00e7\u00e3o da vulnerabilidade <strong>Heartbleed<\/strong> (CVE-2014-0160). A motiva\u00e7\u00e3o foi expl\u00edcita: o c\u00f3digo do OpenSSL tinha acumulado d\u00e9cadas de c\u00f3digo legado, suporte a funcionalidades obsoletas e pr\u00e1ticas de programa\u00e7\u00e3o inseguras que tornaram poss\u00edvel uma das vulnerabilidades mais graves da hist\u00f3ria da internet. Theo de Raadt e a equipa do OpenBSD decidiram criar uma alternativa limpa, com os objetivos declarados de &#8220;modernizar a base de c\u00f3digo, melhorar a seguran\u00e7a e aplicar as melhores pr\u00e1ticas de desenvolvimento.&#8221;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">O <strong>LibreSSL 4.3.2<\/strong>, lan\u00e7ado em 25 de maio de 2026, \u00e9 a vers\u00e3o est\u00e1vel mais recente. A vers\u00e3o 4.2.1 foi lan\u00e7ada em 31 de outubro de 2025, e a vers\u00e3o 4.1.2 em 30 de outubro de 2025. O LibreSSL segue o ciclo de lan\u00e7amento do OpenBSD, com vers\u00f5es est\u00e1veis derivadas da vers\u00e3o mais recente do sistema operativo OpenBSD mais atualiza\u00e7\u00f5es de seguran\u00e7a adicionais quando necess\u00e1rio. O projeto tamb\u00e9m disponibiliza uma vers\u00e3o port\u00e1til (portable) que compila em Linux, macOS e outros sistemas operativos al\u00e9m do OpenBSD.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Uma das contribui\u00e7\u00f5es mais importantes do LibreSSL \u00e9 a <strong>API libtls<\/strong>, uma interface de programa\u00e7\u00e3o completamente nova que substitui a API original do OpenSSL por uma alternativa deliberadamente mais simples e mais segura. A API libtls usa menos fun\u00e7\u00f5es, tem configura\u00e7\u00f5es padr\u00e3o seguras por omiss\u00e3o, verifica certificados automaticamente e reduz significativamente as oportunidades de uso incorreto por parte dos programadores, um problema end\u00e9mico na API OpenSSL original. O LibreSSL tamb\u00e9m foi um dos primeiros projetos a adotar o ChaCha20 e o Poly1305 como algoritmos suportados, al\u00e9m de curvas el\u00edpticas Brainpool (RFC 5639) e compatibilidade com o ano 2038.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Em termos de ado\u00e7\u00e3o, o LibreSSL \u00e9 a biblioteca TLS padr\u00e3o do <strong>OpenBSD<\/strong> e do <strong>Alpine Linux<\/strong>. O Alpine Linux 3.22 inclui o LibreSSL como pacote de sistema. O Void Linux tamb\u00e9m usou LibreSSL como padr\u00e3o durante v\u00e1rios anos. A ado\u00e7\u00e3o em distribui\u00e7\u00f5es Linux convencionais, no entanto, \u00e9 muito limitada: Debian, Ubuntu, Fedora, Arch Linux e Red Hat Enterprise Linux continuam a usar OpenSSL. Em termos de dimens\u00e3o da equipa, o LibreSSL contava com cerca de <strong>36 programadores<\/strong> ativos no per\u00edodo 2018-2021, integrando aproximadamente <strong>1.500 patches<\/strong> no mesmo intervalo. O Homebrew para macOS disponibiliza o LibreSSL 4.2.1 como f\u00f3rmula instal\u00e1vel, mas n\u00e3o \u00e9 o padr\u00e3o do sistema.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">O LibreSSL removeu intencionalmente suporte a protocolos e algoritmos obsoletos, como SSLv2, SSLv3 e um conjunto de cifragens consideradas inseguras. Esta decis\u00e3o reduz a superf\u00edcie de ataque, mas tamb\u00e9m cria incompatibilidades com aplica\u00e7\u00f5es que dependem de funcionalidades modernas do OpenSSL introduzidas a partir da vers\u00e3o 1.0.2. Daniel Stenberg, o criador e principal mantenedor do curl, documentou no seu blog que o LibreSSL &#8220;foi tardio a oferecer QUIC, n\u00e3o suporta SSLKEYLOGFILE, ECH e parece ser ainda mais lento que o OpenSSL a implementar novas funcionalidades nos dias de hoje.&#8221;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"especificacoes-tecnicas-comparacao-completa\">Especifica\u00e7\u00f5es T\u00e9cnicas: Compara\u00e7\u00e3o Completa<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A tabela seguinte compara as principais caracter\u00edsticas t\u00e9cnicas do OpenSSL 4.0.1 e do LibreSSL 4.3.2 com base em dados oficiais de ambos os projetos e de fontes independentes, recolhidos em junho de 2026.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Caracter\u00edstica<\/th><th>OpenSSL 4.0.1<\/th><th>LibreSSL 4.3.2<\/th><\/tr><\/thead><tbody><tr><td>Vers\u00e3o Est\u00e1vel Atual<\/td><td>4.0.1 (9 Jun 2026)<\/td><td>4.3.2 (25 Mai 2026)<\/td><\/tr><tr><td>Vers\u00e3o LTS Ativa<\/td><td>3.5.7 (suporte at\u00e9 8 Abr 2030)<\/td><td>Ligado ao ciclo OpenBSD<\/td><\/tr><tr><td>Lan\u00e7amento Original<\/td><td>Dezembro 1998<\/td><td>Julho 2014<\/td><\/tr><tr><td>Licen\u00e7a<\/td><td>Apache 2.0<\/td><td>OpenSSL \/ ISC \/ BSD<\/td><\/tr><tr><td>TLS 1.3<\/td><td>Sim<\/td><td>Sim<\/td><\/tr><tr><td>QUIC (lado do servidor)<\/td><td>Sim (desde v3.5, Abril 2025)<\/td><td>N\u00e3o suportado<\/td><\/tr><tr><td>Post-Quantum (ML-KEM, ML-DSA)<\/td><td>Sim (desde v3.5)<\/td><td>N\u00e3o verificado oficialmente<\/td><\/tr><tr><td>Certifica\u00e7\u00e3o FIPS 140-2<\/td><td>Sim (m\u00f3dulo 3.x validado)<\/td><td>N\u00e3o<\/td><\/tr><tr><td>SSLKEYLOGFILE<\/td><td>Sim<\/td><td>N\u00e3o<\/td><\/tr><tr><td>ECH (Encrypted Client Hello)<\/td><td>Sim<\/td><td>N\u00e3o<\/td><\/tr><tr><td>API libtls (mais segura)<\/td><td>N\u00e3o<\/td><td>Sim (nativa)<\/td><\/tr><tr><td>Compatibilidade de API OpenSSL<\/td><td>Completa (v4.0)<\/td><td>Parcial (aprox. v1.0.x)<\/td><\/tr><tr><td>Plataformas Principais<\/td><td>Linux, Windows, macOS, BSD, iOS<\/td><td>OpenBSD + port\u00e1vel (Linux, macOS)<\/td><\/tr><tr><td>Tamanho do Tarball<\/td><td>52,5 MB<\/td><td>~12 MB<\/td><\/tr><tr><td>Suporte Comercial<\/td><td>Sim (OpenSSL Corporation)<\/td><td>N\u00e3o (apenas comunit\u00e1rio)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">A diferen\u00e7a de tamanho do tarball (52,5 MB face a ~12 MB) \u00e9 um indicador razo\u00e1vel da diferen\u00e7a de \u00e2mbito entre os dois projetos. O OpenSSL inclui suporte a centenas de algoritmos, curvas el\u00edpticas, extens\u00f5es de protocolo e interfaces de compatibilidade com vers\u00f5es antigas. O LibreSSL removeu deliberadamente a maior parte do c\u00f3digo legado, resultando numa base de c\u00f3digo mais pequena, mais audit\u00e1vel e com menos superf\u00edcie de ataque potencial. Para ambientes onde o tamanho dos bin\u00e1rios e das depend\u00eancias \u00e9 um fator (como containers Docker baseados em Alpine Linux), esta diferen\u00e7a tem relev\u00e2ncia pr\u00e1tica.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"benchmarks-e-desempenho-dados-de-tres-fontes\">Benchmarks e Desempenho: Dados de Tr\u00eas Fontes<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">O desempenho de uma biblioteca TLS tem impacto direto no n\u00famero de liga\u00e7\u00f5es TLS processadas por segundo, no consumo de CPU e, consequentemente, nos custos de infraestrutura. O HAProxy Technologies publicou em 2025 um estudo detalhado do estado das pilhas SSL, que fornece dados quantitativos concretos sobre v\u00e1rias vers\u00f5es do OpenSSL em condi\u00e7\u00f5es id\u00eanticas de hardware e configura\u00e7\u00e3o, tornando-se a fonte de benchmarks mais abrangente e recente dispon\u00edvel para esta compara\u00e7\u00e3o.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Biblioteca \/ Vers\u00e3o<\/th><th>Liga\u00e7\u00f5es TLS\/segundo<\/th><th>Notas<\/th><th>Fonte<\/th><\/tr><\/thead><tbody><tr><td>OpenSSL 3.0.2 (Ubuntu 22.04)<\/td><td>~370<\/td><td>1\/100 do desempenho do WolfSSL no mesmo hardware<\/td><td>HAProxy Technologies (2025)<\/td><\/tr><tr><td>OpenSSL 3.0.14<\/td><td>3.700<\/td><td>Melhoria marginal face \u00e0 vers\u00e3o distribu\u00edda com Ubuntu 22.04<\/td><td>HAProxy Technologies (2025)<\/td><\/tr><tr><td>OpenSSL 3.1 \/ 3.2 \/ 3.3<\/td><td>25.000<\/td><td>Recupera\u00e7\u00e3o significativa com bloqueios internos mais leves<\/td><td>HAProxy Technologies (2025)<\/td><\/tr><tr><td>OpenSSL 3.4 (desenvolvimento)<\/td><td>28.000<\/td><td>Patamar de desempenho estabilizado entre 24 e 32 <em>threads<\/em><\/td><td>HAProxy Technologies (2025)<\/td><\/tr><tr><td>LibreSSL (s\u00e9rie 4.x)<\/td><td>N\u00e3o dispon\u00edvel neste benchmark<\/td><td>Exclu\u00eddo: &#8220;visa ser mais seguro, tende a ser menos eficiente&#8221;<\/td><td>HAProxy Technologies (2025)<\/td><\/tr><tr><td>WolfSSL (refer\u00eancia de desempenho)<\/td><td>~148.000<\/td><td>Biblioteca especializada em alto desempenho<\/td><td>HAProxy Technologies (2025)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Os dados do HAProxy revelam que o problema de desempenho mais grave n\u00e3o era o OpenSSL em geral, mas a vers\u00e3o 3.0.x especificamente. A vers\u00e3o 3.0 introduziu uma refatora\u00e7\u00e3o interna de grande escala (o sistema de &#8220;providers&#8221; para m\u00f3dulos criptogr\u00e1ficos) com impacto severo no desempenho em configura\u00e7\u00f5es multi-threaded. A vers\u00e3o 3.0.2, distribu\u00edda com o Ubuntu 22.04, chegou a atingir apenas 1\/100 do desempenho do WolfSSL no mesmo hardware, o que na pr\u00e1tica significa que as organiza\u00e7\u00f5es com este cen\u00e1rio precisariam de provisionar 100 vezes mais m\u00e1quinas unicamente por causa da escolha da biblioteca TLS. As vers\u00f5es 3.1 e posteriores recuperaram o desempenho de forma significativa, atingindo 25.000 liga\u00e7\u00f5es por segundo, e a vers\u00e3o 3.4 estabilizou-se em 28.000.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">O LibreSSL foi explicitamente exclu\u00eddo do benchmark principal do HAProxy precisamente porque, segundo o relat\u00f3rio, &#8220;o LibreSSL visa ser uma alternativa mais segura ao OpenSSL e tende a ser menos eficiente que as outras bibliotecas.&#8221; Esta caracteriza\u00e7\u00e3o \u00e9 consistente com a filosofia do projeto: a prioridade \u00e9 a corre\u00e7\u00e3o e a seguran\u00e7a do c\u00f3digo, n\u00e3o o desempenho m\u00e1ximo. O Phoronix.com, que acompanha de perto o desempenho de software em Linux, registou melhorias de desempenho no LibreSSL 4.1 face a vers\u00f5es anteriores, mas sem dados num\u00e9ricos publicados suficientemente detalhados para uma compara\u00e7\u00e3o direta com o OpenSSL moderno. A Safeguard.sh, numa an\u00e1lise comparativa de setembro de 2025, confirma que o OpenSSL &#8220;\u00e9 a escolha padr\u00e3o para a maioria das distribui\u00e7\u00f5es Linux, servidores web e aplica\u00e7\u00f5es,&#8221; em parte pelo seu desempenho e pela vasta compatibilidade.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Para uso geral em servidores web (Nginx, Apache) com volumes de tr\u00e1fego moderados, a diferen\u00e7a pr\u00e1tica de desempenho entre o LibreSSL e o OpenSSL 3.5+ provavelmente n\u00e3o ser\u00e1 percept\u00edvel. A diferen\u00e7a torna-se relevante em cen\u00e1rios de alt\u00edssima concorr\u00eancia com dezenas de milhar de liga\u00e7\u00f5es TLS por segundo, onde o OpenSSL 3.1+ demonstra uma vantagem clara com base nos dados dispon\u00edveis. Para aplica\u00e7\u00f5es em containers leves ou sistemas embarcados, o LibreSSL pode ser prefer\u00edvel pela sua menor pegada em termos de c\u00f3digo e depend\u00eancias, mesmo que o desempenho bruto seja inferior.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"historico-de-seguranca-e-vulnerabilidades\">Hist\u00f3rico de Seguran\u00e7a e Vulnerabilidades<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"heartbleed-a-origem-do-libressl\">Heartbleed: A Origem do LibreSSL<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A <strong>Heartbleed<\/strong> (CVE-2014-0160), divulgada em abril de 2014, foi talvez a vulnerabilidade mais medi\u00e1tica da hist\u00f3ria do software de c\u00f3digo aberto. Um erro na implementa\u00e7\u00e3o da extens\u00e3o TLS Heartbeat do OpenSSL permitia a qualquer atacante ler at\u00e9 64 KB de mem\u00f3ria do servidor por pedido, sem deixar rasto nos logs. Dados como chaves privadas, palavras-passe e tokens de sess\u00e3o ficaram potencialmente expostos em servidores de todo o mundo durante meses antes da divulga\u00e7\u00e3o p\u00fablica. Os utilizadores do LibreSSL nunca foram afetados pela Heartbleed, porque o <em>fork<\/em> n\u00e3o herdou o c\u00f3digo que continha essa vulnerabilidade espec\u00edfica.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A causa fundamental n\u00e3o foi apenas o erro de programa\u00e7\u00e3o em si, mas a acumula\u00e7\u00e3o de d\u00e9cadas de c\u00f3digo legado, sem testes adequados, numa base de c\u00f3digo que cresceu sem uma filosofia de seguran\u00e7a coerente aplicada de forma consistente. Foi exatamente este padr\u00e3o que o LibreSSL se prop\u00f4s corrigir desde a sua cria\u00e7\u00e3o, removendo dezenas de milhar de linhas de c\u00f3digo desnecess\u00e1rio logo nas primeiras semanas ap\u00f3s o <em>fork<\/em>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"cves-recentes-2024-e-2025\">CVEs Recentes: 2024 e 2025<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Em janeiro de 2026, o OpenSSL lan\u00e7ou vers\u00f5es de corre\u00e7\u00e3o de seguran\u00e7a simult\u00e2neas para cinco ramos ativos (3.6.1, 3.5.5, 3.4.4, 3.3.6 e 3.0.19), com a vulnerabilidade mais grave classificada como <strong>Alta severidade<\/strong>. Este padr\u00e3o de lan\u00e7amentos de seguran\u00e7a coordenados e regulares ilustra simultaneamente o compromisso ativo da equipa e a realidade de que uma base de c\u00f3digo extensa continua a gerar CVEs com regularidade. Em junho de 2026, novas vers\u00f5es de seguran\u00e7a foram lan\u00e7adas para os ramos 3.5.6\/3.6.2, com severidade classificada como Moderada.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">No campo do LibreSSL, a <strong>CVE-2025-9230<\/strong> foi uma vulnerabilidade que afetou vers\u00f5es anteriores \u00e0 4.1.1 em Alpine Linux 3.22. A vulnerabilidade permitia leitura fora dos limites e potencial escrita em mem\u00f3ria em aplica\u00e7\u00f5es que desencriptavam mensagens CMS com encripta\u00e7\u00e3o baseada em palavra-passe. A severidade foi classificada como <strong>Moderada<\/strong>, e o impacto pr\u00e1tico foi limitado pela raridade do vetor de ataque (encripta\u00e7\u00e3o CMS baseada em palavra-passe \u00e9 muito raramente usada). Esta vulnerabilidade \u00e9 not\u00e1vel porque deriva de c\u00f3digo herdado de uma vers\u00e3o antiga do OpenSSL, o tipo de c\u00f3digo que o projeto prometeu originalmente eliminar.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Em termos hist\u00f3ricos, uma an\u00e1lise de 2020 contabilizava cerca de <strong>10 CVEs de alto risco<\/strong> no OpenSSL face a um n\u00famero significativamente menor no LibreSSL, com mais de <strong>200 CVEs de baixa e m\u00e9dia severidade<\/strong> no OpenSSL versus aproximadamente <strong>7<\/strong> no LibreSSL no mesmo per\u00edodo. Estes n\u00fameros refletem parcialmente a diferen\u00e7a de \u00e2mbito (o OpenSSL tem mais funcionalidades e mais c\u00f3digo), mas confirmam que o LibreSSL tem uma superf\u00edcie de ataque hist\u00f3rica mais pequena. Com as limpezas significativas nas vers\u00f5es OpenSSL 4.0, a diferen\u00e7a pode estar a estreitar-se, embora dados espec\u00edficos de 2025-2026 n\u00e3o estejam ainda dispon\u00edveis de forma consolidada.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"suporte-a-protocolos-tls-1-3-quic-e-post-quantum\">Suporte a Protocolos: TLS 1.3, QUIC e Post-Quantum<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">O suporte a protocolos modernos \u00e9 um dos pontos de diferencia\u00e7\u00e3o mais relevantes entre as duas bibliotecas em 2026. A diferen\u00e7a n\u00e3o \u00e9 apenas quantitativa, mas qualitativa: algumas funcionalidades presentes no OpenSSL simplesmente n\u00e3o existem no LibreSSL, o que pode ser um crit\u00e9rio de elimina\u00e7\u00e3o imediata dependendo dos requisitos do projeto.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>TLS 1.3:<\/strong> Ambas as bibliotecas suportam TLS 1.3. O curl e o libcurl confirmam que o LibreSSL consegue comunicar via TLS 1.3 em vers\u00f5es recentes. Esta paridade \u00e9 fundamental para qualquer projeto novo, j\u00e1 que TLS 1.3 \u00e9 o protocolo m\u00ednimo recomendado em 2026.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>QUIC:<\/strong> Aqui a diferen\u00e7a \u00e9 definitiva. O OpenSSL adicionou suporte a QUIC do lado do servidor a partir da vers\u00e3o 3.5 (abril de 2025). O LibreSSL n\u00e3o suporta QUIC. Daniel Stenberg documentou especificamente que o LibreSSL &#8220;foi tardio a oferecer QUIC&#8221; e, na pr\u00e1tica, ainda n\u00e3o o disponibiliza de forma nativa. Para infraestruturas que pretendem suportar HTTP\/3 ou que precisam de QUIC para outros fins, o OpenSSL \u00e9 a \u00fanica escolha entre as duas.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Algoritmos p\u00f3s-qu\u00e2nticos:<\/strong> O OpenSSL 3.5 introduziu suporte nativo a ML-KEM (CRYSTALS-Kyber) e ML-DSA (CRYSTALS-Dilithium), padronizados pelo NIST em 2024. Para organiza\u00e7\u00f5es que seguem as recomenda\u00e7\u00f5es do NIST e da NSA sobre prepara\u00e7\u00e3o para criptografia p\u00f3s-qu\u00e2ntica, o OpenSSL 3.5+ \u00e9 a escolha \u00f3bvia entre as duas bibliotecas. O LibreSSL n\u00e3o anunciou suporte equivalente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>ECH (Encrypted Client Hello):<\/strong> Esta extens\u00e3o TLS que encripta os metadados da fase de negocia\u00e7\u00e3o (incluindo o SNI) \u00e9 suportada pelo OpenSSL mas n\u00e3o pelo LibreSSL. Para aplica\u00e7\u00f5es de privacidade avan\u00e7ada que dependem de ECH para esconder o nome do servidor visitado, o OpenSSL \u00e9 a \u00fanica op\u00e7\u00e3o.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>SSLKEYLOGFILE:<\/strong> Essencial para depura\u00e7\u00e3o de tr\u00e1fego TLS com ferramentas como o Wireshark, est\u00e1 dispon\u00edvel no OpenSSL mas n\u00e3o no LibreSSL. Para equipas de seguran\u00e7a e desenvolvimento que precisam de analisar sess\u00f5es TLS em ambiente de desenvolvimento ou de diagn\u00f3stico, a aus\u00eancia no LibreSSL \u00e9 um obst\u00e1culo pr\u00e1tico.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"certificacao-fips-140-2-o-criterio-que-decide-por-si-so\">Certifica\u00e7\u00e3o FIPS 140-2: O Crit\u00e9rio que Decide por Si S\u00f3<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Para muitas organiza\u00e7\u00f5es, a discuss\u00e3o entre OpenSSL e LibreSSL termina neste ponto: se precisar de <strong>conformidade FIPS 140-2<\/strong>, a resposta \u00e9 OpenSSL, sem exce\u00e7\u00f5es nem alternativas.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">O FIPS 140-2 (Federal Information Processing Standard) \u00e9 o padr\u00e3o norte-americano que certifica m\u00f3dulos criptogr\u00e1ficos para uso em sistemas governamentais e contratantes federais. Qualquer sistema que processe dados classificados, que fa\u00e7a parte de contratos com ag\u00eancias federais dos EUA, ou que opere em setores sujeitos a regula\u00e7\u00e3o equivalente (sa\u00fade, finan\u00e7as, infraestrutura cr\u00edtica) precisa de m\u00f3dulos criptogr\u00e1ficos FIPS validados. O OpenSSL mant\u00e9m um m\u00f3dulo FIPS validado para a s\u00e9rie 3.x, listado na p\u00e1gina oficial de downloads em openssl-library.org\/source. A valida\u00e7\u00e3o FIPS \u00e9 um processo caro e tecnicamente exigente que a equipa do OpenBSD\/LibreSSL nunca se prop\u00f4s a realizar, por estar fora do \u00e2mbito dos seus objetivos declarados.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Para al\u00e9m da conformidade FIPS especificamente, setores como sa\u00fade (HIPAA nos EUA), finan\u00e7as (PCI-DSS) e contratos governamentais em Portugal e na UE t\u00eam requisitos que favorecem fortemente bibliotecas criptogr\u00e1ficas com certifica\u00e7\u00f5es reconhecidas. Para estas organiza\u00e7\u00f5es, o LibreSSL n\u00e3o \u00e9 uma op\u00e7\u00e3o vi\u00e1vel, independentemente das suas vantagens em termos de base de c\u00f3digo mais limpa ou API mais segura. A conformidade regulat\u00f3ria tem prioridade sobre todos os outros fatores t\u00e9cnicos.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"api-e-facilidade-de-uso-para-programadores\">API e Facilidade de Uso para Programadores<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"a-api-do-openssl-poderosa-mas-complexa\">A API do OpenSSL: Poderosa mas Complexa<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">A API do OpenSSL \u00e9 notoriamente complexa. O SSL_CTX, o SSL, o BIO e os seus relacionamentos hier\u00e1rquicos s\u00e3o dif\u00edceis de usar corretamente, e a documenta\u00e7\u00e3o hist\u00f3rica do projeto foi considerada inadequada durante muitos anos. A gest\u00e3o de erros \u00e9 feita atrav\u00e9s de uma pilha de erros global que deve ser explicitamente limpa entre opera\u00e7\u00f5es. A inicializa\u00e7\u00e3o e a liberta\u00e7\u00e3o de recursos seguem padr\u00f5es n\u00e3o intuitivos que s\u00e3o fonte frequente de erros de programa\u00e7\u00e3o, incluindo fugas de mem\u00f3ria e condi\u00e7\u00f5es de corrida.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/* OpenSSL: configura\u00e7\u00e3o m\u00ednima de um contexto TLS de cliente *\/\nSSL_CTX *ctx = SSL_CTX_new(TLS_client_method());\nif (!ctx) {\n    ERR_print_errors_fp(stderr);\n    exit(1);\n}\n\n\/* Configura\u00e7\u00f5es de seguran\u00e7a expl\u00edcitas necess\u00e1rias *\/\nSSL_CTX_set_verify(ctx, SSL_VERIFY_PEER, NULL);\nSSL_CTX_set_default_verify_paths(ctx);\nSSL_CTX_set_min_proto_version(ctx, TLS1_3_VERSION);\n\nSSL *ssl = SSL_new(ctx);\nSSL_set_fd(ssl, sockfd);\nSSL_set_tlsext_host_name(ssl, \"example.com\");\n\nif (SSL_connect(ssl) != 1) {\n    ERR_print_errors_fp(stderr);\n    \/* Liberta\u00e7\u00e3o de recursos em cascata necess\u00e1ria *\/\n}<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"a-api-libtls-do-libressl-segura-por-design\">A API libtls do LibreSSL: Segura por Design<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">O LibreSSL introduziu a <strong>API libtls<\/strong> como alternativa completamente nova \u00e0 API herdada. A libtls foi desenhada com o princ\u00edpio de que deve ser dif\u00edcil de usar incorretamente: as configura\u00e7\u00f5es padr\u00e3o s\u00e3o seguras, a verifica\u00e7\u00e3o de certificados \u00e9 autom\u00e1tica e o n\u00famero de fun\u00e7\u00f5es necess\u00e1rias para estabelecer uma liga\u00e7\u00e3o TLS correta \u00e9 significativamente menor.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>\/* LibreSSL libtls: estabelecimento de liga\u00e7\u00e3o TLS de cliente *\/\nstruct tls_config *cfg = tls_config_new();\nstruct tls *ctx = tls_client();\n\n\/* Configura\u00e7\u00f5es seguras por omiss\u00e3o:\n   TLS 1.2+ m\u00ednimo, verifica\u00e7\u00e3o de certificado ativa *\/\ntls_configure(ctx, cfg);\n\nif (tls_connect(ctx, \"example.com\", \"443\") != 0) {\n    fprintf(stderr, \"Erro: %s\\n\", tls_error(ctx));\n}\n\n\/* A libtls verifica o certificado e o SNI automaticamente.\n   N\u00e3o \u00e9 necess\u00e1ria configura\u00e7\u00e3o adicional para o caso comum. *\/<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">A diferen\u00e7a \u00e9 substancial: a libtls exige significativamente menos c\u00f3digo para o caso de uso mais comum, e as omiss\u00f5es s\u00e3o seguras por padr\u00e3o. A API OpenSSL cl\u00e1ssica, por contraste, tem m\u00faltiplas op\u00e7\u00f5es que devem ser configuradas explicitamente para atingir o mesmo n\u00edvel de seguran\u00e7a, e a aus\u00eancia dessas configura\u00e7\u00f5es pode criar vulnerabilidades silenciosas em c\u00f3digo de produ\u00e7\u00e3o. A desvantagem da libtls \u00e9 a compatibilidade: aplica\u00e7\u00f5es escritas para a API OpenSSL n\u00e3o funcionam com a libtls sem reescrita, e a camada de compatibilidade OpenSSL que o LibreSSL fornece cobre apenas as vers\u00f5es mais antigas da API.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"quem-usa-cada-biblioteca-em-2026\">Quem Usa Cada Biblioteca em 2026?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A ado\u00e7\u00e3o real \u00e9 um indicador importante da maturidade e da compatibilidade de uma biblioteca. O OpenSSL domina de forma esmagadora em termos de utiliza\u00e7\u00e3o global, enquanto o LibreSSL mant\u00e9m o seu nicho num conjunto coerente e espec\u00edfico de plataformas e projetos.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>OpenSSL:<\/strong> Nginx, Apache HTTP Server, curl (modo padr\u00e3o), Postfix, Dovecot, Python (m\u00f3dulo ssl), Node.js (bindings nativos), Ruby (OpenSSL gem). Em termos de distribui\u00e7\u00f5es, o OpenSSL \u00e9 padr\u00e3o no Debian (stable: 3.5.6, testing: 3.6.2, experimental: 4.0.1), Ubuntu, Fedora, Arch Linux, Red Hat Enterprise Linux e praticamente toda a distribui\u00e7\u00e3o Linux convencional.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>LibreSSL:<\/strong> OpenBSD (padr\u00e3o do sistema operativo), Alpine Linux (padr\u00e3o at\u00e9 vers\u00f5es recentes), macOS (inclu\u00eddo como compatibilidade na instala\u00e7\u00e3o de base), Homebrew para macOS (vers\u00e3o 4.2.1 dispon\u00edvel como f\u00f3rmula). O Void Linux usou LibreSSL como padr\u00e3o durante v\u00e1rios anos. O cargo-c (ferramenta de compila\u00e7\u00e3o Rust) ainda pode ter depend\u00eancias de LibreSSL em determinadas configura\u00e7\u00f5es Alpine.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>curl e libcurl:<\/strong> O curl suporta ambas as bibliotecas como backend TLS, mas Daniel Stenberg, o seu criador, \u00e9 cada vez mais cr\u00edtico do LibreSSL por falta de suporte a QUIC, SSLKEYLOGFILE e ECH. Na pr\u00e1tica, a maioria das compila\u00e7\u00f5es de curl para Linux usa OpenSSL. Numa compara\u00e7\u00e3o direta entre LibreSSL e BoringSSL como substitui\u00e7\u00e3o do OpenSSL no curl, o LibreSSL saiu-se melhor (3-0), mas o contexto era de compatibilidade b\u00e1sica, n\u00e3o de suporte a funcionalidades modernas.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"cinco-casos-de-uso-reais\">Cinco Casos de Uso Reais<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A escolha entre OpenSSL e LibreSSL depende muito do contexto espec\u00edfico. Os cinco cen\u00e1rios seguintes cobrem os casos mais comuns com uma recomenda\u00e7\u00e3o concreta para cada um:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Caso 1: Servidor web com Nginx ou Apache em Ubuntu\/Debian.<\/strong> Use <strong>OpenSSL<\/strong>. Est\u00e1 integrado por omiss\u00e3o, \u00e9 suportado nas vers\u00f5es LTS das distribui\u00e7\u00f5es, e a compatibilidade com m\u00f3dulos e extens\u00f5es do Nginx e do Apache \u00e9 total. Mudar para LibreSSL neste cen\u00e1rio exigiria compilar o servidor web a partir do c\u00f3digo fonte, sem benef\u00edcio pr\u00e1tico significativo para a esmagadora maioria dos casos de uso.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Caso 2: Infraestrutura em Alpine Linux com containers Docker.<\/strong> Use <strong>LibreSSL<\/strong> (j\u00e1 est\u00e1 l\u00e1 por omiss\u00e3o). As imagens Alpine incluem LibreSSL como padr\u00e3o, e muitas imagens Docker ligeiras baseadas em Alpine dependem dele. Se a sua aplica\u00e7\u00e3o usa bibliotecas criptogr\u00e1ficas de baixo n\u00edvel, verifique a compatibilidade de API com o LibreSSL antes de assumir que funciona de forma id\u00eantica ao OpenSSL.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Caso 3: Aplica\u00e7\u00e3o com requisito de conformidade FIPS 140-2.<\/strong> Use <strong>OpenSSL<\/strong>, sem discuss\u00e3o. O m\u00f3dulo FIPS do OpenSSL 3.x \u00e9 a \u00fanica op\u00e7\u00e3o entre as duas bibliotecas. Qualquer contrato com ag\u00eancias federais dos EUA, ou qualquer setor que exija conformidade FIPS, elimina automaticamente o LibreSSL.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Caso 4: Servidor HTTP\/3 com suporte a QUIC.<\/strong> Use <strong>OpenSSL 3.5 ou superior<\/strong>. O LibreSSL n\u00e3o suporta QUIC. Para HTTP\/3 e as suas vantagens em termos de lat\u00eancia reduzida e resili\u00eancia em redes com perda de pacotes, o OpenSSL \u00e9 a \u00fanica op\u00e7\u00e3o vi\u00e1vel entre as duas.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Caso 5: Novo projeto em OpenBSD ou sistema com foco em seguran\u00e7a m\u00e1xima e auditabilidade.<\/strong> Use <strong>LibreSSL com a API libtls<\/strong>. Se est\u00e1 a desenvolver uma nova aplica\u00e7\u00e3o especificamente para OpenBSD, ou se valoriza uma API mais segura por omiss\u00e3o e uma base de c\u00f3digo audit\u00e1vel acima de todas as outras considera\u00e7\u00f5es, o LibreSSL com libtls oferece uma experi\u00eancia de desenvolvimento significativamente mais segura. O investimento na aprendizagem da libtls resulta em c\u00f3digo mais correto e com menos oportunidades de erro silencioso.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"pros-e-contras-de-cada-biblioteca\">Pr\u00f3s e Contras de Cada Biblioteca<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>OpenSSL, vantagens:<\/strong> Compatibilidade universal com aplica\u00e7\u00f5es e bibliotecas; suporte a QUIC, ECH, SSLKEYLOGFILE e algoritmos p\u00f3s-qu\u00e2nticos; certifica\u00e7\u00e3o FIPS 140-2; vers\u00e3o LTS com suporte at\u00e9 2030; grande comunidade com documenta\u00e7\u00e3o extensa; suporte comercial dispon\u00edvel via OpenSSL Corporation; desempenho excelente nas vers\u00f5es 3.1+ com 28.000 liga\u00e7\u00f5es\/segundo; dispon\u00edvel em todas as distribui\u00e7\u00f5es Linux convencionais sem compila\u00e7\u00e3o manual.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>OpenSSL, desvantagens:<\/strong> Base de c\u00f3digo extensa (52,5 MB) com maior superf\u00edcie de ataque hist\u00f3rica; API complexa propensa a uso incorreto; a vers\u00e3o 3.0.x teve problemas graves de desempenho (370 liga\u00e7\u00f5es\/segundo no Ubuntu 22.04); mudan\u00e7as incompat\u00edveis frequentes entre vers\u00f5es maiores (remo\u00e7\u00e3o de APIs na 4.0); a refatora\u00e7\u00e3o para o sistema de &#8220;providers&#8221; na 3.0 foi perturbadora para o ecossistema.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>LibreSSL, vantagens:<\/strong> Base de c\u00f3digo mais pequena (~12 MB) e audit\u00e1vel; API libtls mais segura por design com configura\u00e7\u00f5es padr\u00e3o seguras; historial de CVEs de alta severidade mais curto; sem c\u00f3digo legado de algoritmos obsoletos; padr\u00e3o no OpenBSD, projeto com forte tradi\u00e7\u00e3o de seguran\u00e7a; suporte a TLS 1.3 e ChaCha20\/Poly1305; menor pegada em termos de depend\u00eancias, ideal para containers leves.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>LibreSSL, desvantagens:<\/strong> Sem suporte a QUIC; sem SSLKEYLOGFILE; sem ECH; sem certifica\u00e7\u00e3o FIPS 140-2; compatibilidade de API OpenSSL incompleta (aplica\u00e7\u00f5es que usam APIs 1.0.2+ podem n\u00e3o compilar sem altera\u00e7\u00f5es); equipa de desenvolvimento significativamente mais pequena (36 vs 276 programadores); ritmo de implementa\u00e7\u00e3o de novas funcionalidades mais lento; ado\u00e7\u00e3o muito limitada fora do ecossistema OpenBSD\/Alpine.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"guia-de-migracao-de-openssl-para-libressl\">Guia de Migra\u00e7\u00e3o: De OpenSSL para LibreSSL<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Migrar de OpenSSL para LibreSSL \u00e9 mais complexo do que parece \u00e0 primeira vista. O LibreSSL oferece uma camada de compatibilidade com a API OpenSSL, mas esta cobre apenas as vers\u00f5es mais antigas. Aqui est\u00e1 o processo recomendado para avaliar e executar a migra\u00e7\u00e3o com seguran\u00e7a:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Passo 1: Inventariar as depend\u00eancias atuais.<\/strong> Antes de qualquer altera\u00e7\u00e3o, identifique todas as bibliotecas e aplica\u00e7\u00f5es que dependem do OpenSSL no sistema:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Listar pacotes dependentes do OpenSSL no Debian\/Ubuntu\napt-cache rdepends libssl3\n\n# Verificar qual biblioteca TLS o curl usa\ncurl --version | head -1\n\n# Ver bibliotecas din\u00e2micas ligadas a uma aplica\u00e7\u00e3o\nldd \/usr\/bin\/curl | grep -E 'ssl|crypto'\n\n# Confirmar a vers\u00e3o atual\nopenssl version -a<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Passo 2: Verificar disponibilidade no Alpine Linux.<\/strong> Se o objetivo \u00e9 usar LibreSSL em containers Docker baseados em Alpine, a biblioteca j\u00e1 est\u00e1 presente por omiss\u00e3o. Confirme a vers\u00e3o:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># No Alpine Linux\napk info libressl\n\n# Verificar liga\u00e7\u00f5es TLS com LibreSSL (Alpine)\nopenssl s_client -connect example.com:443 -tls1_3\n\n# Confirmar qual biblioteca est\u00e1 a ser usada\nopenssl version<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Passo 3: Identificar incompatibilidades de API.<\/strong> As incompatibilidades mais comuns ao tentar usar c\u00f3digo OpenSSL com LibreSSL incluem: fun\u00e7\u00f5es EVP_KDF (introduzidas no OpenSSL 1.1.0+); fun\u00e7\u00f5es OSSL_PARAM (OpenSSL 3.x); o sistema de providers do OpenSSL 3.x; e qualquer API relacionada com QUIC ou ECH. Aplica\u00e7\u00f5es escritas em Python, Ruby ou Node.js raramente interagem com a API OpenSSL de forma direta e a migra\u00e7\u00e3o tende a ser transparente para estas plataformas.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Passo 4: Compilar e testar a aplica\u00e7\u00e3o com LibreSSL.<\/strong> Se a aplica\u00e7\u00e3o \u00e9 c\u00f3digo C\/C++ que usa a API OpenSSL, tente compilar contra o LibreSSL e observe os erros:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code># Compilar contra LibreSSL no Alpine (onde est\u00e1 dispon\u00edvel como padr\u00e3o)\ngcc -lssl -lcrypto minha_app.c -o minha_app\n\n# Ou com caminhos expl\u00edcitos se LibreSSL foi instalado manualmente\ngcc -I\/usr\/local\/include -L\/usr\/local\/lib -lssl -lcrypto minha_app.c<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Nota importante:<\/strong> A migra\u00e7\u00e3o inversa (de LibreSSL para OpenSSL) \u00e9 geralmente mais simples, porque o OpenSSL \u00e9 um superconjunto da API em termos de cobertura. Se come\u00e7ou com LibreSSL e precisa de QUIC, FIPS ou ECH, mudar para OpenSSL \u00e9 um processo normalmente direto, sem altera\u00e7\u00f5es de c\u00f3digo para a maioria das aplica\u00e7\u00f5es.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"licenca-preco-e-suporte-comercial\">Licen\u00e7a, Pre\u00e7o e Suporte Comercial<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ambas as bibliotecas s\u00e3o gratuitas e de c\u00f3digo aberto, mas com diferen\u00e7as relevantes ao n\u00edvel da licen\u00e7a e do suporte comercial dispon\u00edvel. A mudan\u00e7a do OpenSSL para a licen\u00e7a Apache 2.0 (a partir da vers\u00e3o 3.0) foi significativa: a licen\u00e7a anterior era incompat\u00edvel com a GPL, criando complica\u00e7\u00f5es para projetos de c\u00f3digo aberto. A Apache 2.0 \u00e9 compat\u00edvel com a maioria dos projetos de c\u00f3digo aberto e com requisitos corporativos. O LibreSSL usa uma combina\u00e7\u00e3o de licen\u00e7as herdadas (OpenSSL, ISC e BSD), igualmente permissivas e compat\u00edveis com a maioria dos contextos.<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th><\/th><th>OpenSSL<\/th><th>LibreSSL<\/th><\/tr><\/thead><tbody><tr><td>Licen\u00e7a<\/td><td>Apache 2.0 (desde v3.0)<\/td><td>OpenSSL \/ ISC \/ BSD<\/td><\/tr><tr><td>Custo de Base<\/td><td>0\u20ac<\/td><td>0\u20ac<\/td><\/tr><tr><td>Suporte Comercial<\/td><td>Sim (OpenSSL Corporation, contrato)<\/td><td>N\u00e3o dispon\u00edvel comercialmente<\/td><\/tr><tr><td>Suporte Estendido para vers\u00f5es EOL<\/td><td>Pago (v1.0.2, v1.1.1 para premium)<\/td><td>N\u00e3o aplic\u00e1vel<\/td><\/tr><tr><td>Atualiza\u00e7\u00f5es de Seguran\u00e7a<\/td><td>Gratuitas (para vers\u00f5es suportadas)<\/td><td>Gratuitas<\/td><\/tr><tr><td>Consultoria Especializada<\/td><td>Via OpenSSL Corporation e parceiros<\/td><td>Via comunidade OpenBSD<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Para organiza\u00e7\u00f5es que precisam de garantias de suporte contratual com SLA definido, o OpenSSL \u00e9 a \u00fanica op\u00e7\u00e3o entre as duas. A OpenSSL Corporation oferece contratos de suporte que incluem corre\u00e7\u00f5es de seguran\u00e7a para vers\u00f5es fora do suporte gratuito, SLAs de resposta e acesso a consultores especialistas. O LibreSSL n\u00e3o tem equivalente comercial, e o suporte dispon\u00edvel \u00e9 o da comunidade OpenBSD, que tem recursos significativamente mais limitados.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"opiniao-de-especialistas\">Opini\u00e3o de Especialistas<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">A comunidade t\u00e9cnica tem posi\u00e7\u00f5es claras e bem documentadas sobre a escolha entre as duas bibliotecas, com os especialistas mais relevantes a convergir numa recomenda\u00e7\u00e3o maiorit\u00e1ria.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Daniel Stenberg<\/strong> (criador e mantenedor principal do curl, 2025): &#8220;O LibreSSL foi tardio a oferecer QUIC, n\u00e3o suporta SSLKEYLOGFILE, ECH e parece ser ainda mais lento que o OpenSSL a implementar novas funcionalidades nos dias de hoje.&#8221; Esta avalia\u00e7\u00e3o \u00e9 particularmente relevante porque o curl suporta m\u00faltiplas bibliotecas TLS e Daniel Stenberg tem uma vis\u00e3o privilegiada das diferen\u00e7as pr\u00e1ticas entre elas.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>HAProxy Technologies<\/strong> (relat\u00f3rio &#8220;The State of SSL Stacks&#8221;, 2025): &#8220;O LibreSSL \u00e9 um <em>fork<\/em> do OpenSSL 1.0.1 que surgiu ap\u00f3s a vulnerabilidade Heartbleed, com o objetivo de ser uma alternativa mais segura. O LibreSSL visa uma implementa\u00e7\u00e3o SSL mais segura e tende a ser menos eficiente que as outras bibliotecas.&#8221; Esta an\u00e1lise t\u00e9cnica baseada em benchmarks reais de servidores de alto desempenho confirma o trade-off fundamental do LibreSSL: seguran\u00e7a em detrimento de desempenho e funcionalidade.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Safeguard.sh<\/strong> (an\u00e1lise de setembro de 2025): &#8220;Escolha o OpenSSL se precisar de compatibilidade m\u00e1xima, conformidade FIPS, ou se estiver a executar uma pilha de servidores Linux padr\u00e3o. O OpenSSL \u00e9 a escolha segura por omiss\u00e3o. Escolha o LibreSSL se estiver no OpenBSD, ou se valoriza uma base de c\u00f3digo mais pequena e audit\u00e1vel em detrimento da cobertura m\u00e1xima de funcionalidades. O LibreSSL \u00e9 uma boa escolha quando n\u00e3o precisa de FIPS e quer uma alternativa mais focada em seguran\u00e7a.&#8221; Esta avalia\u00e7\u00e3o triangulada de uma empresa de seguran\u00e7a \u00e9 consistente com todas as outras fontes t\u00e9cnicas.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Comunidade t\u00e9cnica (Hacker News, r\/crypto, 2025):<\/strong> O consenso predominante \u00e9 que o OpenSSL \u00e9 &#8220;a resposta certa&#8221; para sistemas modernos de uso geral. A principal cr\u00edtica ao LibreSSL \u00e9 a lentid\u00e3o na ado\u00e7\u00e3o de novas especifica\u00e7\u00f5es TLS e a incompatibilidade de API com o OpenSSL moderno. Um coment\u00e1rio muito votado no Hacker News resume bem a posi\u00e7\u00e3o: &#8220;O OpenSSL \u00e9 certificado FIPS. Suporta tudo e mais alguma coisa. O LibreSSL tamb\u00e9m quebra a ABI com regularidade. O OpenSSL \u00e9 o padr\u00e3o: ningu\u00e9m foi despedido por escolher OpenSSL.&#8221;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"quando-escolher-cada-um-recomendacoes-finais\">Quando Escolher Cada Um: Recomenda\u00e7\u00f5es Finais<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Com base em todos os dados recolhidos, as recomenda\u00e7\u00f5es s\u00e3o as seguintes para os cen\u00e1rios mais comuns em 2026:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Use OpenSSL 3.5 LTS quando:<\/strong> A sua infraestrutura \u00e9 baseada em distribui\u00e7\u00f5es Linux convencionais (Debian, Ubuntu, Fedora, RHEL); precisa de conformidade FIPS 140-2 para contratos regulados; quer suporte a HTTP\/3 e QUIC no servidor; usa algoritmos p\u00f3s-qu\u00e2nticos (ML-KEM, ML-DSA); precisa de suporte comercial com SLA; ou usa qualquer aplica\u00e7\u00e3o do ecossistema Linux mainstream que dependa de OpenSSL por omiss\u00e3o.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Use OpenSSL 4.0.1 quando:<\/strong> Precisa das funcionalidades mais recentes e pode aceitar um ciclo de suporte mais curto (at\u00e9 maio de 2027); est\u00e1 a desenvolver nova infraestrutura e quer testar as capacidades mais modernas do OpenSSL; ou est\u00e1 a atualizar c\u00f3digo que usava APIs depreciadas que foram removidas na 3.x.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Use LibreSSL 4.3 quando:<\/strong> Est\u00e1 a desenvolver para OpenBSD ou Alpine Linux onde \u00e9 o padr\u00e3o do sistema; valoriza uma base de c\u00f3digo audit\u00e1vel e menor superf\u00edcie de ataque acima de tudo; escreve c\u00f3digo novo que pode aproveitar a API libtls mais segura; trabalha em sistemas embarcados ou containers leves onde a menor pegada \u00e9 uma vantagem; ou os seus requisitos n\u00e3o incluem QUIC, FIPS, ECH ou SSLKEYLOGFILE.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Veredicto geral:<\/strong> Para a grande maioria dos casos de uso em produ\u00e7\u00e3o em 2026, o <strong>OpenSSL 3.5.7 LTS<\/strong> \u00e9 a escolha mais segura em termos de compatibilidade, conformidade e suporte a longo prazo. O <strong>LibreSSL 4.3.2<\/strong> \u00e9 a melhor escolha para o ecossistema OpenBSD\/Alpine e para c\u00f3digo novo que pode aproveitar a libtls.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"perguntas-frequentes\">Perguntas Frequentes<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>O LibreSSL \u00e9 mais seguro que o OpenSSL?<\/strong> Em termos hist\u00f3ricos de CVEs de alta severidade, o LibreSSL tem um registo mais curto. Mas &#8220;mais seguro&#8221; depende do contexto. O OpenSSL 4.0+ recebeu limpezas significativas de c\u00f3digo legado, e a equipa de seguran\u00e7a \u00e9 muito maior e mais ativa. Para uso geral em Linux, o OpenSSL moderno \u00e9 adequadamente seguro. Para ambientes com foco extremo em auditabilidade e base de c\u00f3digo m\u00ednima, o LibreSSL tem vantagem.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Posso usar LibreSSL em vez de OpenSSL no Ubuntu?<\/strong> Tecnicamente sim, mas requer compila\u00e7\u00e3o a partir do c\u00f3digo fonte e substitui\u00e7\u00e3o manual da biblioteca do sistema. O LibreSSL n\u00e3o est\u00e1 dispon\u00edvel nos reposit\u00f3rios oficiais do Ubuntu ou Debian. A compatibilidade com aplica\u00e7\u00f5es que usam a API OpenSSL 1.1.0+ pode ser incompleta, e qualquer atualiza\u00e7\u00e3o do sistema pode sobrescrever a configura\u00e7\u00e3o.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>O OpenSSL 4.0 \u00e9 compat\u00edvel com o OpenSSL 3.x?<\/strong> N\u00e3o totalmente. A vers\u00e3o 4.0 removeu APIs depreciadas presentes na 3.x. Aplica\u00e7\u00f5es que dependem dessas APIs precisam de atualiza\u00e7\u00e3o. O OpenSSL 3.5 LTS \u00e9 mais conservador neste sentido e \u00e9 a escolha recomendada para estabilidade de longo prazo, com suporte garantido at\u00e9 abril de 2030.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>O LibreSSL suporta TLS 1.3?<\/strong> Sim. O curl e o libcurl confirmam suporte a TLS 1.3 com o LibreSSL em vers\u00f5es recentes. O LibreSSL 4.x suporta TLS 1.3 de forma nativa. O que n\u00e3o suporta \u00e9 QUIC, ECH e SSLKEYLOGFILE.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Qual biblioteca TLS devo usar com Node.js?<\/strong> O Node.js usa o OpenSSL como backend TLS compilado internamente. As vers\u00f5es LTS do Node.js incluem uma vers\u00e3o espec\u00edfica do OpenSSL embutida, pelo que a biblioteca do sistema geralmente n\u00e3o \u00e9 relevante para aplica\u00e7\u00f5es Node.js. Para criptografia em Node.js, o m\u00f3dulo nativo <code>crypto<\/code> usa o OpenSSL embutido na runtime.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>O LibreSSL vai ganhar suporte a QUIC?<\/strong> N\u00e3o h\u00e1 an\u00fancios oficiais da equipa do LibreSSL sobre suporte a QUIC \u00e0 data de publica\u00e7\u00e3o deste artigo (junho de 2026). Dado o historial de ritmo de implementa\u00e7\u00e3o do projeto, \u00e9 prudente n\u00e3o depender de QUIC no LibreSSL a curto ou m\u00e9dio prazo.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Como verifico qual biblioteca TLS est\u00e1 instalada no meu sistema?<\/strong> Execute <code>openssl version -a<\/code> para ver a vers\u00e3o e o caminho da biblioteca. No Alpine Linux, verifique com <code>apk info libressl openssl<\/code>. Para verificar qual biblioteca um bin\u00e1rio usa em tempo de execu\u00e7\u00e3o, use <code>ldd \/caminho\/para\/binario | grep ssl<\/code>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"cobertura-relacionada\">Cobertura Relacionada<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Para aprofundar os temas abordados neste artigo, consulte a nossa cobertura relacionada em criptografia e seguran\u00e7a:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"\/pt\/aes-256-vs-chacha20\/\">AES-256 vs ChaCha20: 3x Mais R\u00e1pido em Servidores, Qual Escolher [2026]<\/a><\/li><li><a href=\"\/pt\/sha-256-vs-sha-3\/\">SHA-256 vs SHA-3: 2373 vs 686 MB\/s, Qual Escolher [2026]<\/a><\/li><li><a href=\"\/pt\/post-quantum-cryptography-2026\/\">Criptografia P\u00f3s-Qu\u00e2ntica: 50% da Web J\u00e1 Est\u00e1 Protegida [2026]<\/a><\/li><li><a href=\"\/pt\/https-nginx-lets-encrypt\/\">HTTPS no Nginx com Let&#8217;s Encrypt: 12 Passos [2026]<\/a><\/li><li><a href=\"\/pt\/symmetric-vs-asymmetric-encryption\/\">Encripta\u00e7\u00e3o Sim\u00e9trica vs Assim\u00e9trica: Diferen\u00e7a de 1000x na Velocidade [2026]<\/a><\/li><li><a href=\"\/pt\/cryptography\/\">Guia de Criptografia: Todos os Artigos<\/a><\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Em junho de 2026, duas bibliotecas de c\u00f3digo aberto dividem o mercado das implementa\u00e7\u00f5es TLS em servidores Linux: o OpenSSL 4.0.1 e o LibreSSL 4.3.2. A escolha entre elas pode\u2026<\/p>\n","protected":false},"author":8,"featured_media":158,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2],"tags":[],"class_list":["post-157","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cryptography"],"_links":{"self":[{"href":"https:\/\/shattered.io\/pt\/wp-json\/wp\/v2\/posts\/157","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/shattered.io\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/shattered.io\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/shattered.io\/pt\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/shattered.io\/pt\/wp-json\/wp\/v2\/comments?post=157"}],"version-history":[{"count":1,"href":"https:\/\/shattered.io\/pt\/wp-json\/wp\/v2\/posts\/157\/revisions"}],"predecessor-version":[{"id":159,"href":"https:\/\/shattered.io\/pt\/wp-json\/wp\/v2\/posts\/157\/revisions\/159"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/shattered.io\/pt\/wp-json\/wp\/v2\/media\/158"}],"wp:attachment":[{"href":"https:\/\/shattered.io\/pt\/wp-json\/wp\/v2\/media?parent=157"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/shattered.io\/pt\/wp-json\/wp\/v2\/categories?post=157"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/shattered.io\/pt\/wp-json\/wp\/v2\/tags?post=157"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}