If it sheds any more light on the matter, I have a simple script that only tries to post sample, valid, transaction data to Authorize.net. The script looks much like this:
<%
Dim xml, strStatus, strRetval
On Error Goto 0
Set xml = Server.CreateObject("MSXML2.ServerXMLHTTP.6.0")
xml.open "POST", "https://secure.authorize.net/gateway/transact.dll?x_login=aaaa&x_tran_key=bbbb&x_delim_data=true&x_d...", false
xml.send ""
strStatus = xml.Status
strRetval = xml.responseText
Response.Write "here="
Response.Write xml.responseText
Response.End
%>
(Obviously, I have replaced the sensitive data, like login info with letters aaaa, bbbb, cccc, etc. for posting to this forum, but in the actual test script, they are valid values.)
Until yesterday, this script worked fine. When Authorize.net started requring 1.2 only, it stopped working and gives the same "An error occurred in the secure channel support" error. Authorize.net told me to have TLS 1.0 and 1.1 disabled, and to make sure 1.2 is enabled. I've done that, and I still get the same error.
I've also tried using different server objects instead of "MSXML2.ServerXMLHTTP.6.0". I've tried "WinHttp.WinHttpRequest.5.1" and "MSXML2.ServerXMLHTTP" and get the same error.
I've tried "Microsoft.XMLHTTP" and "MSXML2.XMLHTTP.6.0" and still get an error, although for these two, the error is "The system cannot locate the resource specified."
All of this held true starting yesterday, before I switched the server to TLS 1.2 only, and after. But the script was working fine before yesterday (using server object "Microsoft.XMLHTTP").
I can't figure why I can't post over https to another server now. Even the other test script, the one that POSTS to howsmyssl.com, returns the same set of errors based on the Server Object I'm trying to use.
I've exhausted all ideas of what to try next. Does anyone know what's going on here?