示例#1
0
 private static string GenerateRsaKeys()
 {
     RSACryptoServiceProvider myRSA = new RSACryptoServiceProvider(2048);
     var publicKey = new RSAParametersSerializable(myRSA.ExportParameters(true));
     string json = JsonConvert.SerializeObject(publicKey);
     return json;
 }
示例#2
0
        /// <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);
        }
示例#3
0
        /// <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);
        }
示例#4
0
        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)));
            }
        }