Questions tagged [ssl]

Secure Sockets Layer (SSL) is a cryptographic protocol, now superseded by Transport Layer Security (TLS) that provides secure communications over the Internet. Often, SSL is used as a blanket term and refers to both the SSL protocol and the Transport Layer Security (TLS) protocol. The most recent version of the protocol is TLS version 1.3, specified by the IETF in RFC 8446.

'Secure Sockets Layer' was originally a comp.sources Usenet post in the 1980s, using a fairly primitive security protocol. Netscape Communication Corp pioneered the current SSL protocol, in SSL 2.0, the first version deployed, followed by SSL 3.0. At that point the IETF decided to standardize on this protocol, so RFC 2246 defined the next version of this protocol. There was some uncertainty over the intellectual property rights to the SSL name so the IETF chose the name Transport Layer Security (TLS). Today the names SSL and TLS are essentially synonyms. However, if you refer to a specific version you should include the correct name, e.g SSL 3.0 or TLS 1.1. As a progression it goes SSL 2.0 < SSL 3.0 < TLS 1.0 < TLS 1.1 < TLS 1.2 < TLS 1.3, where "<" means "precedes".

Current security standards forbid running any SSL version or TLS 1.0 (due to their various flaws). It is recommended to run only TLS 1.2 and TLS 1.3.

TLS was originally developed to run above a connection-oriented protocol, i.e. TCP. Later, TLS modified to run over connectionless protocols like UDP by way of Datagram Transport Layer Security (DTLS).

TLS is a mature protocol, now more than 20 years old, with vast support on a multitude of clients, servers, platforms, and libraries. However, there is some complexity around the cipher suites, the TLS Extensions, and the certificate validation, that regularly introduced reasons ending in non-interoperability. Perhaps the most well-known protocol that uses TLS is the HTTPS protocol, which is the HTTP protocol running over TLS.

Stackoverflow is for programming questions, and that is also true for questions tagged with TLS or SSL. In particular, server configuration questions are off-topic and instead should be asked on ServerFault.

50662 questions
101
votes
3 answers

How to create .pem files for https web server

I'm using the Express framework in Node.js to create a web server. I want to use ssl for the web server's connection. The code to create the https web server is as below. var app = express.createServer({ key: fs.readFileSync('./conf/key.pem'), …
Jeffrey
  • 4,436
  • 9
  • 38
  • 54
100
votes
7 answers

Enabling SSL with XAMPP

I've been following this guide as much as I could http://robsnotebook.com/xampp-ssl-encrypt-passwords . However whenever I browse to a page starting with https the apache server replies 404 Object Not Found. What setting I am missing? Thanks for any…
ColacX
  • 3,928
  • 6
  • 34
  • 36
99
votes
6 answers

OpenSSL: unable to verify the first certificate for Experian URL

I am trying to verify an SSL connection to Experian in Ubuntu 10.10 with OpenSSL client. openssl s_client -CApath /etc/ssl/certs/ -connect dm1.experian.com:443 The problem is that the connection closes with a Verify return code: 21 (unable to…
pdjota
  • 3,163
  • 2
  • 23
  • 33
99
votes
3 answers

How do you use https / SSL on localhost?

I would like to know how to setup SSL on my web application on the localhost. I have no background in doing this, would appreaciate guidance. I already finished implementing my web application and i need it to use https on the localhost or while I…
HShbib
  • 1,811
  • 3
  • 25
  • 47
99
votes
10 answers

Could not create SSL/TLS secure channel, despite setting ServerCertificateValidationCallback

I'm trying to establish SSL/TLS connection to test server with self-signed certificate. Communication through unsecure channel worked without issues. Here is my sample code, which I've written based on this solutions: Allowing Untrusted SSL…
Marcin Konrad Ceglarek
  • 1,442
  • 2
  • 13
  • 20
99
votes
4 answers

Create a OpenSSL certificate on Windows

Since I'm very new to SSL certificates, and the creation and usage of them I figured maybe StackOverflow members can help me out. I'm from Holland, the common way of online payments is by implementing iDEAL. An online payment protocol supported by…
Ben Fransen
  • 10,884
  • 18
  • 76
  • 129
99
votes
12 answers

How to fix curl: (60) SSL certificate: Invalid certificate chain

I get the following error running curl https://npmjs.org/install.sh | sh on Mac OSX 10.9 (Mavericks): install npm@latest curl: (60) SSL certificate problem: Invalid certificate chain More details here: http://curl.haxx.se/docs/sslcerts.html How do…
leafiy
  • 1,100
  • 1
  • 7
  • 8
98
votes
4 answers

How to add SSL certificate to AWS EC2 with the help of new AWS Certificate Manager service

AWS has come up with a new service AWS Certificate Manager. One thing I got from the description is that if we are using this service we don't have to pay for the certificate anymore. They are providing certificates for Elastic Load Balancer (ELB)…
Bhavik Joshi
  • 2,557
  • 6
  • 24
  • 48
98
votes
9 answers

Creating self signed certificate for domain and subdomains - NET::ERR_CERT_COMMON_NAME_INVALID

I followed this tutorial for creating Signed SSL certificates on Windows for development purposes, and it worked great for one of my domains(I'm using hosts file to simulate dns). Then I figured that I have a lot of subdomains, and that would be a…
Zed
  • 5,683
  • 11
  • 49
  • 81
98
votes
13 answers

How to display the Subject Alternative Name of a certificate?

The closest answer that I found is using "grep". > openssl x509 -text -noout -in cert.pem | grep DNS Is there better way to do this? I only prefer command line. Thanks.
user180574
  • 5,681
  • 13
  • 53
  • 94
97
votes
11 answers

Publishing from Visual Studio 2015 - allow untrusted certificates

I am publishing my ASP.NET 5 MVC6 project from Visual Studio 2015. I have imported publish profile from my server. Connection validates successfully, however when I publish my project I have the following…
koryakinp
  • 3,989
  • 6
  • 26
  • 56
97
votes
5 answers

How to Check Subject Alternative Names for a SSL/TLS Certificate?

Is there a way to programmatically check the Subject Alternative Names of a SAN SSL cert? Using, for instance, the following command I can get many info but not all the SANs: openssl s_client -connect www.website.example:443
JoeSlav
  • 4,479
  • 4
  • 31
  • 50
96
votes
9 answers

The author primary signature's timestamp found a chain building issue: UntrustedRoot: self signed certificate in certificate chain

While doing a docker build on my .NET Core project, I got the following error on all my NuGets: 80.19 /app/GradingTool.Tests/GradingTool.Tests.csproj : error NU3028: Package 'Microsoft.EntityFrameworkCore 5.0.0' from source…
Wilson Silva
  • 1,324
  • 1
  • 14
  • 25
96
votes
24 answers

IIS 7 Error "A specified logon session does not exist. It may already have been terminated." when using https

I am trying to create Client Certificates Authentication for my asp.net Website. In order to create client certificates, I need to create a Certificate Authority first: makecert.exe -r -n “CN=My Personal CA” -pe -sv MyPersonalCA.pvk -a sha1 -len…
enb081
  • 3,831
  • 11
  • 43
  • 66
95
votes
4 answers

What 'appid' should I use with netsh.exe?

The netsh command wants an appid (see here): netsh http add sslcert ipport=0.0.0.0:8000 certhash=0000000000003ed9cd0c315bbb6dc1c08da5e6 appid={00112233-4455-6677-8899-AABBCCDDEEFF} How am I supposed to know the GUID netsh wants me to provide?
Brann
  • 31,689
  • 32
  • 113
  • 162