4 instantiations of MLKemImplementation
System.Security.Cryptography (4)
System\Security\Cryptography\MLKemImplementation.OpenSsl.cs (4)
35return new MLKemImplementation(algorithm, key, hasSeed: true, hasDecapsulationKey: true); 44return new MLKemImplementation(algorithm, key, hasSeed: true, hasDecapsulationKey: true); 53return new MLKemImplementation(algorithm, key, hasSeed: false, hasDecapsulationKey: true); 62return new MLKemImplementation(algorithm, key, hasSeed: false, hasDecapsulationKey: false);
20 references to MLKemImplementation
System.Security.Cryptography (20)
src\libraries\Common\src\System\Security\Cryptography\MLKem.cs (9)
40public static bool IsSupported => MLKemImplementation.IsSupported; 88return MLKemImplementation.GenerateKeyImpl(algorithm); 344return MLKemImplementation.ImportPrivateSeedImpl(algorithm, source); 403return MLKemImplementation.ImportDecapsulationKeyImpl(algorithm, source); 460return MLKemImplementation.ImportEncapsulationKeyImpl(algorithm, source); 1187kem = MLKemImplementation.ImportEncapsulationKeyImpl(algorithm, key.Span); 1693kem = MLKemImplementation.ImportPrivateSeedImpl(algorithm, seed.Span); 1702kem = MLKemImplementation.ImportDecapsulationKeyImpl(algorithm, expandedKey.Span); 1714MLKem key = MLKemImplementation.ImportPrivateSeedImpl(algorithm, both.Seed.Span);
src\libraries\Common\src\System\Security\Cryptography\MLKemImplementation.cs (2)
14internal static MLKemImplementation DuplicatePrivateKey(MLKem key) 19Debug.Assert(key is not (MLKemImplementation or MLKemOpenSsl));
System\Security\Cryptography\MLKemImplementation.OpenSsl.cs (4)
30internal static MLKemImplementation GenerateKeyImpl(MLKemAlgorithm algorithm) 38internal static MLKemImplementation ImportPrivateSeedImpl(MLKemAlgorithm algorithm, ReadOnlySpan<byte> source) 47internal static MLKemImplementation ImportDecapsulationKeyImpl(MLKemAlgorithm algorithm, ReadOnlySpan<byte> source) 56internal static MLKemImplementation ImportEncapsulationKeyImpl(MLKemAlgorithm algorithm, ReadOnlySpan<byte> source)
System\Security\Cryptography\X509Certificates\OpenSslX509CertificateReader.cs (3)
734case MLKemImplementation impl: 737using (MLKemImplementation clone = MLKemImplementation.DuplicatePrivateKey(privateKey))
System\Security\Cryptography\X509Certificates\X509CertificateLoader.OpenSsl.cs (2)
99MLKemImplementation? impl = kem as MLKemImplementation;