Прочитать на английском

Поделиться через


AsymmetricAlgorithm.KeySize Свойство

Определение

Получает или задает размер модуля ключа (в битах), используемого алгоритмом асимметричного шифрования.

public virtual int KeySize { get; set; }

Значение свойства

Размер модуля ключа (в битах), используемого алгоритмом асимметричного шифрования.

Исключения

Недопустимый размер модуля ключа.

Примеры

В следующем примере кода показано, как переопределить KeySize свойство, чтобы убедиться, что оно попадает в диапазон, определенный в локальной keySizes переменной-члене. Этот пример входит в состав более крупного примера использования класса AsymmetricAlgorithm.

public override int KeySize 
{
    get { return KeySizeValue; }
    set
    {
        for (int i=0; i < keySizes.Length; i++)
        {
            if (keySizes[i].SkipSize == 0) 
            {
                if (keySizes[i].MinSize == value)
                {
                    KeySizeValue = value;
                    return;
                }
            }
            else
            {
                for (int j = keySizes[i].MinSize;
                    j <= keySizes[i].MaxSize;
                    j += keySizes[i].SkipSize)
                {
                    if (j == value)
                    {
                        KeySizeValue = value;
                        return;
                    }
                }
            }
        }

        // If the key does not fall within the range identified 
        // in the keySizes member variable, throw an exception.
        throw new CryptographicException("Invalid key size.");
    }
}

Комментарии

Допустимые размеры ключей задаются конкретной реализацией асимметричного алгоритма и перечислены в свойстве LegalKeySizes .

Применяется к

Продукт Версии
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.3, 1.4, 1.6, 2.0, 2.1

См. также раздел