Главная » Error » Solved: TLS 1

Solved: TLS 1

TLS 1.2 test – PHP CURL error 1407742E when submitting request to sandbox

View the Solution This topic has been marked as solved.

Hi,

I’m getting a PHP CURL error when submitting a test transaction to my sandbox account at https://test.authorize.net/gateway/transact.dll. The error is:

1407742E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version

Does this mean that the version of CURL on the server is not configured to work properly with TLS 1.2? From what I can tell from the PHP Info, the CURL version is 7.36.0 and SSL Version is OpenSSL/0.9.8. PHP version is 5.4.32.

Test code looks like below:

$url = ‘https://test.authorize.net/gateway/transact.dll’;

$ch = curl_init( $url );
curl_setopt( $ch, CURLOPT_POST, true);
curl_setopt( $ch, CURLOPT_POSTFIELDS, $vPostData);
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt( $ch, CURLOPT_VERBOSE, true);
$response = curl_exec( $ch );
if ($response === false) {
echo “curl_exec failed
“;
trigger_error(curl_error($ch));
} else {
echo “response: ” . $response;
}
curl_close($ch);

?>

Thanks!

Solved!

Go to Solution.

Me too

  • curl
  • PHP
  • tls1.2

jsargent3840
jsargent3840
Member

‎02-08-201812:54 PM

0

Kudos
Share Reply

  • All forum topics
  • Previous Topic
  • Next Topic

1 ACCEPTED SOLUTION

Accepted Solutions
Options

  • Mark as New
  • Bookmark
  • Subscribe
  • Mute
  • Subscribe to RSS Feed
  • Permalink
  • Print
  • Report Inappropriate Content

Как на Golang написать http сервер, который по POST запрос будет установлять Cron и удалять через DELETE Crontab job в линуксе?

  • 1 подписчик
  • 19 сент.
  • 198 просмотров

ответа
2

  • поисковая-оптимизация
    • Поисковая оптимизация

    • +2 ещё

    Средний

  • Как отправить письмо с помощью golang?

    • 1 подписчик
    • 30 сент.
    • 154 просмотра

    ответ
    1

  • сети
    • Компьютерные сети

    • +2 ещё

    Средний

  • The Red Herring Error

    Before we begin, we need to point out this error message that will almost always occur in the DataPower logs when SSL goes wrong:

    <текстареа wrap="soft" class="crayon-plain print-no" data-settings="dblclick" readonly="" style="-moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4; font-size: 11px !important; line-height: 15px !important;">

    [0x81200025][ssl][error] … : SSL peer did not send a certificate during the handshake

    12345  [0x81200025][ssl][error]…: SSL peer did notsendacertificate during the handshake  

    A junior DataPower administrator will hone in on this message and proudly declare that the client was misconfigured because it did not send a certificate. This sends the client team scurrying to their server and staring at their certificate. While the DataPower admin is technically correct that a certificate never arrived, it is more likely that the handshake failed long before the point where certificate presentation occurs.

    It would be nice if the DataPower development team stopped logging this message, or at least changed the text for accuracy. It’s written too authoritatively. It’s almost never the root cause and it wastes critical debugging time. This waste gets much worse when the client is an external vendor and inexperienced in SSL troubleshooting.

    In all of our examples, you will see this message written even though it had nothing to do with the certificate itself. Be aware.

    TLS 1.0 when only 1.1/1.2 allowed

    <текстареа wrap="soft" class="crayon-plain print-no" data-settings="dblclick" readonly="" style="-moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4; font-size: 10px !important; line-height: 15px !important;">

    [0x8120002f][ssl][error] ssl-server … : SSL library error: error:140760FC:SSL routines:SSL23_GET_CLIENT_HELLO:unknown protocol
    [0x81200025][ssl][error] ssl-server … : SSL peer did not send a certificate during the handshake
    [0x80e00130][http][error] xmlfirewall … : could not establish SSL for incoming connection
    [0x80e00531][xmlfirewall][debug] xmlfirewall … : Starting termination of connection 192.168.1.46:49240 192.168.1.10:9195

    123456 [0x8120002f][ssl][error]ssl-server…:SSL library error:error:140760FC:SSL routines:SSL23_GET_CLIENT_HELLO:unknown protocol[0x81200025][ssl][error]ssl-server…:SSL peer did notsendacertificate during the handshake[0x80e00130][http][error]xmlfirewall…:could notestablish SSL forincoming connection[0x80e00531][xmlfirewall][debug]xmlfirewall…:Starting termination of connection192.168.1.46:49240192.168.1.10:9195 

    In this scenario, the client sent a TLS 1.0 connection but DataPower is configured to only accept TLS1.1 or TLS1.2 connections. This is common when integrating with legacy environments that may not support the latest TLS protocols. DataPower writes that an unknown protocol was encountered.

    Client Sends HTTP Request

    <текстареа wrap="soft" class="crayon-plain print-no" data-settings="dblclick" readonly="" style="-moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4; font-size: 10px !important; line-height: 15px !important;">

    [0x8120002f][ssl][error] ssl-server … : SSL library error: error:1407609C:SSL routines:SSL23_GET_CLIENT_HELLO:http request
    [0x81200025][ssl][error] ssl-server … : SSL peer did not send a certificate during the handshake
    [0x80e00130][http][error] xmlfirewall … : could not establish SSL for incoming connection
    [0x80e00531][xmlfirewall][debug] xmlfirewall … : Starting termination of connection 192.168.1.46:52959 192.168.1.10:9195

    123456 [0x8120002f][ssl][error]ssl-server…:SSL library error:error:1407609C:SSL routines:SSL23_GET_CLIENT_HELLO:http request[0x81200025][ssl][error]ssl-server…:SSL peer did notsendacertificate during the handshake[0x80e00130][http][error]xmlfirewall…:could notestablish SSL forincoming connection[0x80e00531][xmlfirewall][debug]xmlfirewall…:Starting termination of connection192.168.1.46:52959192.168.1.10:9195 

    In this scenario, the client forgot that we’re an HTTPS endpoint and hit it with plain ol’ HTTP. In the old firmware, you would see an error about writing a descriptor(8). Today, you clearly see that the SSL library identified the client as HTTP. This error can be common when network health checkers are misconfigured and don’t use half-open to determine service availability. Effort should be made to fix the extraneous errors from occurring in the log.

    Golang выдает ошибку, что делать?

    • 1 подписчик
    • 15 окт.
    • 81 просмотр

    ответ
    1

  • linux
    • Linux

    • +1 ещё

    Простой

  • SSLv3 when only TLS 1.0+ allowed

    <текстареа wrap="soft" class="crayon-plain print-no" data-settings="dblclick" readonly="" style="-moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4; font-size: 10px !important; line-height: 15px !important;">

    [0x8120002f][ssl][error] ssl-server … : SSL library error: error:1408A10B:SSL routines:ssl3_get_client_hello:wrong version number
    [0x81200025][ssl][error] ssl-server … : SSL peer did not send a certificate during the handshake
    [0x80e00130][http][error] xmlfirewall … : could not establish SSL for incoming connection
    [0x80e00531][xmlfirewall][debug] … : Starting termination of connection 192.168.1.46:49316 192.168.1.10:9195

    123456 [0x8120002f][ssl][error]ssl-server…:SSL library error:error:1408A10B:SSL routines:ssl3_get_client_hello:wrong version number[0x81200025][ssl][error]ssl-server…:SSL peer did notsendacertificate during the handshake[0x80e00130][http][error]xmlfirewall…:could notestablish SSL forincoming connection[0x80e00531][xmlfirewall][debug]…:Starting termination of connection192.168.1.46:49316192.168.1.10:9195 

    In this scenario, the client sends an SSLv3 connection but DataPower is configured to only accept TLS 1.0, 1.1 and 1.2. The same error message occurs if the client sends SSLv2. SSLv3 and SSLv2 are ancient versions and any occurrence of this error in the DataPower environment should be forwarded to the enterprise security team to ensure that its still suitable for the client to be so backleveled.

    Как установить шифрованное по ключу (RSA/MD5/BASE64) соединение по сокету Golang?

    • 2 подписчика
    • 29 сент.
    • 117 просмотров

    ответ
    1

  • go
    • Go

    Простой

  • TLS 1.2 when only 1.1 allowed

    <текстареа wrap="soft" class="crayon-plain print-no" data-settings="dblclick" readonly="" style="-moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4; font-size: 10px !important; line-height: 15px !important;">

    [0x8120002f][ssl][error] ssl-server … : SSL library error: error:1409442E:SSL routines:ssl3_read_bytes:tlsv1 alert protocol version
    [0x81200025][ssl][error] ssl-server … : SSL peer did not send a certificate during the handshake
    [0x80e00130][http][error] xmlfirewall … : could not establish SSL for incoming connection
    [0x80e00531][xmlfirewall][debug] xmlfirewall … : Starting termination of connection 192.168.1.46:57804 192.168.1.10:9195

    123456 [0x8120002f][ssl][error]ssl-server…:SSL library error:error:1409442E:SSL routines:ssl3_read_bytes:tlsv1 alert protocol version[0x81200025][ssl][error]ssl-server…:SSL peer did notsendacertificate during the handshake[0x80e00130][http][error]xmlfirewall…:could notestablish SSL forincoming connection[0x80e00531][xmlfirewall][debug]xmlfirewall…:Starting termination of connection192.168.1.46:57804192.168.1.10:9195 

    In this scenario, the client send a TLS 1.2 connection but DataPower is configured to only accept TLS 1.1. This error message occurs when a higher TLS version arrives than what the server supports. For completeness, the same error occurred when the client sent TLS 1.1 but DataPower only accepted 1.0.

    Как через os/exec запустить сторонний exe файл в GoLang?

    • 1 подписчик
    • 27 сент.
    • 108 просмотров

    ответ
    1

  • go
    • Go

    Простой

  • Как задать тип для структуры, где может быть массив или строка?

    • 1 подписчик
    • 24 сент.
    • 117 просмотров

    ответа
    3

  • linux
    • Linux

    • +1 ещё

    Средний

  • Запутался с установкой golang, что делать?

    • 1 подписчик
    • 13 окт.
    • 146 просмотров

    ответа
    4

  • go
    • Go

    Средний

  • Introduction

    SSL / TLS is the most popular method of securing a connection between two endpoints. It allows the client and server to verify identity and then encrypt the subsequent data exchange. In an IBM DataPower Gateway environment, this is the most common integration point and also the most common location for trouble.

    In the older firmware, you would have to walk a checklist of the entire SSL Proxy Profile to guess at what had gone wrong. It was a tedious process. Luckily, since firmwares 5.0.0.18, 6.0.0.10, 6.0.1.6, 7.0.0.3, 7.1.0.0 and 7.2.0.0 DataPower writes SSL library errors to the log. These errors occur at a lower abstraction level and therefore provide better granularity on the specific cause of the failure. This improves the debugging process substantially but still does not allieviate the DataPower administrator of a solid knowledge of TLS.

    In this article, we issue deficient TLS requests to a DataPower endpoint and show what is captured in the log. To reproduce these tests, simply grab a copy of openssl and use the ‘s_client’ option.

    Table of Contents

    • 1. Introduction
    • 2. Red Herring
    • 3. HTTP Request
    • 4. TLS1.0 Request
    • 5. TLS1.2 Request
    • 6. SSLv3 Request
    • 7. Cipher Mismatch
    • 8. No Certificate Presented
    • 9. Expired Certificate
    • 10. Client Validation Failed
    • 11. Successful Validation
    • 12. Server Validation Failed
    • 13. Testing
    • 14. Conclusion

    Можно ли избавиться от избыточных типов (struct) в Golang?

    • 1 подписчик
    • 16 окт.
    • 76 просмотров

    ответ
    1

  • go
    • Go

    Простой

  • Cтоит ли использовать golang с next.js?

    • 2 подписчика
    • 19 сент.
    • 171 просмотр

    ответа
    2

  • Показать ещёЗагружается…
  • Вакансии с Хабр Карьеры

    Go разработчик

    SberTech
    •Санкт-Петербург
    от 175 000 до 230 000 ₽

    Разработчик GO

    Genue

    от 4 000 $

    Go-разработчик

    Контур
    •Санкт-Петербург
    До 180 000 ₽
    Ещё вакансии

    Заказы с Хабр Фриланса

    Разработка задания (node.js)

    18 окт. 2022, в 15:46
    10 руб./за проект

    Сделать Webview Android из веб приложения

    18 окт. 2022, в 15:23
    5000 руб./за проект

    Решить задачу на голом Питоне

    18 окт. 2022, в 15:19
    2500 руб./за проект
    Ещё заказы

    Минуточку внимания

    Присоединяйтесь к сообществу, чтобы узнавать новое и делиться знаниями

    Зарегистрироваться

    Самое интересное за 24 часа

    • Можно ли заменить в ноутбуке экран на другой, с более высоким разрешением?

      • 2 подписчика
      • 1 ответ
    • Как вывести общее количество товаров магазина Woocommerce в записи/на странице с помощью шорткода?

      • 2 подписчика
      • 0 ответов
    • Можно ли удалить рекламу Yandex с сайта?

      • 4 подписчика
      • 3 ответа
    • Как исправить эту ошибку docker-compose?

      • 1 подписчик
      • 1 ответ
    • Как скачивать с защищенных каналов Telegram?

      • 8 подписчиков
      • 1 ответ
    • Какие есть сервисы кэширования для сайта?

      • 7 подписчиков
      • 1 ответ
    • Как Отправить сгенерированный пдф файл на электронную почту?

      • 2 подписчика
      • 1 ответ
    • Как дать роли права на чтение только со slave?

      • 2 подписчика
      • 1 ответ
    • Как изменить код таким образом, чтобы промисы выполнялись поочередно?

      • 2 подписчика
      • 1 ответ
    • Как сгрупировать значения multiselect инпута в подмассивы если в форме несколько multiselect инпутов с одним названием tags[]?

      • 2 подписчика
      • 1 ответ
    • © Habr
    • О сервисе
    • Обратная связь
    • Блог

    Как bytes.Buffer создает новый срез байтов через new?

    • 1 подписчик
    • 08 окт.
    • 54 просмотра

    ответ
    1

  • go
    • Go

    • +1 ещё

    Простой

  • Источники

    • https://community.developer.cybersource.com/t5/Integration-and-Testing/TLS-1-2-test-PHP-CURL-error-1407742E-when-submitting-request-to/td-p/61571
    • https://qna.habr.com/q/522161
    • http://www.orangespecs.com/datapower-tls-ssl-errors/
    [свернуть]
    Решите Вашу проблему!


    ×
    Adblock
    detector