public static RSAParameters ToRSAParameters(this string subject) { subject.Verify(nameof(subject)).IsNotEmpty(); byte[] array = Convert.FromBase64String(subject); using var memory = new MemoryStream(array); var formatter = new BinaryFormatter(); RsaParameterModel model = (RsaParameterModel)formatter.Deserialize(memory); return(model.ConvertTo()); }
public static string ToBinaryString(this RSAParameters subject) { subject.Verify(nameof(subject)).IsNotNull(); RsaParameterModel model = subject.ConvertTo(); var formatter = new BinaryFormatter(); using var memory = new MemoryStream(); formatter.Serialize(memory, model); memory.Position = 0; return(Convert.ToBase64String(memory.ToArray())); }
public static RSAParameters ConvertTo(this RsaParameterModel rSAParametersModel) { return(new RSAParameters { D = rSAParametersModel.D?.ToArray(), DP = rSAParametersModel.DP?.ToArray(), DQ = rSAParametersModel.DQ?.ToArray(), Exponent = rSAParametersModel.Exponent?.ToArray(), InverseQ = rSAParametersModel.InverseQ?.ToArray(), Modulus = rSAParametersModel.Modulus?.ToArray(), P = rSAParametersModel.P?.ToArray(), Q = rSAParametersModel.Q?.ToArray(), }); }
public static string ToJson(this RsaParameterModel subject) { subject.Verify(nameof(subject)).IsNotNull(); return(JsonConvert.SerializeObject(subject)); }