SSL : How to check if current certificate is sha1 or sha2
Got an email notification today by my SSL certificate provider, highlighting the weaknesses of SHA1 SSL certificate( which is roughly used by 90% of the SSL-ed websites out there ) and urging me to regenerate the certificates to SHA2 standard. If not, then sometimes in future, Google Chrome will marked the SHA1 https to be insecure https.
In this tutorial, we will learn how to check if the current SSL certificate is sha1 or sha2
1st method :
Use https://www.sha2sslchecker.com to check your website SSL cert. If your certificate is SHA2 . You will see a big green table with the description
Algorithm Type : sha256WithRSAEncryption
If your certificate is SHA1, then you will see a red table with the description
Algorithm Type : sha1WithRSAEncryption
At the time of writing this tutorial, checking maybank2u.com website with https://www.sha2sslchecker.com/www.maybank2u.com.my/mbb/m2u/common/M2ULogin.do?action=Login will produce a big red flag.
2nd method:
This is to check your website certificate from the command line :
openssl s_client -connect www.yoursite.com:443 < /dev/null 2>/dev/null
| openssl x509 -text -in /dev/stdin | grep "Signature Algorithm"
the result should look like
Signature Algorithm: sha1WithRSAEncryption
for sha1
and
Signature Algorithm: sha256WithRSAEncryption
for sha2
Remember to generate new SSL certificates that are SHA2 standard if your website still using SHA1 Algorithm.
References :
http://googleonlinesecurity.blogspot.com/2014/09/gradually-sunsetting-sha-1.html
See also : SSL : The certificate is not trusted because no issuer chain was provided
By Adam Ng
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+5.3k Golang : Qt update UI elements with core.QCoreApplication_ProcessEvents
+10.2k Golang : How to check if a website is served via HTTPS
+46k Golang : Read tab delimited file with encoding/csv package
+8.1k Golang : Routes multiplexer routing example with regular expression control
+7.4k Golang : Process json data with Jason package
+8.9k Golang : Inject/embed Javascript before sending out to browser example
+11.7k Golang : Verify Linux user password again before executing a program example
+10k Golang : Read file and convert content to string
+8.3k Useful methods to access blocked websites
+30.8k Golang : Interpolating or substituting variables in string examples
+9k Golang : io.Reader causing panic: runtime error: invalid memory address or nil pointer dereference
+22k Golang : How to run Golang application such as web server in the background or as daemon?