<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Lumena Mukherjee</title>
    <description>The latest articles on DEV Community by Lumena Mukherjee (@lumena).</description>
    <link>https://dev.to/lumena</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F370969%2F19116534-9285-477a-927f-b23104a73109.jpg</url>
      <title>DEV Community: Lumena Mukherjee</title>
      <link>https://dev.to/lumena</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/lumena"/>
    <language>en</language>
    <item>
      <title>What Is a Code Signing and How Does It Work?</title>
      <dc:creator>Lumena Mukherjee</dc:creator>
      <pubDate>Mon, 28 Dec 2020 08:58:38 +0000</pubDate>
      <link>https://dev.to/lumena/what-is-a-code-signing-and-how-does-it-work-3a76</link>
      <guid>https://dev.to/lumena/what-is-a-code-signing-and-how-does-it-work-3a76</guid>
      <description>&lt;p&gt;A code or software can easily be tampered with by an attacker, and the unsuspecting end-users would be none the wiser. Hashing is used to check the integrity of files. It works as long as the hacker doesn’t compromise your website and the hashes along with it. Consider a scenario where a malicious file mimicking your program is uploaded along with the hash of the compromised software. A site visitor can easily get tricked into believing that the file was uploaded by a genuine developer. Once the visitor downloads and executes the application, the modified file then carries out some malicious activity. This is damaging to the user as well as the developer’s reputation. Most new developers and organizations struggle to get enough users to download and run their applications. Building trust and reputation takes time, and using a code signing certificate not only assures file integrity but can also circumvent Microsoft SmartScreen ‘Unknown Publisher’ warnings.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--dIavasQg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://sectigostore.com/page/wp-content/uploads/2019/10/code-signing-security-warning-1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--dIavasQg--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://sectigostore.com/page/wp-content/uploads/2019/10/code-signing-security-warning-1.png" alt="Security Warning"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let’s take a look at how code signing works and delve deeper into the purpose it solves.&lt;/p&gt;

&lt;h2&gt;How Does a Code Signing Certificate Work?&lt;/h2&gt;

&lt;p&gt;Using a &lt;a href="https://sectigostore.com/code-signing"&gt;code signing certificate&lt;/a&gt; enables a developer to place a digital signature on an application or an executable so that end users are able to verify the authenticity of the publisher and the file integrity before installing and running the program on their systems. If a program is signed, an attacker can no longer manipulate the content since it will not clear the integrity check and the signature becomes invalid. If we attempt to understand how code signing works, there are two sides to consider – the steps taken by the publisher to sign the code and what happens at the customer’s end.
At the developer’s end, the first step is to obtain the code signing certificate from a reputed certificate authority (CA) and the validation process typically takes a few days. Next, the developer generates a one-way hash of the program executable and encrypts it using the private key associated with the certificate. The hash and the certificate are bundled along with the application before releasing it to end-users. &lt;/p&gt;  

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--VbQvVGnn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://sectigostore.com/page/wp-content/uploads/2019/10/code-signing-process.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VbQvVGnn--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://sectigostore.com/page/wp-content/uploads/2019/10/code-signing-process.gif" alt="Code-Signing Process"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;At the customer’s end, the user decrypts the hash using the public key and compares this value to a newly generated hash of the downloaded executable. If a match occurs, it indicates that the application has not been tampered with since it was last signed and it is safe to be installed and executed. &lt;/p&gt;
&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--VoausNWA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_66%2Cw_880/https://sectigostore.com/page/wp-content/uploads/2019/10/code-verification-process.gif" alt="Code Verification Process"&gt;
&lt;h2&gt;Types of Code Signing Certificates&lt;/h2&gt;
&lt;p&gt;There are two types of code signing certificates offered by most CAs – &lt;a href="https://sectigostore.com/code-signing/sectigo-code-signing-certificate"&gt;standard code signing&lt;/a&gt; and &lt;a href="https://sectigostore.com/code-signing/sectigo-ev-code-signing-certificate"&gt;EV code signing certificates.&lt;/a&gt; The primary difference between the two lies in how they deal with the Microsoft SmartScreen filter. With the standard code signing certificate, they continue to appear up until the developer builds their reputation. Whereas with EV code signing that thoroughly verifies the developer’s identity, these warning messages are removed.&lt;/p&gt;

&lt;h2&gt;In Conclusion&lt;/h2&gt;

&lt;p&gt;Hopefully, you now have a better understanding of code signing certificates and where they’re often used. When it comes to opting for a &lt;a href="https://sectigostore.com/page/how-do-i-generate-a-self-signed-code-signing-certificate/"&gt;self-signed code signing certificate&lt;/a&gt;, note that a self-signed certificate will not work outside of your network. It is because browsers and machines outside your network don’t have your public key in their trust root store. Choosing between a standard code signing certificate and an EV code signing certificate also depends on your specific requirements and financial feasibility. &lt;/p&gt;

</description>
      <category>cybersecurity</category>
      <category>security</category>
      <category>codenewbie</category>
      <category>ssl</category>
    </item>
    <item>
      <title>Difference Between Digital Signature and Digital Certificate </title>
      <dc:creator>Lumena Mukherjee</dc:creator>
      <pubDate>Thu, 30 Jul 2020 07:12:54 +0000</pubDate>
      <link>https://dev.to/lumena/difference-between-digital-signature-and-digital-certificate-1hie</link>
      <guid>https://dev.to/lumena/difference-between-digital-signature-and-digital-certificate-1hie</guid>
      <description>&lt;p&gt;
Starting with man-in-the-middle attacks to fake illegitimate websites, attackers have often taken it upon themselves to sniff out our credentials, conversations, or other sensitive details. Fortunately, we have technologies that we can leverage to secure our communications. With HTTPS, it is now possible to set up a secure connection between two endpoints. Similarly, it is possible to digitally sign our emails, software, etc. Digital certificates and digital signatures provide a way to encrypt our data and assure its legitimacy in terms of who is sending the message or if the server you’re connecting to is who it says it is. Let’s understand what they are and the role they play in securing our communication.
&lt;/p&gt;

&lt;h2&gt;What is a Digital Signature?&lt;/h2&gt;

&lt;p&gt; The National Institute of Standards and Technology (NIST) issued the Digital Signature Standard (DSS) in 1991. It uses the Digital Signature Algorithm (DSA), a Federal Information Processing Standard, based on &lt;a href="https://sectigostore.com/blog/what-is-pki-a-laymans-guide-to-public-key-infrastructure/"&gt;public-key cryptography&lt;/a&gt;. A digital signature is a cryptographic technique that provides message integrity, authentication, and non-repudiation to a message, software, or digital document. It validates the sender’s identity and assures that the message is free from any undesirable alterations. A digital signature is associated with two keys – public and private. The public key is used to validate the sender's authenticity, and the private key is used to create the signature itself.
Presume two friends, Alice and Todd, want to communicate securely and ensure that the message truly is coming from the other, without being modified. Let’s see how this would work if Alice were to send a message to Todd.
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt; Alice generates a one-way hash of the message (if she were signing a software, she would hash the executable file) and encrypts it using her private key.&lt;/li&gt;
&lt;li&gt;Next, the message along with the digital signature is transmitted.&lt;/li&gt;
&lt;li&gt;Todd decrypts the hash using Alice’s public key. This step verifies that Alice indeed sent the message since only she could encrypt the message with the corresponding private key.&lt;/li&gt;
&lt;li&gt;Todd then creates a new hash of the message and compares it with the one generated by Alice. The two values must match in order to maintain integrity.&lt;/li&gt;
&lt;li&gt;If they do, it indicates the message hasn’t been tampered with since Alice last signed it.&lt;/li&gt;
&lt;/ul&gt;


&lt;h2&gt;What is a Digital Certificate?&lt;/h2&gt;

&lt;p&gt;
Digital certificates, also known as SSL/TLS certificates, are a type of X.509 certificates. They are used to establish an encrypted communication channel between the client and the server. Every time you visit a site with a padlock running over HTTPS, you’re communicating via a secured link that uses SSL certificates. According to &lt;a href="https://www.prnewswire.com/news-releases/global-certificate-authority-market-forecast-to-2023---growing-iot-trend-across-industry-verticals-300712081.html"&gt;Research and Markets&lt;/a&gt;, the global market value of digital certificates is projected to grow 10% annually to $123.8 million in 2023.
These certificates are typically issued by trusted third party certificate authorities (CA). The time and effort required depends upon the validation level of the certificate (domain validation, organization validation, or extended validation). The CA assesses and verifies the evidence submitted before signing and sending a certificate to the applicant.
&lt;/p&gt;

&lt;h2&gt;Digital Signature vs. Digital Certificate&lt;/h2&gt;

&lt;p&gt;Though both digital certificates and digital signatures are both used to communicate securely, one secures the actual data, and the other establishes trustworthiness. Let’s take a look at the table below to better understand their similarities and differences:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;tr&gt;
&lt;th&gt;Digital Signature&lt;/th&gt;
&lt;th&gt;Digital Certificate&lt;/th&gt;
&lt;th&gt;Comparison Criteria&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;Purpose&lt;/th&gt;
&lt;th&gt;A digital signature authenticates the signer claiming to send or create the message or software.&lt;/th&gt;
&lt;th&gt;A digital certificate is a file in X.509 format that’s typically used on websites to identify the site and establish trust in its users. &lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt; 
&lt;th&gt;Security&lt;/th&gt;
&lt;th&gt;A digital signature is the actual electronic authentication mechanism that authenticates the signer, assures integrity, and provides non-repudiation.&lt;/th&gt;
&lt;th&gt;A digital certificate is used to bind the signature to an entity. It provides authentication and security.&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt; 
&lt;th&gt;Process&lt;/th&gt;
&lt;th&gt;The message is hashed and encrypted by the signer using a private key before it is sent. The receiver uses the signer’s public key to decrypt and read the message. They can also hash the message again and compare the two hashes to verify message integrity.&lt;/th&gt;
&lt;th&gt;After the CA conducts its vetting process and issues the certificate, the applicant needs to install it and configure their client or server to enable HTTPS. Once that’s in place, the connection itself is established, starting with an SSL/TLS handshake.&lt;/th&gt;
&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;

</description>
      <category>security</category>
      <category>certificate</category>
      <category>signature</category>
      <category>ssl</category>
    </item>
    <item>
      <title>SSL/TLS Handshake Failed Errors —  Its Types and Learning How to Fix Them </title>
      <dc:creator>Lumena Mukherjee</dc:creator>
      <pubDate>Tue, 30 Jun 2020 08:44:26 +0000</pubDate>
      <link>https://dev.to/lumena/ssl-tls-handshake-failed-errors-its-types-and-learning-how-to-fix-them-4c66</link>
      <guid>https://dev.to/lumena/ssl-tls-handshake-failed-errors-its-types-and-learning-how-to-fix-them-4c66</guid>
      <description>&lt;p&gt;Irrespective of whether you’re an end-user or a site owner, running into SSL errors can be extremely disruptive to the overall browsing experience, and they do very little to boost trust and confidence in a website. But here’s the pickle – the site might be loading correctly for a majority of client browsers indicating an issue with your client, or it could be a server issue causing the error. In this article, we’ll explore the problems that can potentially cause the fault on both sides, but first, let’s get a brief overview of how SSL handshake works.&lt;/p&gt;

&lt;h2&gt;What is the SSL/TLS Handshake?&lt;/h2&gt;

&lt;p&gt;Whenever your browser attempts to connect to a website that employs an &lt;a href="https://sectigostore.com/page/what-is-ssl-server-certificate/"&gt; SSL/TLS certificate&lt;/a&gt; for encrypted communication, it does a handshake to agree on the connection parameters that’ll be used during communication.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--iaHtAKIJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://sectigostore.com/blog/wp-content/uploads/2020/05/SSL-TLS-Handshake-e1589279044538.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--iaHtAKIJ--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://sectigostore.com/blog/wp-content/uploads/2020/05/SSL-TLS-Handshake-e1589279044538.png" alt="SSL/TLS Handshake"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Let’s do a quick study of the negotiation process: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;After the three-way handshake, the SSL/TLS handshake begins with an exchange of hello messages between the client and the server.&lt;/li&gt;
&lt;li&gt;The hello messages start the protocol negotiation, encryption standards supported by both ends are communicated, and the server shares its certificate.&lt;/li&gt;
&lt;li&gt;The client establishes the validity of the certificate, and once the verification process completes, it generates a pre-master secret based on the public key of the server (obtained from the certificate previously shared). The client key exchange completes once this secret key is encrypted using the server’s public key and shared with the server.&lt;/li&gt;
&lt;li&gt;Next, the symmetric key is calculated independently on both ends, depending on the value of the pre-master key.&lt;/li&gt;
&lt;li&gt;Both the client and the server send a change cipher spec message to indicate that going forward, the data transmission will proceed using symmetric encryption.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;Probable Causes of SSL/TLS Handshake Failed Error and How to Fix Them?&lt;/h2&gt;

&lt;p&gt;TLS handshake might not be the easiest process around, and though there’s a possibility that it might fail and you’d be left with an error, there’s a very good chance to fix that and get going with a secure communication channel. Website visitors can't fix all errors since some arise due to issues on the server that needs to be taken care of by the site owner. &lt;/p&gt;

&lt;h3&gt;Client Errors&lt;/h3&gt;

&lt;p&gt;Most of the client-side errors are trivial and can be easily fixed with an update or a small change in settings. Nevertheless, even these minor glitches can interrupt the entire handshake process, so let’s go over what they are and how to resolve them.&lt;/p&gt;

&lt;h4&gt;Incorrect System Time &lt;/h4&gt;

&lt;p&gt;Because SSL/TLS certificates come with a specific time duration for which they’re valid if your system date and time settings are not correct, then that could be causing the handshake to fail. Fixing it is fairly simple since all you need to do is set the system time correctly.&lt;/p&gt;

&lt;h4&gt;Browser Error&lt;/h4&gt;

&lt;p&gt;Sometimes it’s just your browser acting weird. Solution? Try a different one. Determining the exact plugin that might be misfiring, or the particular misconfiguration that’s causing the connection to a legitimate site to fail, can be a tad bit difficult. Once you’re certain that it is a browser issue and rule the others out, you can simply reset the browser to default settings and disable plugins (do this one at a time to bring out the plugin getting in the way).&lt;/p&gt;

&lt;h4&gt;Man-in-the-Middle&lt;/h4&gt;

&lt;p&gt;A man in the middle attack is said to occur if a hacker intercepts your traffic to steal data. However, a firewall or antivirus that inspects traffic to weed out anything malicious or some configuration on an edge device on the server-side network could as easily be the culprit causing the connection to fail. Depending on where the issue arises, the fix could either be on the client-side or the server-side. If it is on the client-side, never disable your firewall or antivirus instead create an exception for the site or add it to a whitelist.&lt;/p&gt;

&lt;h3&gt;Server-Side Errors&lt;/h3&gt;

&lt;p&gt;The majority of the SSL errors involve settings that need to be tweaked on the server or are a result of server-side issues. While most can be fixed with a simple update, some errors are best left alone, especially when it comes to older deprecated protocols supported by the client. Let’s take a look:&lt;/p&gt;

&lt;h4&gt;Protocol Mismatch&lt;/h4&gt;

&lt;p&gt;This error indicates that the version of TLS being used or supported by the client and the server do not match. The error can occur on either side, but the important thing to remember is always to use and support the latest protocol versions (TLS 1.2, TLS 1.3) as using an older version is never a good idea. For example, if the client browser supports TLS 1.1, and the server uses TLS 1.2, the client needs to upgrade the browser or add support for the latest version.&lt;/p&gt;

&lt;h4&gt;Cipher Suite Mismatch&lt;/h4&gt;

&lt;p&gt;Most websites have support for various cipher suites so it can communicate with most clients and can find an encryption standard they can agree upon. However, when this fails to happen, we usually end up with a cipher suite mismatch. As with protocol versions, the idea is to move forward and support the latest versions because they typically offer more security.&lt;/p&gt;

&lt;h4&gt;Incorrect SSL/TLS Certificate&lt;/h4&gt;

&lt;p&gt;If your site gets flagged as an insecure connection on a client browser, it could potentially indicate a problem with the SSL certificate, such as an expired certificate, a name mismatch, or a broken chain of trust.&lt;/p&gt;

&lt;h5&gt;Incorrect Host Name&lt;/h5&gt;

&lt;p&gt;A hostname mismatch occurs when the common name on the certificate is different from the hostname. Typical fixes involve reissuing the certificate or using a wildcard cert.&lt;/p&gt;

&lt;h5&gt;Incorrect Certificate Chain&lt;/h5&gt;

&lt;p&gt;When a browser receives the server certificate, it needs to be able to trace its way back to the root CA in its trust store. If this fails, it could be due to a missing intermediate root certificate. Depending on where you purchase your cert from, the CA bundle should be available on the site or shared with you via email. You can use an &lt;a href="https://sectigostore.com/ssl-tools/ssl-checker.php"&gt; SSL checker &lt;/a&gt; to verify that you’ve installed your certificate correctly on the web server by entering the IP or the URL.&lt;/p&gt;

&lt;h5&gt;Expired/Revoked Certificates&lt;/h5&gt;

&lt;p&gt;The maximum validity period for an SSL/TLS certificate is two years (plus three months at most if you’re carrying over from your previous certificate). Failure to renew your certificates on time can lead to this error, and the solution is to get a valid certificate issued and installed on your server. &lt;/p&gt;

&lt;h5&gt;Self-Signed Replacements&lt;/h5&gt;

&lt;p&gt;When it comes to self-signed certificates, while they’re commonly used on internal networks, using them on the public internet will cause browser errors. Clients do not usually have their root CA in their trust store by default, and it needs to be added manually before the browser can trust the certificate.&lt;/p&gt;

&lt;h2&gt;In Conclusion&lt;/h2&gt;

&lt;p&gt;The security impact of visiting a site with an invalid SSL certificate can be significant because the communication is unencrypted, and an attacker can easily intercept and read all the information. Additionally, it could be indicative of a malicious website that can give you a whole world of headaches. If the site you’re visiting is unable to offer you a safe browsing experience, perhaps you’re better off not visiting it at all. As a site owner, every time a user lands on your page and sees an insecure connection warning or SSL error messages, your brand takes a hit. It is, therefore, practical to invest in a certificate from a trusted CA with access to a support team to help fix any installation issues or errors. &lt;/p&gt;

</description>
      <category>security</category>
      <category>ssl</category>
      <category>tls</category>
      <category>sslerror</category>
    </item>
    <item>
      <title>Client Certificate vs Server Certificate</title>
      <dc:creator>Lumena Mukherjee</dc:creator>
      <pubDate>Wed, 17 Jun 2020 07:19:18 +0000</pubDate>
      <link>https://dev.to/lumena/client-certificate-vs-server-certificate-2ea9</link>
      <guid>https://dev.to/lumena/client-certificate-vs-server-certificate-2ea9</guid>
      <description>&lt;h2&gt;Let’s take a closer look at client and server certificates, and the difference between the two.
&lt;/h2&gt;

&lt;p&gt;
In recent times if you’ve tried to access a website and not been greeted by a “Not Secure” warning, you’ve used a digital certificate. Every website that doesn’t have an SSL/TLS certificate installed on the web server is flagged by Google and throws up a security warning. SSL certificates are a type of X.509 certificate that’s used for encrypted browsing. Both client and server certificates help us to communicate securely using an encrypted channel. 
Let’s get a better understanding of the specific purpose that they solve before getting started with a discussion on their differences.
&lt;/p&gt;

&lt;h2&gt; What’s a Client SSL Certificate? &lt;/h2&gt;

&lt;p&gt;
Client certificates are used to authenticate the client and validate their identity before granting access to the server. Client certificates prove their identity to a remote server and are based on the X.509 format. X.509 is a standard that defines the format for public-key certificates, verifies the identity of the certificate holder, and maps a public key with the user, computer, or service. 
Consider a scenario in an organization’s corporate network where a central server holds some confidential files. Even if accessing those files require a password, what’s the assurance that an attacker won’t be able to brute force and gain access? Using a client certificate solves this problem as the identity of the client or user is not assessed on the basis of whether they know a password, but it relies on the systems they use. But if a user requests access from a client machine that has permission and whose identity has been validated, the server knows it’s talking to a legitimate entity. Adding another layer of security, such as applying multi-factor authentication, strengthens the defenses against any potential attacks.
&lt;/p&gt;

&lt;h2&gt;What’s a Server SSL Certificate?&lt;/h2&gt;

&lt;p&gt;Server certificates serve a twofold purpose of authenticating the server's identity and providing a secure, encrypted communication channel between the server and the connecting client. &lt;a href="https://sectigostore.com/page/what-is-ssl-server-certificate/"&gt;Server certificates&lt;/a&gt; are referred to more commonly as SSL/TLS certificates and are responsible for upgrading an HTTP to an HTTPS connection. Whenever you type in a website in the address bar or connect to a system by using its hostname, you’re making use of a server certificate.
&lt;/p&gt;

&lt;h2&gt;Difference Between Client Certificate vs Server Certificate &lt;/h2&gt;

&lt;p&gt;Now that we have an idea about what these certificates do, it’s time to draw a comparison to better understand them relative to each other. Aside from the evident difference in terms of which party they authenticate, client or server, they differ greatly in terms of their operation. Server certificates are used to encrypt the information exchanged between the client browser and the web server. However, client certificates do not encrypt any data and are solely responsible for authenticating the client’s identity to the server.
The table below summarizes the similarities and the differences between the client certificate and the server certificate:
&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;tr&gt;
&lt;th&gt;Client Certificate&lt;/th&gt;
&lt;th&gt;Server Certificate&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;A client certificate is used to identify a client or a user and authenticate them to the server.&lt;/th&gt;
&lt;th&gt;A server certificate authenticates the server’s identity to the client.&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;Client certificates do not encrypt any data. They only serve as a more efficient authentication mechanism than passwords.&lt;/th&gt;
&lt;th&gt;Server certificates encrypt the data-in-transit to ensure its confidentiality.&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;Client certificates are based on the public key infrastructure (PKI).&lt;/th&gt;
&lt;th&gt;Server certificates are also based on PKI.&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;Object identifier (OID) for client authentication is 1.3.6.1.5.5.7.3.2.&lt;/th&gt;
&lt;th&gt;OID for server authentication is 1.3.6.1.5.5.7.3.1.&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;Client certificates have an “Issued To” and an “Issued By” section.
&lt;/th&gt;
&lt;th&gt;Server certificates also have the same two fields.&lt;/th&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;th&gt;Example: E-mail client certificates&lt;/th&gt;
&lt;th&gt;Example: SSL certificates&lt;/th&gt;
&lt;/tr&gt;
&lt;/table&gt;&lt;/div&gt;

</description>
      <category>security</category>
      <category>ssl</category>
    </item>
    <item>
      <title>How to Solve ERR_SSL_PROTOCOL_ERROR in Google Chrome</title>
      <dc:creator>Lumena Mukherjee</dc:creator>
      <pubDate>Thu, 14 May 2020 12:07:44 +0000</pubDate>
      <link>https://dev.to/lumena/how-to-solve-errsslprotocolerror-in-google-chrome-4afc</link>
      <guid>https://dev.to/lumena/how-to-solve-errsslprotocolerror-in-google-chrome-4afc</guid>
      <description>&lt;p&gt;Most of us have run into certificate errors, sometimes even when we try to access legitimate and well-known sites. If a recent disruption in accessing a website made you look around frantically for fixes to resolve ERR_SSL_PROTOCOL_ERROR in your Chrome browser, there might be some tips that can eliminate this issue and restore your access. 
What causes this error? There can be several reasons for it on the client-side as well as server misconfiguration errors. However, we’re going to focus on what can be done as an end-user to resolve them instead of breaking our heads over what’s causing it. Let’s get started!
&lt;/p&gt;

&lt;h2&gt;TROUBLESHOOTING: ERR_SSL_PROTOCOL_ERROR in Your Chrome Browser
&lt;/h2&gt;

&lt;p&gt;The first step, before you even attempt to fix the error, is to use the &lt;a href="https://sectigostore.com/ssl-tools/ssl-checker.php"&gt;SSL Checker&lt;/a&gt; tool to verify that the certificate was installed correctly on the web server you’re trying to access. There could be a name mismatch or a broken chain of trust on the server’s end, and there’s not much that you can do as a site visitor.  Having said that, if the issue requires a client-side fix, try the solutions one after the other, and with any luck, one of them should work for you.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;h3&gt;Set the System Date &amp;amp; Time Correctly
&lt;/h3&gt;
&lt;/li&gt;
&lt;p&gt;Because SSL/TLS certificates come with a specific time duration for which they’re valid if your system date and time settings are not correct, then that could be causing the handshake to fail. Fixing it is fairly simple since all you need to do is set the system time correctly.&lt;/p&gt;
&lt;li&gt;
&lt;h3&gt;Clear Chrome’s Cache and Cookies
&lt;/h3&gt;
&lt;/li&gt;
&lt;p&gt;Corrupted browsing data can sometimes cause error messages like ERR_SSL_PROTOCOL_ERROR to appear in Chrome. If configuring the system date and time did not resolve the issue, try clearing Chrome’s cache and cookies. To do so, press Ctrl + Shift + Delete keys on the keyboard. If erasing the cache and deleting cookies didn’t help resolve this issue, move on to the next one.&lt;/p&gt;
&lt;li&gt;
&lt;h3&gt;Clear the SSL State
&lt;/h3&gt;
&lt;/li&gt;
&lt;p&gt;Every time you connect to a website, setting up a new SSL connection takes time. SSL certificates are cached and stored on our local machines for quicker retrieval, and they remain there till we shut down our systems. This can lead to the certificate getting corrupted, or any changes in the actual server certificate could lead to this error as you’d still be working on the cached version. You can clear the SSL state which can help us to eliminate this issue by following the steps below: 
Go to the start menu, type in inetcpl.cpl. On the dialog box named Internet Properties that pops up, go to the content tab and Clear SSL State. 
&lt;/p&gt;
&lt;li&gt;
&lt;h3&gt;Disable the QUIC Protocol
&lt;/h3&gt;
&lt;/li&gt;
&lt;p&gt;QUIC (Quick UDP Internet Connections) is Google’s experimental general-purpose transport layer network protocol. On the Chrome browser, go to chrome://flags, and search for ‘experimental QUIC protocol’ in the search field. If enabled (by default), disable this setting and restart the browser. &lt;/p&gt;
&lt;li&gt;
&lt;h3&gt;Delete or Reset Hosts File to Default Settings
&lt;/h3&gt;
&lt;/li&gt;
&lt;p&gt;Unusual modifications to the hosts file can cause your traffic to be redirected and can cause error messages to appear. Deleting them or reverting them to the default settings can help us to fix this error.  
In Windows, you can access the hosts file by typing in – C:\Windows\System32\drivers\etc in the search space the Run program (Windows key+R). Linux users can find the hosts file in /etc/hosts, and iOS users can look in the /private/etc/hosts directory. &lt;/p&gt;
&lt;li&gt;
&lt;h3&gt;Update Your OS and Browser
&lt;/h3&gt;
&lt;/li&gt;
&lt;p&gt;Outdated applications can not only be insecure but may also have compatibility issues that can be the source of endless troubles. Installing the latest updates and patches for your operating system, as well as your browser will keep your system secure and may help remove this error. &lt;/p&gt;
&lt;li&gt;
&lt;h3&gt;Disable Chrome Plugins or Browser Extensions
&lt;/h3&gt;
&lt;/li&gt;
&lt;p&gt;If you can access the website in incognito mode, there’s a very good chance that one or a few plugins or browser extensions could be interfering and responsible for the SSl error. Go to chrome://extensions/ and disable each, one at a time, and try accessing the site. On finding the extension that’s causing the error, you can choose to remove it or keep it disabled. &lt;/p&gt;
&lt;/ol&gt;

&lt;h2&gt;Wrapping Up
&lt;/h2&gt;

&lt;p&gt;If all else fails, you can temporarily turn off your antivirus or firewall since these can sometimes block connections due to websites using outdated protocol versions. However, it is not a recommended practice to disable your firewall or to disable SSL warnings as there may be serious security implications, but it might temporarily let you access the site. 
&lt;br&gt;&lt;br&gt;Hopefully, one of the above fixes cleared up the error message for you to give you an uninterrupted and safe browsing experience. &lt;/p&gt;

</description>
      <category>ssl</category>
      <category>sslerror</category>
      <category>tls</category>
      <category>security</category>
    </item>
  </channel>
</rss>
