private static string GenerateRsaKeys() { RSACryptoServiceProvider myRSA = new RSACryptoServiceProvider(2048); var publicKey = new RSAParametersSerializable(myRSA.ExportParameters(true)); string json = JsonConvert.SerializeObject(publicKey); return json; }
/// <summary> /// Gets data for serialization. /// </summary> /// <param name="info">The <see cref="SerializationInfo"/>.</param> /// <param name="context">The <see cref="StreamingContext"/>.</param> public virtual void GetObjectData(SerializationInfo info, StreamingContext context) { string responseJson = ResponseObject == null ? null : JsonConvert.SerializeObject(ResponseObject); info.AddValue("ResponseObject", responseJson); RSAParametersSerializable rsaParameters = SignerKey == null ? null : new RSAParametersSerializable(SignerKey.ExportParameters(false)); info.AddValue("SignerKey", rsaParameters); }
/// <summary> /// Gets data for serialization. /// </summary> /// <param name="info">The <see cref="SerializationInfo"/>.</param> /// <param name="context">The <see cref="StreamingContext"/>.</param> public override void GetObjectData(SerializationInfo info, StreamingContext context) { base.GetObjectData(info, context); info.AddValue("RedirectUri", RedirectUri); info.AddValue("AuthzUri", AuthzUri); info.AddValue("Issuer", Issuer); RSAParametersSerializable rsaParameters = SignerKey == null ? null : new RSAParametersSerializable(SignerKey.ExportParameters(false)); info.AddValue("SignerKey", rsaParameters); }
public RsaKeyPair GetKeyPair(int length) { using (var csp = new RSACryptoServiceProvider(2048)) { var privateKey = csp.ExportParameters(true); var publicKey = csp.ExportParameters(false); var serializablePrivateKey = new RSAParametersSerializable(privateKey); var serializablePublicKey = new RSAParametersSerializable(publicKey); return(new RsaKeyPair(JsonConvert.SerializeObject(serializablePublicKey), JsonConvert.SerializeObject(serializablePrivateKey))); } }