Inicio
Documentação
Recursos
Parcerias
Comunidade

Recursos

Confira as atualizaçÔes das nossas soluçÔes e do funcionamento do sistema ou peça suporte técnico.

Parcerias

Conheça nosso programa para agĂȘncias ou desenvolvedores que oferecem serviços de integração e vendedores que desejam contratĂĄ-los.

Comunidade

Fique por dentro das Ășltimas novidades, peça ajuda a outros integradores e compartilhe seu conhecimento.

Desativação da criptografia TLS 1.1 - Comerciantes PCI Compliant - Mercado Pago Developers

Desativação da criptografia TLS 1.1 no Mercado Pago

No Mercado Pago procuramos sempre otimizar nossa plataforma oferecendo a mais alta eficiĂȘncia e segurança no processamento de pagamentos.

No momento, estamos trabalhando no desligamento do protocolo de criptografia TLS 1.1 para os domínios https://api.mercadopago.com e https://pagamento.mercadopago.com com o objetivo de manter os mais altos padrÔes de qualidade e promover a segurança de dados de nossos clientes.

Importante
Uma vez desativado o protocolo TLS 1.1, qualquer tentativa de conexão utilizando o TLS 1.1, falharå. Além disso, o Mercado Pago exigirå que suas conexÔes com os domínios https://api.mercadopago.com e https://pagamento.mercadopago.com sejam realizados utilizando o protocolo TLS 1.2 ou superior.

Pontos para serem levados em conta

  • Se vocĂȘ usa apenas Mercado Livre, essa alteração nĂŁo afetarĂĄ vocĂȘ.
  • Se vocĂȘ usa apenas os botĂ”es de pagamento de Mercado Pago, essa alteração nĂŁo afetarĂĄ vocĂȘ.
  • Se vocĂȘ usa apenas Mercado Shops, essa alteração nĂŁo afetarĂĄ vocĂȘ.
  • Se vocĂȘ usa apenas VTEX, essa alteração nĂŁo afetarĂĄ vocĂȘ.
  • Caso tenha seu prĂłprio e-commerce, consulte sua equipe de TI.
  • Caso opere com alguma plataforma de e-commerce, como por exemplo: Magento, Shopify ou outros Consulte seu respectivo suporte tĂ©cnico.

Introdução

TLS Ă© o acrĂŽnimo para "Transport Layer Security". É um protocolo que garante privacidade e integridade de dados entre dois aplicativos que se comunicam pela rede.

É o protocolo de segurança mais utilizado atualmente e Ă© usado em navegadores e outros aplicativos que exigem que os dados sejam trocados com segurança em uma rede. O TLS garante que uma conexĂŁo entre dois pontos finais se realize atravĂ©s de criptografia e que os pontos de origem e destino tenham sua identidade verificada. As versĂ”es do TLS atĂ© o momento sĂŁo TLS 1.0, 1.1 e 1.2 e 1.3.

As conexÔes de Internet e das APIs do Mercado Pago utilizam o protocolo TLS como um componente chave de sua segurança.

HTTPS (web) e STARTTLS SMTP (email), também usam o TLS como um componente de segurança.

Por que essa mudança serå feita?

No Mercado Pago levamos a segurança muito a sério e ajudamos nossos clientes a melhorå-la usando os protocolos de segurança mais recentes.

Ação necessåria para integraçÔes via API

Se suas integraçÔes que usam conexÔes de entrada com o Mercado Pago, não tiverem os protocolos TLS 1.1 e/ou TLS 1.2 ativados após essa alteração, elas começarão a falhar

Importante
Recomendamos que vocĂȘ atualize para o protocolo TLS 1.2 antes de 12 de junho de 2023.

Veja as diretrizes de compatibilidade abaixo:

PlataformaNotas de Compatibilidade
Java (Oracle)CompatĂ­vel com a versĂŁo mais recente, independente do sistema operacional.
Java 8 (1.8) y versÔes posterioresCompatível com a criptografia TLS 1.2 ou versÔes posteriores, por padrão.
Java 7 (1.7)Ative TLS 1.2 usando a propriedade do sistema Java https.protocols para HttpsURLConnection. Para ativar o TLS 1.2 em conexÔes sem HttpsURLConnection, defina os protocolos ativos nas instùncias criadas de SSLSocket e SSLEngine, no código-fonte do aplicativo. A mudança para o IBM Java, pode ser uma solução eficaz caso a atualização para uma versão mais recente do Oracle Java, não seja possível.
Java 8CompatĂ­vel com a criptografia TLS 1.2 ou versĂ”es posteriores por padrĂŁo. VocĂȘ pode ter que configurar com.ibm.jsse2.overrideDefaultTLS = true, caso seu aplicativo ou uma biblioteca de chamadas use SSLContext.getinstance (TLS).
Java 7 e versĂ”es posteriores; atualização de serviço 1 do Java 6.0.1 (J9 VM2.6) e versĂ”es posteriores; e a atualização de serviço 10 do Java 6 e versĂ”es posteriores.Ative o TLS 1.2 usando a propriedade do sistema Java https.protocols para HttpsURLConnection e a propriedade do sistema Java com.ibm.jsse2.overrideDefaultProtocol para conexĂ”es SSLSocket e SSLEngine, conforme recomendado pela documentação da IBM. VocĂȘ tambĂ©m pode ter que configurar com.ibm.jsse2.overrideDefaultTLS = true.
.NETCompatĂ­vel com a versĂŁo mais recente quando executado em um sistema operacional que suporte TLS 1.2
.NET 4.6 e versÔes posterioresCompatível com criptografia TLS 1.2 ou versÔes posteriores por padrão.
.NET 4.5 à 4.5.2O .NET 4.5, 4.5.1 e 4.5.2 não ativam TLS 1.2 por padrão. Existem duas opçÔes para ativå-las, conforme descrito abaixo.
.NET 4.0O .NET 4.0 não ativa o TLS 1.2 por padrão. Para configurar o TLS 1.2 como padrão, é possível instalar o .NET Framework 4.5 ou posterior e definir o valor DWORD de SchUseStrongCrypto como 1 nas duas seguintes chaves do registro do sistema. Caso essas chaves não existam, é necessårio criå-las: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ .NETFramework \ v4.0.30319 e HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Microsoft \ .NETFramework \ v4.0.30319. Essas chaves de registro podem ativar o TLS 1.2 por padrão em todos os aplicativos .NET 4.0, 4.5, 4.5.1 e 4.5.2 instalados nesse sistema. Recomendamos testar essa alteração antes de implementå-la em seus servidores de produção. Isso também estå disponível como um arquivo de importação para o registro do sistema, porém essas configuraçÔes de registro do sistema não afetarão os aplicativos .NET que definem o valor System.Net.ServicePointManager.SecurityProtocol.
.NET 3.5 e versÔes anterioresNão são compatíveis com criptografia TLS 1.2 ou versÔes posteriores
PythonCompatĂ­vel com a versĂŁo mais recente, quando executado em um sistema operacional que suporte TLS 1.2
Python 2.7.9 e versÔes posterioresCompatível com criptografia TLS 1.2 ou versÔes posteriores por padrão.
Python 2.7.8 e versÔes anterioresNão são compatíveis com criptografia TLS 1.1 ou versÔes posteriores.
RubyCompatível com a versão mais recente e eståvel quando estå vinculado ao OpenSSL 1.0.1 ou versÔes posteriores.
Ruby 2.0.0O TLS 1.2 é ativado por padrão quando usado com o OpenSSL 1.0.1 ou posterior. O uso dos símbolos: TLSv1_2 com ssl_version do SSLContext, ajuda a garantir que o TLS 1.1 ou versÔes anteriores sejam desativadas.
Ruby 1.9.3 e versÔes anterioresO símbolo: TLSv1_2 não existe na versão 1.9.3 nem anteriores, mas é possível corrigir o Ruby para adicionar esse símbolo e compilar o Ruby com o OpenSSL 1.0.1 ou posterior.
Android 5.x e versÔes posterioresTLS 1.2 é suportado por padrão.

Como verificar a versĂŁo atual do TLS?

Para validar se sua integração estå mantendo uma conexão usando um protocolo diferente do TLS 1.2, utilize um dos seguintes trechos dentro de seu aplicativo para verificar qual protocolo é usado por padrão para conexÔes.

          
<?php
  $curl_info = curl_version();
  echo "protocol: " . $curl_info['ssl_version'];
?>


        
          
SSLSocket ss = (SSLSocket) SSLSocketFactory.getDefault().createSocket("api.mercadopago.com", 443);
System.out.println("protocol: " + ss.getSession().getProtocol());


        
          
string strWebsiteName = "api.mercadopago.com";
TcpClient _myClient = new TcpClient();
SslStream _myStream;
_myClient.Connect(strWebsiteName, 443);
_myStream = new SslStream(_myClient.GetStream());
_myStream.AuthenticateAsClient(strWebsiteName);

Console.WriteLine("protocol : " + _myStream.SslProtocol);