Symbian3/SDK/Source/GUID-FB2CAA46-8EBB-5F76-847C-F3B953C9D31C.dita
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Thu, 21 Jan 2010 18:18:20 +0000
changeset 0 89d6a7a84779
permissions -rw-r--r--
Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385

<?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>