sl@0: /* sl@0: * Copyright (c) 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: * sl@0: */ sl@0: sl@0: sl@0: /** sl@0: @file sl@0: @internalComponent sl@0: @released sl@0: */ sl@0: #ifndef CCRYPTOAPI_DUMMYECCHWPLUGINCONFIG_H sl@0: #define CCRYPTOAPI_DUMMYECCHWPLUGINCONFIG_H sl@0: sl@0: #include sl@0: #include sl@0: #include sl@0: #include "cryptospi/cryptospidef.h" sl@0: sl@0: namespace DummyEccHwCrypto sl@0: { sl@0: using namespace CryptoSpi; sl@0: /** sl@0: Creator Name sl@0: */ sl@0: _ROMLIT16(KNokia, "Nokia"); sl@0: /** sl@0: implementation Name sl@0: */ sl@0: _ROMLIT16(KEccCipherDescription, "Ecc"); sl@0: _ROMLIT16(KEccSignerDescription, "EccSigner"); sl@0: sl@0: /** sl@0: ECC Cipher Characteristics sl@0: */ sl@0: static const TInt32 KCryptoPluginEccCipher = 0xA000D697; sl@0: static const TUid KCryptoPluginEccCipherUid = sl@0: { sl@0: KCryptoPluginEccCipher sl@0: }; sl@0: static const TInt32 KECCCipherPaddingModes[] = sl@0: { sl@0: KPaddingModeNone sl@0: }; sl@0: sl@0: static const TAsymmetricCipherCharacteristics KECC_1 = sl@0: { sl@0: KAsymmetricCipherInterface, /* iInterfaceUID */ sl@0: KAlgorithmCipherEcc, /* iAlgorithmUID */ sl@0: KCryptoPluginEccCipher, /* iImplementationUID */ sl@0: &KNokia, /* iCreatorName */ sl@0: EFalse, /* iIsFIPSApproved */ sl@0: ETrue, /* iIsHardwareSupported */ sl@0: 6, /* iMaxConcurrencySupported */ sl@0: &KEccCipherDescription, /* iAlgorithmName */ sl@0: 100, /* iLatency */ sl@0: 90, /* iThroughput */ sl@0: 360, /* iMaximumKeyLength */ sl@0: KECCCipherPaddingModes, /* iSupportedPaddingModes */ sl@0: sizeof(KECCCipherPaddingModes) / sizeof(KECCCipherPaddingModes[0]), /* iPaddingModeNum */ sl@0: 3 sl@0: /* iKeySupportMode */ sl@0: }; sl@0: sl@0: /** sl@0: ECC Signer Characteristics sl@0: */ sl@0: static const TInt32 KCryptoPluginEccSigner = 0xA000D698; sl@0: static const TUid KCryptoPluginEccSignerUid = sl@0: { sl@0: KCryptoPluginEccSigner sl@0: }; sl@0: static const TInt32 KECCSignerPaddingModes[] = sl@0: { sl@0: KPaddingModeNone sl@0: }; sl@0: sl@0: static const TAsymmetricSignatureCharacteristics KECCSigner_1 = sl@0: { sl@0: KSignerInterface, /* iInterfaceUID */ sl@0: KAlgorithmSignerEcc, /* iAlgorithmUID */ sl@0: KCryptoPluginEccSigner, /* iImplementationUID */ sl@0: &KNokia, /* iCreatorName */ sl@0: EFalse, /* iIsFIPSApproved */ sl@0: ETrue, /* iIsHardwareSupported */ sl@0: 6, /* iMaxConcurrencySupported */ sl@0: &KEccSignerDescription, /* iAlgorithmName */ sl@0: 100, /* iLatency */ sl@0: 90, /* iThroughput */ sl@0: 360, /* iMaximumKeyLength */ sl@0: KECCCipherPaddingModes, /* iSupportedPaddingModes */ sl@0: sizeof(KECCCipherPaddingModes) / sizeof(KECCCipherPaddingModes[0]), /* iPaddingModeNum */ sl@0: 3 sl@0: /* iKeySupportMode */ sl@0: }; sl@0: sl@0: /** sl@0: For each crypto algorithm type implemented in this plugin list the characteristics sl@0: */ sl@0: sl@0: /** sl@0: Asymmetric Cipher implementation characteristic table sl@0: */ sl@0: static const TAsymmetricCipherCharacteristics sl@0: * const KAsymmetricCipherCharacteristics[] = sl@0: { sl@0: &KECC_1 sl@0: }; sl@0: sl@0: /** sl@0: Signer implementation characteristic table sl@0: */ sl@0: static const TAsymmetricSignatureCharacteristics sl@0: * const KSignerCharacteristics[] = sl@0: { sl@0: &KECCSigner_1 sl@0: }; sl@0: sl@0: } sl@0: sl@0: #endif //CCRYPTOAPI_DUMMYECCHWPLUGINCONFIG_H