Symbian3/SDK/Source/GUID-FB2CAA46-8EBB-5F76-847C-F3B953C9D31C.dita
author Dominic Pinkman <dominic.pinkman@nokia.com>
Tue, 20 Jul 2010 12:00:49 +0100
changeset 13 48780e181b38
parent 0 89d6a7a84779
permissions -rw-r--r--
Week 28 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 1897 and Bug 1522.

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept xml:lang="en" id="GUID-FB2CAA46-8EBB-5F76-847C-F3B953C9D31C"><title>Public Key Cryptography (PKC)</title><prolog><metadata><keywords/></metadata></prolog><conbody><p>Public Key (sometimes called asymmetric) Cryptography allows encrypted messages to be sent without the need to establish a shared secret key. It involves the use of two keys called a <keyword>key pair</keyword>: a <keyword>private</keyword> key and a <keyword>public</keyword> key. The private key is kept secret, and a public key is made publically available. </p> <p>All entities using such a system would typically possess a key pair. They will use these keys either for encryption or decryption. In any case, if one of the keys is used for encryption, then only the other key can be used for decryption. </p> <p>So, in Public Key Cryptography, to send a message in an encrypted form to a receiver, the sender: </p> <ul><li id="GUID-BB81D705-E8E5-5BCE-8597-F6CEEF150EE7"><p>Gets hold of the receiver's public key. </p> </li> <li id="GUID-8BABA1F6-5694-5570-AC10-DAEE81C48255"><p>Encrypts the message with the receiver's public key. </p> </li> <li id="GUID-723C746E-61AF-5CAB-8D7A-F4E286E5D96D"><p>Sends the encrypted message. </p> </li> </ul> <p>The receiver then decrypts the message using its private key. Only the receiver, who has access to the corresponding private key, can decrypt it. </p> <p>That is the basic process used for a pure PKC system. In the real world, however, Public Key Cryptography is typically used in conjunction with traditional symmetric key cryptography. This is done in order to reduce key management problems while at same time taking advantage of the superior speed of the latter. The method for doing this is called a <keyword>digital
        envelope</keyword>: a random symmetric private secret key is generated, the message is encrypted with this secret key using a symmetric algorithm, and then the secret key is encrypted with the receiver's public key using an asymmetric algorithm. </p> <p>The other main use for Public Key Cryptography is in signing (digital signatures): </p> <p><xref href="GUID-5C58F7D1-D672-5B6D-AD48-863EC68F7446.dita">Digital Signatures</xref>  </p> <p>While Public Key Cryptography ensures that only the entity with access to the corresponding key will be able to read the message or could have signed a given message, it gives no assurance that this entity is/are actually the entity they claim to be. This is where certificates come in. Certificates are needed to solve the problem of authentication: </p> </conbody></concept>