// 保存鍵間のフォーマット変換 #region X.509 or Xml 鍵 → Xml or Jwk 公開鍵 #region X.509 #region *.cer #region Xml /// <summary>X509CerToXml</summary> /// <param name="certificateFilePath">X.509鍵(*.cer)</param> /// <param name="flg">X509KeyStorageFlags</param> /// <returns>Xml公開鍵</returns> public static string X509CerToXml( string certificateFilePath, X509KeyStorageFlags flg = X509KeyStorageFlags.DefaultKeySet) { return(RsaPublicKeyConverter.ParamToXml( // *.cer is PublicKey -> ExportParameters(false) RsaPublicKeyConverter.X509CerToProvider(certificateFilePath, flg).ExportParameters(false))); }
/// <summary>XmlToJwk</summary> /// <param name="xmlKey">Xml鍵</param> /// <param name="settings">JsonSerializerSettings</param> /// <returns>Jwk公開鍵</returns> public static string XmlToJwk( string xmlKey, JsonSerializerSettings settings = null) { return(RsaPublicKeyConverter.ParamToJwk( // PublicKey -> ExportParameters(false) RsaPublicKeyConverter.XmlToProvider(xmlKey).ExportParameters(false), settings)); }
/// <summary>X509CerToJwk</summary> /// <param name="certificateFilePath">X.509鍵(*.cer)</param> /// <param name="settings">JsonSerializerSettings</param> /// <param name="flg">X509KeyStorageFlags</param> /// <returns>Jwk公開鍵</returns> public static string X509CerToJwk( string certificateFilePath, JsonSerializerSettings settings = null, X509KeyStorageFlags flg = X509KeyStorageFlags.DefaultKeySet) { return(RsaPublicKeyConverter.ParamToJwk( // *.cer is PublicKey -> ExportParameters(false) RsaPublicKeyConverter.X509CerToProvider(certificateFilePath, flg).ExportParameters(false), settings)); }
/// <summary>JwkToProvider</summary> /// <param name="jwkObject">JObject</param> /// <returns>RSA(公開鍵)</returns> public static RSA JwkToProvider(JObject jwkObject) { RSAParameters rsaParameters = RsaPublicKeyConverter.JwkToParam(jwkObject); RSA rsa = AsymmetricAlgorithmCmnFunc.RsaFactory(); rsa.ImportParameters(rsaParameters); return(rsa); }
/// <summary>JwkToParam</summary> /// <param name="jwkString">string</param> /// <returns>RSAParameters(公開鍵)</returns> public static RSAParameters JwkToParam(string jwkString) { return(RsaPublicKeyConverter.JwkToParam( JsonConvert.DeserializeObject <JObject>(jwkString))); }
/// <summary>XmlToParam</summary> /// <param name="xmlKey">Xml鍵</param> /// <returns>RSAParameters(公開鍵)</returns> public static RSAParameters XmlToParam(string xmlKey) { return(RsaPublicKeyConverter.XmlToProvider(xmlKey).ExportParameters(false)); }
/// <summary>X509PfxToParam</summary> /// <param name="certificateFilePath">X.509鍵(*.cer)</param> /// <param name="password">string</param> /// <param name="flg">X509KeyStorageFlags</param> /// <returns>RSAParameters(公開鍵)</returns> public static RSAParameters X509PfxToParam( string certificateFilePath, string password, X509KeyStorageFlags flg = X509KeyStorageFlags.DefaultKeySet) { return(RsaPublicKeyConverter.X509PfxToProvider(certificateFilePath, password, flg).ExportParameters(false)); }