SymmetricAlgorithm.LegalKeySizes Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает размеры ключа (в битах), которые поддерживаются симметричным алгоритмом.
public:
virtual property cli::array <System::Security::Cryptography::KeySizes ^> ^ LegalKeySizes { cli::array <System::Security::Cryptography::KeySizes ^> ^ get(); };
public virtual System.Security.Cryptography.KeySizes[] LegalKeySizes { get; }
member this.LegalKeySizes : System.Security.Cryptography.KeySizes[]
Public Overridable ReadOnly Property LegalKeySizes As KeySizes()
Значение свойства
Массив, содержащий размеры ключа, поддерживаемые алгоритмом.
Примеры
В следующем примере показано значение LegalKeySizes для симметричного алгоритма AES.
using System;
using System.Security.Cryptography;
namespace SymmetricAlgo
{
class Program
{
static void Main(string[] args)
{
Aes aes = Aes.Create();
Console.WriteLine("Aes ");
KeySizes[] ks = aes.LegalKeySizes;
foreach (KeySizes k in ks)
{
Console.WriteLine("\tLegal min key size = " + k.MinSize);
Console.WriteLine("\tLegal max key size = " + k.MaxSize);
}
ks = aes.LegalBlockSizes;
foreach (KeySizes k in ks)
{
Console.WriteLine("\tLegal min block size = " + k.MinSize);
Console.WriteLine("\tLegal max block size = " + k.MaxSize);
}
}
}
}
//This sample produces the following output:
//Aes
// Legal min key size = 128
// Legal max key size = 256
// Legal min block size = 128
// Legal max block size = 128
Imports System.Security.Cryptography
Class Program
Shared Sub Main(ByVal args() As String)
Dim aes As Aes = Aes.Create()
Console.WriteLine("Aes ")
Dim ks As KeySizes() = aes.LegalKeySizes
Dim k As KeySizes
For Each k In ks
Console.WriteLine(vbTab + "Legal min key size = " & k.MinSize)
Console.WriteLine(vbTab + "Legal max key size = " & k.MaxSize)
Next k
ks = aes.LegalBlockSizes
For Each k In ks
Console.WriteLine(vbTab + "Legal min block size = " & k.MinSize)
Console.WriteLine(vbTab + "Legal max block size = " & k.MaxSize)
Next k
End Sub
End Class
'This sample produces the following output:
'Aes
' Legal min key size = 128
' Legal max key size = 256
' Legal min block size = 128
' Legal max block size = 128
Комментарии
Симметричный алгоритм поддерживает только те размеры ключей, которые соответствуют записи в этом массиве.