{"id":9986,"date":"2018-01-25T16:30:12","date_gmt":"2018-01-25T16:30:12","guid":{"rendered":"https:\/\/clone4.10pearls.com\/?p=9986"},"modified":"2026-07-30T11:34:48","modified_gmt":"2026-07-30T11:34:48","slug":"certified-based-authentication-using-pki","status":"publish","type":"post","link":"https:\/\/10pearls.com\/uk\/blog\/certified-based-authentication-using-pki\/","title":{"rendered":"Certificate-based authentication using PKI"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-post\" data-elementor-id=\"9986\" class=\"elementor elementor-9986\" data-elementor-post-type=\"post\">\n\t\t\t\t<div class=\"elementor-element elementor-element-49c44fa8 e-flex e-con-boxed e-con e-parent\" data-id=\"49c44fa8\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-462c53f8 list-style-01 elementor-widget elementor-widget-text-editor\" data-id=\"462c53f8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Authentication enables applications to verify that the user trying to access them really is the user they claim to be. Most common web and <a href=\"https:\/\/10pearls.com\/uk\/mobile-app-development\/\">mobile applications<\/a> do this is by using:<\/p><ol><li>User ID and Passwords<\/li><li>Multi-factor Authentication (e.g., ID and password, call, text, email link, key generators)<\/li><li>Certificate Based Authentication (CBA)<\/li><\/ol><p>When 10Pearls is <a href=\"https:\/\/10pearls.com\/uk\/new-product-development\/\">developing new products<\/a> for our clients, we often recommend CBA above the other methods of authentication. Why? Let&#8217;s dive in.<\/p><h3>What is CBA (Certificate Based Authentication)?<\/h3><p>At a high level, CBA works by granting an application the ability to validate and verify the identity of a user based on a proof of identify through trusted Digital Certificates. Most banking applications use CBA behind the scenes and further protect the digital certificate using a fingerprint or a passcode.<\/p><p>Think of a digital certificate like an ID card: It shows who you are, names the authority that issued the card, and confirms that you are the only person who has this card. It also has an expiration date and is tamper-proof.<\/p><p>Why not just use passwords? A number of reasons, including but not limited to: people are notoriously bad at making and using passwords, <a href=\"\/blog\/equifax-breach-means-companys-information-security-strategy\/\">password breaches<\/a> are so common they&#8217;re barely a blip in the news, and of course people compromise passwords every day by writing them down on a sticky note. There are certain other cases when a password alone is not compliant with laws, regulations, and policies. In these cases, CBA is often the better option.<\/p><h3><img fetchpriority=\"high\" decoding=\"async\" class=\"alignright wp-image-9989 size-blog-grid\" src=\"https:\/\/10pearls.com\/uk\/wp-content\/uploads\/2018\/01\/CBA2-700x400.jpg\" alt=\"CBA | Cybersecurity | Washington DC\" width=\"700\" height=\"400\" \/>How does CBA actually work and how is it implemented?<\/h3><p>To break down the process in the simplest possible way, let&#8217;s go back to thinking about a digital certificate as an ID card. Imagine you just turned 17 and were heading to see an R-rated movie. You (the client) are stopped by the usher (the server) who requests proof of your age, and you show him your ID (client certificate). The usher is suspicious, so he asks you to tell him your astrological sign (the challenge) to prove yourself. You answer correctly (the solution) and are given a ticket (the token) to the movie.<\/p><p>A more technical breakdown:<\/p><ol><li>The client presents a certificate to the server<\/li><li>The server confirms that the certificate is valid and trusted and stores it<\/li><li>The server sends back a challenge for the client to solve (related to the client certificate)<\/li><li>The client sends back the solution to the challenge to the server<\/li><li>The server checks the solution and if it is accepted, issues the client a token<\/li><li>The client uses this token with all subsequent calls made to the server<\/li><\/ol><p>To avoid confusion, let&#8217;s define the terms certificate, challenge, solution, and token:<\/p><ul><li>Certificate &#8211; a digital certificate is an electronic document that proves the ownership of a public and private key pair , signed by a trusted third party. The certificate contains information about the key, the identity of the owner (typically including email address), and an expiration date.<\/li><li>Challenge &#8211; The &#8220;Challenge&#8221; is typically a random string generated for each authentication request.<\/li><li>Solution &#8211; The &#8220;Solution&#8221; is actually a digitally signed version of the challenge itself. The digital signature is created using the private key corresponding to the same certificate which was presented to the server. To verify the solution the server combines the challenge, the public key from the certificate, and the solution to determine if the client possesses the private key.<\/li><li>Token &#8211; When the server accepts the solution, it creates an access token for the client. This access token in most cases is a JSON Web Token (JWT), which contains user details and role\/permission information. This token should have expiry and reissue policies depending on the server and application needs. For example, a reasonable policy would include timeouts so that if the token is somehow stolen, it cannot continue to be used endlessly. It would also include the ability to track expired tokens so that if a client presents expired tokens repeatedly its IP address may be blocked or flagged.<\/li><\/ul><p>All major programing languages have modules\/packages for working with CBA, such as OpenSSL, BouncyCastle, Microsoft Crypto API, wolfCrypt, etc. As with any technology, matching the use case to the most suitable technology provides the best return on investment. If you have questions about how to best protect your company&#8217;s applications, <a href=\"https:\/\/10pearls.com\/uk\/get-in-touch\/\">contact us for a security consultation.<\/a><\/p><hr \/><p><img decoding=\"async\" class=\"alignleft wp-image-9994 size-thumbnail\" src=\"https:\/\/10pearls.com\/uk\/wp-content\/uploads\/2018\/01\/imran_suhail-150x150.jpeg\" alt=\"Imran Suhail Ashraf | 10Pearls\" width=\"150\" height=\"150\" srcset=\"https:\/\/10pearls.com\/uk\/wp-content\/uploads\/2018\/01\/imran_suhail-150x150.jpeg 150w, https:\/\/10pearls.com\/uk\/wp-content\/uploads\/2018\/01\/imran_suhail.jpeg 300w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/p><p>Imran Suhail Ashraf is a Technical PM &amp; Architect at 10Pearls.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>In this post, we&#8217;ll talk about certificate-based authentication and how it helps secure web and mobile applications from unauthorized access.<\/p>\n","protected":false},"author":12,"featured_media":9987,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"inline_featured_image":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[49],"tags":[4552],"class_list":["post-9986","post","type-post","status-publish","format-standard","has-post-thumbnail","category-blog","tag-strategy-and-consulting"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.5 (Yoast SEO v27.5) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>What is Certificate-Based Authentication (CBA)?<\/title>\n<meta name=\"description\" content=\"In this post, we&#039;ll talk about certificate-based authentication and how it helps secure web and mobile applications from unauthorized access.\" \/>\n<meta name=\"robots\" content=\"noindex, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<meta property=\"og:locale\" content=\"en_GB\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What is Certificate-Based Authentication (CBA)?\" \/>\n<meta property=\"og:description\" content=\"In this post, we&#039;ll talk about certificate-based authentication and how it helps secure web and mobile applications from unauthorized access.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/10pearls.com\/uk\/blog\/certified-based-authentication-using-pki\/\" \/>\n<meta property=\"og:site_name\" content=\"10Pearls UK\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/10Pearls\/\" \/>\n<meta property=\"article:published_time\" content=\"2018-01-25T16:30:12+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-07-30T11:34:48+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/10pearls.com\/uk\/wp-content\/uploads\/2018\/01\/CBA.jpg\" \/>\n<meta name=\"author\" content=\"Imran Suhail\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"What is Certificate-Based Authentication (CBA)?\" \/>\n<meta name=\"twitter:description\" content=\"In this post, we&#039;ll talk about certificate-based authentication and how it helps secure web and mobile applications from unauthorized access.\" \/>\n<meta name=\"twitter:creator\" content=\"@TenPearls\" \/>\n<meta name=\"twitter:site\" content=\"@TenPearls\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Imran Suhail\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimated reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"What is Certificate-Based Authentication (CBA)?","description":"In this post, we'll talk about certificate-based authentication and how it helps secure web and mobile applications from unauthorized access.","robots":{"index":"noindex","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"og_locale":"en_GB","og_type":"article","og_title":"What is Certificate-Based Authentication (CBA)?","og_description":"In this post, we'll talk about certificate-based authentication and how it helps secure web and mobile applications from unauthorized access.","og_url":"https:\/\/10pearls.com\/uk\/blog\/certified-based-authentication-using-pki\/","og_site_name":"10Pearls UK","article_publisher":"https:\/\/www.facebook.com\/10Pearls\/","article_published_time":"2018-01-25T16:30:12+00:00","article_modified_time":"2026-07-30T11:34:48+00:00","og_image":[{"url":"https:\/\/10pearls.com\/uk\/wp-content\/uploads\/2018\/01\/CBA.jpg","type":"","width":"","height":""}],"author":"Imran Suhail","twitter_card":"summary_large_image","twitter_title":"What is Certificate-Based Authentication (CBA)?","twitter_description":"In this post, we'll talk about certificate-based authentication and how it helps secure web and mobile applications from unauthorized access.","twitter_creator":"@TenPearls","twitter_site":"@TenPearls","twitter_misc":{"Written by":"Imran Suhail","Estimated reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/10pearls.com\/uk\/blog\/certified-based-authentication-using-pki\/#article","isPartOf":{"@id":"https:\/\/10pearls.com\/uk\/blog\/certified-based-authentication-using-pki\/"},"author":{"name":"Imran Suhail","@id":"https:\/\/10pearls.com\/uk\/#\/schema\/person\/17b53886d17bf4348379062215be1e79"},"headline":"Certificate-based authentication using PKI","datePublished":"2018-01-25T16:30:12+00:00","dateModified":"2026-07-30T11:34:48+00:00","mainEntityOfPage":{"@id":"https:\/\/10pearls.com\/uk\/blog\/certified-based-authentication-using-pki\/"},"wordCount":746,"publisher":{"@id":"https:\/\/10pearls.com\/uk\/#organization"},"image":{"@id":"https:\/\/10pearls.com\/uk\/blog\/certified-based-authentication-using-pki\/#primaryimage"},"thumbnailUrl":"https:\/\/10pearls.com\/uk\/wp-content\/uploads\/2018\/01\/CBA.jpg","keywords":["Strategy &amp; consulting"],"articleSection":["Blog"],"inLanguage":"en-GB"},{"@type":"WebPage","@id":"https:\/\/10pearls.com\/uk\/blog\/certified-based-authentication-using-pki\/","url":"https:\/\/10pearls.com\/uk\/blog\/certified-based-authentication-using-pki\/","name":"What is Certificate-Based Authentication (CBA)?","isPartOf":{"@id":"https:\/\/10pearls.com\/uk\/#website"},"primaryImageOfPage":{"@id":"https:\/\/10pearls.com\/uk\/blog\/certified-based-authentication-using-pki\/#primaryimage"},"image":{"@id":"https:\/\/10pearls.com\/uk\/blog\/certified-based-authentication-using-pki\/#primaryimage"},"thumbnailUrl":"https:\/\/10pearls.com\/uk\/wp-content\/uploads\/2018\/01\/CBA.jpg","datePublished":"2018-01-25T16:30:12+00:00","dateModified":"2026-07-30T11:34:48+00:00","description":"In this post, we'll talk about certificate-based authentication and how it helps secure web and mobile applications from unauthorized access.","breadcrumb":{"@id":"https:\/\/10pearls.com\/uk\/blog\/certified-based-authentication-using-pki\/#breadcrumb"},"inLanguage":"en-GB","potentialAction":[{"@type":"ReadAction","target":["https:\/\/10pearls.com\/uk\/blog\/certified-based-authentication-using-pki\/"]}]},{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/10pearls.com\/uk\/blog\/certified-based-authentication-using-pki\/#primaryimage","url":"https:\/\/10pearls.com\/uk\/wp-content\/uploads\/2018\/01\/CBA.jpg","contentUrl":"https:\/\/10pearls.com\/uk\/wp-content\/uploads\/2018\/01\/CBA.jpg","width":1742,"height":2048,"caption":"CBA (Certificate Based Authentication) | Cybersecurity | DC Metro"},{"@type":"BreadcrumbList","@id":"https:\/\/10pearls.com\/uk\/blog\/certified-based-authentication-using-pki\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/10pearls.com\/uk\/"},{"@type":"ListItem","position":2,"name":"Certificate-based authentication using PKI"}]},{"@type":"WebSite","@id":"https:\/\/10pearls.com\/uk\/#website","url":"https:\/\/10pearls.com\/uk\/","name":"10Pearls UK","description":"AI-Powered Software Development Company","publisher":{"@id":"https:\/\/10pearls.com\/uk\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/10pearls.com\/uk\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-GB"},{"@type":"Organization","@id":"https:\/\/10pearls.com\/uk\/#organization","name":"10Pearls","alternateName":"Software development company","url":"https:\/\/10pearls.com\/uk\/","logo":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/10pearls.com\/uk\/#\/schema\/logo\/image\/","url":"https:\/\/10pearls.com\/uk\/wp-content\/uploads\/2025\/07\/10Pearls-Black.png","contentUrl":"https:\/\/10pearls.com\/uk\/wp-content\/uploads\/2025\/07\/10Pearls-Black.png","width":282,"height":107,"caption":"10Pearls"},"image":{"@id":"https:\/\/10pearls.com\/uk\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/10Pearls\/","https:\/\/x.com\/TenPearls","https:\/\/www.linkedin.com\/company\/10pearls\/"],"description":"10Pearls is a leading AI-powered software development company. We build intelligent digital products for healthcare, finance, retail, and more.","email":"info@10pearls.com","telephone":"+44 7957 620104","legalName":"10Pearls"},{"@type":"Person","@id":"https:\/\/10pearls.com\/uk\/#\/schema\/person\/17b53886d17bf4348379062215be1e79","name":"Imran Suhail","image":{"@type":"ImageObject","inLanguage":"en-GB","@id":"https:\/\/secure.gravatar.com\/avatar\/5803d7cd56d6518e9db4c780f5e49fa9821e6e15e694a202bbd425b414ecc942?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/5803d7cd56d6518e9db4c780f5e49fa9821e6e15e694a202bbd425b414ecc942?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5803d7cd56d6518e9db4c780f5e49fa9821e6e15e694a202bbd425b414ecc942?s=96&d=mm&r=g","caption":"Imran Suhail"}}]}},"_links":{"self":[{"href":"https:\/\/10pearls.com\/uk\/wp-json\/wp\/v2\/posts\/9986","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/10pearls.com\/uk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/10pearls.com\/uk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/10pearls.com\/uk\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/10pearls.com\/uk\/wp-json\/wp\/v2\/comments?post=9986"}],"version-history":[{"count":1,"href":"https:\/\/10pearls.com\/uk\/wp-json\/wp\/v2\/posts\/9986\/revisions"}],"predecessor-version":[{"id":215514,"href":"https:\/\/10pearls.com\/uk\/wp-json\/wp\/v2\/posts\/9986\/revisions\/215514"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/10pearls.com\/uk\/wp-json\/wp\/v2\/media\/9987"}],"wp:attachment":[{"href":"https:\/\/10pearls.com\/uk\/wp-json\/wp\/v2\/media?parent=9986"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/10pearls.com\/uk\/wp-json\/wp\/v2\/categories?post=9986"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/10pearls.com\/uk\/wp-json\/wp\/v2\/tags?post=9986"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}