Show / Hide Table of Contents

    Class KeyManager

    Definition

    Namespace:
    Tizen.Security.SecureRepository
    Assembly:
    Tizen.Security.SecureRepository.dll
    API Level:
    3

    This class provides the methods for storing, retrieving, and creating keys.

    public class KeyManager : Manager
    Inheritance
    Object
    Manager
    KeyManager

    Methods

    View Source

    CreateAesKey(Int32, String, Policy)

    Creates the AES key and stores it inside the secure repository based on each policy.

    Declaration
    public static void CreateAesKey(int size, string keyAlias, Policy policy)
    Parameters
    Type Name Description
    Int32 size

    The size of the key strength to be created. 128, 192 and 256 are supported.

    String keyAlias

    The name of key to be stored.

    Policy policy

    The policy about how to store the key securely.

    Remarks

    If the password in policy is provided, the key is additionally encrypted with the password in policy.

    Exceptions
    Type Condition
    ArgumentNullException

    The keyAlias or policy is null.

    ArgumentException

    The key size is invalid. keyAlias is in the invalid format.

    InvalidOperationException

    The key with privateKeyAlias or publicKeyAlias does already exist.

    API Level: 3
    View Source

    CreateDsaKeyPair(Int32, String, String, Policy, Policy)

    Creates the DSA private/public key pair and stores them inside the secure repository based on each policy.

    Declaration
    public static void CreateDsaKeyPair(int size, string privateKeyAlias, string publicKeyAlias, Policy privateKeyPolicy, Policy publicKeyPolicy)
    Parameters
    Type Name Description
    Int32 size

    The size of key strength to be created. 1024, 2048, 3072, and 4096 are supported.

    String privateKeyAlias

    The name of private key to be stored.

    String publicKeyAlias

    The name of public key to be stored.

    Policy privateKeyPolicy

    The policy about how to store a private key securely.

    Policy publicKeyPolicy

    The policy about how to store a public key securely.

    Remarks

    If the password in policy is provided, the key is additionally encrypted with the password in policy.

    Exceptions
    Type Condition
    ArgumentNullException

    Any of argument is null.

    ArgumentException

    The size is invalid. privateKeyAlias or publicKeyAlias is invalid format.

    InvalidOperationException

    The key with privateKeyAlias or publicKeyAlias does already exist.

    API Level: 3
    View Source

    CreateEcdsaKeyPair(EllipticCurveType, String, String, Policy, Policy)

    Creates the ECDSA private/public key pair and stores them inside secure repository based on each policy.

    Declaration
    public static void CreateEcdsaKeyPair(EllipticCurveType type, string privateKeyAlias, string publicKeyAlias, Policy privateKeyPolicy, Policy publicKeyPolicy)
    Parameters
    Type Name Description
    EllipticCurveType type

    The type of elliptic curve of ECDSA.

    String privateKeyAlias

    The name of private key to be stored.

    String publicKeyAlias

    The name of public key to be stored.

    Policy privateKeyPolicy

    The policy about how to store a private key securely.

    Policy publicKeyPolicy

    The policy about how to store a public key securely.

    Remarks

    If the password in policy is provided, the key is additionally encrypted with the password in policy.

    Exceptions
    Type Condition
    ArgumentNullException

    Any of argument is null.

    ArgumentException

    The elliptic curve type is invalid. privateKeyAlias or publicKeyAlias is in the invalid format.

    InvalidOperationException

    The key with privateKeyAlias or publicKeyAlias does already exist.

    API Level: 3
    View Source

    CreateRsaKeyPair(Int32, String, String, Policy, Policy)

    Creates the RSA private/public key pair and stores them inside the secure repository based on each policy.

    Declaration
    public static void CreateRsaKeyPair(int size, string privateKeyAlias, string publicKeyAlias, Policy privateKeyPolicy, Policy publicKeyPolicy)
    Parameters
    Type Name Description
    Int32 size

    The size of key strength to be created. 1024, 2048, and 4096 are supported.

    String privateKeyAlias

    The name of private key to be stored.

    String publicKeyAlias

    The name of public key to be stored.

    Policy privateKeyPolicy

    The policy about how to store a private key securely.

    Policy publicKeyPolicy

    The policy about how to store a public key securely.

    Remarks

    If the password in policy is provided, the key is additionally encrypted with the password in policy.

    Exceptions
    Type Condition
    ArgumentNullException

    Any of argument is null.

    ArgumentException

    The size is invalid. privateKeyAlias or publicKeyAlias is invalid format.

    InvalidOperationException

    The key with privateKeyAlias or publicKeyAlias does already exist.

    API Level: 3
    View Source

    Get(String, String)

    Gets a key from the secure repository.

    Declaration
    public static Key Get(string alias, string password)
    Parameters
    Type Name Description
    String alias

    The name of a key to retrieve.

    String password

    The password used in decrypting a key value. If password of policy is provided in SaveKey(), the same password should be provided.

    Returns
    Type Description
    Key

    A key specified by alias.

    Exceptions
    Type Condition
    ArgumentNullException

    The alias argument is null.

    ArgumentException

    The alias argument is in the invalid format.

    InvalidOperationException

    The key does not exist with the alias or the key-protecting password isn't matched.

    API Level: 3
    View Source

    GetAliases()

    Gets all aliases of keys, which the client can access.

    Declaration
    public static IEnumerable<string> GetAliases()
    Returns
    Type Description
    IEnumerable<String>

    All aliases of keys, which the client can access.

    Exceptions
    Type Condition
    ArgumentException

    No alias to get.

    API Level: 3
    View Source

    Save(String, Key, Policy)

    Stores a key inside the secure repository based on the provided policy.

    Declaration
    public static void Save(string alias, Key key, Policy policy)
    Parameters
    Type Name Description
    String alias

    The name of a key to be stored.

    Key key

    The key's binary value to be stored.

    Policy policy

    The policy about how to store a key securely.

    Remarks

    The type in key may be set to KeyType.None as an input. The type is determined inside the secure reposioty during storing keys.

    Exceptions
    Type Condition
    ArgumentNullException

    Any of argument is null.

    ArgumentException

    The alias argument is in the invalid format. key argument is in the invalid format.

    InvalidOperationException

    The key with alias does already exist.

    API Level: 3
    • View Source
    Back to top Copyright © 2016-2022 Samsung
    Generated by DocFX