public void FromCapiKeyBlobDSA() { DSA dsa = CryptoConvert.FromCapiKeyBlobDSA(dsaPrivBlob); Assert.AreEqual(dsaKeyPairString, dsa.ToXmlString(true), "KeyPair"); Assert.AreEqual(dsaPubKeyString, dsa.ToXmlString(false), "PublicKey"); }
public void ImportCspBlob(byte[] keyBlob) { if (keyBlob == null) { throw new ArgumentNullException("keyBlob"); } DSA dsa = CryptoConvert.FromCapiKeyBlobDSA(keyBlob); if (dsa is DSACryptoServiceProvider) { DSAParameters dsap = dsa.ExportParameters(!(dsa as DSACryptoServiceProvider).PublicOnly); ImportParameters(dsap); } else { // we can't know from DSA if the private key is available try { // so we try it... DSAParameters dsap = dsa.ExportParameters(true); ImportParameters(dsap); } catch { // and fall back DSAParameters dsap = dsa.ExportParameters(false); ImportParameters(dsap); } } }
public void FromCapiKeyBlobDSA_UnknownBlob() { byte[] blob = new byte [334]; DSA dsa = CryptoConvert.FromCapiKeyBlobDSA(blob, 0); }
public void FromCapiKeyBlobDSA_InvalidOffset() { DSA dsa = CryptoConvert.FromCapiKeyBlobDSA(new byte [0], 0); }
public void FromCapiKeyBlobDSA_Null() { DSA dsa = CryptoConvert.FromCapiKeyBlobDSA(null); }