Ciljna okolja
Knjižnica v vseh ciljnih okoljih ponuja enake postopke in oblike podatkov. Ta stran navaja, kateri sklop je zgrajen za katero ciljno okolje in kje se pot do funkcije razlikuje, ker .NET Framework nekega tipa še ne pozna.
Sklopi in ciljna okolja
| Sklop | Ciljna okolja | Vsebina |
|---|---|---|
WKL.System.Security.Cryptography.Core | .NET Framework 4.6.2, .NET Core 3.1, .NET 8, .NET 9 | PostQuantumConfig, CryptoMode, pravila in vmesnik ponudnikov |
WKL.System.Security.Cryptography.Extensions | .NET Framework 4.6.2 in 4.7.2, .NET Core 3.1, .NET 8 | razširitvene metode in ponudnik za OpenSSL |
WKL.System.Security.Cryptography.WASM | .NET 9 | ponudnik za Blazor WebAssembly z OpenSSL kot modulom WebAssembly |
Aplikacija za .NET Framework 4.8 uporablja gradnjo za 4.7.2, aplikacija za .NET 9 ali novejši pa gradnjo za .NET 8.
Razlike v .NET Framework
| Področje | .NET Framework | Razlog |
|---|---|---|
| Izdajanje potrdil | X509CertificateBuilder v vseh različicah, od 4.7.2 tudi razširitve CertificateRequest | CertificateRequest obstaja šele od .NET Framework 4.7.2 |
CopyWithPrivateKey s CryptoMode | od 4.7.2 | metoda .NET obstaja šele od 4.7.2 |
| Samopodpisano potrdilo v 4.6.2 | Ključ RSA ali ECDSA knjižnica dodeli prek datoteke PFX v pomnilniku. Ključ, ki ga ni mogoče izvoziti v čistopisu, ostane nedodeljen. | 4.6.2 potrdilu ne more neposredno dodeliti ključa |
| Preverjanje verige z lastnimi sidri zaupanja | Sidra gredo v ExtraStore. Veriga velja samo, če se konča v enem od sider; ChainStatus takrat dodatno navede UntrustedRoot. | X509ChainPolicy.CustomTrustStore manjka |
| Izdajanje seznamov preklicanih potrdil | X509CrlBuilder; preobremenitve CertificateRevocationListBuilder samo v .NET 8 | CertificateRevocationListBuilder obstaja šele od .NET 7 |
PFX s PbeParameters | PbeParameters in PbeEncryptionAlgorithm knjižnica zagotovi v imenskem prostoru System.Security.Cryptography | .NET Framework teh tipov ne pozna |
| ECDSA in ECDH v 4.6.2 | s ključi tipa ECDsaCng in ECDiffieHellmanCng | ECParameters obstaja šele od .NET Framework 4.7 |
| Sestavljeni ML-KEM | pari z RSA kot v .NET 8; pari z ECDH sprožijo PlatformNotSupportedException | združevalnik potrebuje surovo skrivnost ECDH, ki jo .NET izda šele od .NET 8 |
| Nalaganje OpenSSL | Knjižnica libcrypto naloži s polno potjo iz PostQuantumConfig.OpenSslPath | .NET Framework ne pozna razreševanja imen knjižnic med izvajanjem |
Vse druge funkcije se v .NET Framework obnašajo kot v .NET 8: hibridna in čista potrdila ML-DSA, verige,
podpisi, podpisi CMS in XML, KemEnvelopedCms, datoteke PFX, hramba ključev in pravila.
Razlike po operacijskih sistemih
| Področje | Windows | Linux | macOS |
|---|---|---|---|
| .NET Framework | da | – | – |
| Datoteke ključev ob shrambi potrdil | DPAPI | s Secret Service | ni na voljo |
| Veriga s čistim izdajateljem ML-DSA | da | če tudi .NET naloži OpenSSL 3.5 ali novejši | ni podatka |
| Uvoz PFX potrdila z glavnim ključem ML-DSA ali ML-KEM | da | ne z .NET 8 | ni podatka |
»Ni podatka« pomeni, da za to kombinacijo ni zagotovil. Podrobnosti za Linux so v Vključitev OpenSSL in Prenos potrdil s ključem PQ v datoteki PFX.
Omejitve
- .NET Framework samo v sistemu Windows. Mono in druga izvajalna okolja za .NET Framework niso predvidena.
- .NET Core 3.1 pri Microsoftu nima več podpore. Knjižnica se zanj še naprej gradi, da lahko obstoječe aplikacije sprejmejo postopke PQ.
Sorodne teme
sl/wiki/pqcrypt/lib/reference/target-frameworks.txt · Zadnja sprememba: uporabnika Wolfgang van der Stille