sl@0: /* sl@0: * Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies). sl@0: * All rights reserved. sl@0: * This component and the accompanying materials are made available sl@0: * under the terms of the License "Eclipse Public License v1.0" sl@0: * which accompanies this distribution, and is available sl@0: * at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: * sl@0: * Initial Contributors: sl@0: * Nokia Corporation - initial contribution. sl@0: * sl@0: * Contributors: sl@0: * sl@0: * Description: sl@0: * Serialization for public and private keys sl@0: * sl@0: */ sl@0: sl@0: sl@0: /** sl@0: @file sl@0: @internalTechnology sl@0: */ sl@0: sl@0: #ifndef __KEYSTREAMUTILS_H__ sl@0: #define __KEYSTREAMUTILS_H__ sl@0: sl@0: #include sl@0: #ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER sl@0: #include sl@0: #endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER sl@0: #include "fsmarshaller.h" sl@0: sl@0: class CRSAPublicKey; sl@0: class CRSAPrivateKey; sl@0: class CDSAPublicKey; sl@0: class CDSAPrivateKey; sl@0: class RInteger; sl@0: sl@0: EXTERNALIZE_FUNCTION(CRSAPublicKey) sl@0: EXTERNALIZE_FUNCTION(CRSAPrivateKey) sl@0: EXTERNALIZE_FUNCTION(CDSAPublicKey) sl@0: EXTERNALIZE_FUNCTION(CDSAPrivateKey) sl@0: sl@0: void ExternalizeL(const CRSAPublicKey& aData, RWriteStream& aStream); sl@0: void ExternalizeL(const CRSAPrivateKey& aData, RWriteStream& aStream); sl@0: void ExternalizeL(const CDSAPublicKey& aData, RWriteStream& aStream); sl@0: void ExternalizeL(const CDSAPrivateKey& aData, RWriteStream& aStream); sl@0: sl@0: void CreateL(RReadStream& aStream, CRSAPublicKey*& aOut); sl@0: void CreateL(RReadStream& aStream, CRSAPrivateKey*& aOut); sl@0: void CreateL(RReadStream& aStream, CDSAPublicKey*& aOut); sl@0: void CreateL(RReadStream& aStream, CDSAPrivateKey*& aOut); sl@0: sl@0: #ifdef SYMBIAN_KEYSTORE_USE_AUTH_SERVER sl@0: HBufC8* DecryptFromStreamL( RReadStream& aInStream, TPtrC8& aKey ); sl@0: #endif // SYMBIAN_KEYSTORE_USE_AUTH_SERVER sl@0: #endif