Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Chování X509Certificate a PublicKey změnilo se. Pokud tyto objekty obsahují klíč bez parametrů algoritmu, vrátí teď místo prázdného pole null.
Zavedená verze
.NET 10
Předchozí chování
Dříve objekty X509Certificate nebo PublicKey, které obsahovaly klíč bez parametrů algoritmů, vrátily prázdné pole při přístupu k parametrům klíče algoritmu.
byte[] parameters = certificate.GetKeyAlgorithmParameters();
// parameters would be an empty array if no algorithm parameters were present
Nové chování
Počínaje verzí .NET 10 objekty X509Certificate nebo PublicKey, které obsahují klíč bez parametrů algoritmu, vrátí při přístupu k parametrům algoritmu klíče hodnotu null.
byte[] parameters = certificate.GetKeyAlgorithmParameters();
// parameters will be null if no algorithm parameters are present
Typ zásadní změny
Jedná se o chování a změnu kompatibility zdroje.
Důvod změny
Třídy X509Certificate, X509Certificate2a PublicKey zpřístupňují informace o veřejném klíči. Jednou z vlastností informace o předmětu veřejného klíče jsou parametry algoritmu. Informace o veřejném klíči subjektu nemusí obsahovat parametry algoritmu. Dříve to bylo reprezentováno jako prázdné bajtové pole, které není platné ASN.1. Při pokusu o kódování nebo dekódování by došlo k výjimce. Abychom jasněji představovali chybějící klíčové parametry, null se nyní vrátí a členy, které vracejí parametry algoritmu, byly opatřeny poznámkami k vrácení hodnot null.
Doporučená akce
Při přístupu k členu, který vrací informace o parametrech algoritmu informací o veřejném klíči subjektu, počítejte s tím, že člen vrátí null a odpovídajícím způsobem zpracuje hodnotu null.
byte[] parameters = certificate.GetKeyAlgorithmParameters();
if (parameters == null)
{
// Handle the absence of algorithm parameters
}
Ovlivněná rozhraní API
- System.Security.Cryptography.X509Certificates.X509Certificate.GetKeyAlgorithmParameters()
- System.Security.Cryptography.X509Certificates.X509Certificate.GetKeyAlgorithmParametersString()
- System.Security.Cryptography.X509Certificates.PublicKey.PublicKey(Oid, AsnEncodedData, AsnEncodedData)
- System.Security.Cryptography.X509Certificates.PublicKey.EncodedParameters