C# эквивалент “java.security.spec.rsapublickeyspec” и “java.security.publickey”
Я разрабатываю новую версию существующего java-приложения на языке c#.
Существующее приложение использует шифрование DSA с java.security.spec.* и boncycastle api.
Я ищу эквивалентный код в c# для кода java ниже:
<pre lang="java">KeyFactory keyFactory = KeyFactory.getInstance("DSA", "SUN"); byte[] encodedPrivateKey = InfosysPrivateKey.getEncodedKey(); PKCS8EncodedKeySpec privateKeySpec = new PKCS8EncodedKeySpec(encodedPrivateKey); PrivateKey privateKey = null; try { privateKey = keyFactory.generatePrivate(privateKeySpec); } catch (InvalidKeySpecException e) { e.printStackTrace(); logger.severe(e.toString()); }
Я погуглил" много, но не нашел решения.
Заранее спасибо за вашу помощь.
Что я уже пробовал:
public static byte[] getKey(Org.BouncyCastle.Asn1.x509.DSAPublicKeyStructure dsaPublicKey) { Org.BouncyCastle.Crypto.Parameters.DsaKeyParameters bcKeySpec = new DsaKeyParameters(); DSAParameters keySpec = Org.BouncyCastle.Security.DotNetUtilities.ToDSAParameters(bcKeySpec); DSACryptoServiceProvider keyFactory = new DSACryptoServiceProvider(); keyFactory.ImportParameters(keySpec); byte[] pKey = keyFactory.ExportCspBlob(false); return pKey; }