Untitled
unknown
plain_text
10 months ago
2.9 kB
5
Indexable
using Newtonsoft.Json.Serialization; using Newtonsoft.Json; using NJsonSchema; using System.Security.Cryptography; using System.Text; using System.Text.Json.Serialization; using System.Text.RegularExpressions; using System.Xml.Serialization; using IdentityModel; using System.Runtime.CompilerServices; using System.ComponentModel; using System; using System.Reflection.Metadata; using Microsoft.VisualBasic; using System.Buffers; using System.Collections.Generic; using System.IO.Compression; using System.Linq.Expressions; using ConsoleApp1; using System.Net.Sockets; using OfficeOpenXml; using System.ComponentModel.DataAnnotations; using System.IO; using System.Linq; using System.Net.Http; using System.Threading.Tasks; using System.Net.Http.Headers; using System.Net.Mail; using System.Globalization; public static async Task Main() { using RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(); string publicKeyBase64 = @"MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDirMTuNWDWnn5jK7TaLDae37eJExUEKX8g+w+hQsbbIimXs9ix8RveG9XNWStjSPxg1Srr5Hul7SvbV9gcgYXbX06/X8w90OgeA8JyEy2ZUx7PIU52ISxWodYPEWgEeWRVbogWD6sXsCESSUJktjMhkqSRKcArIMPbdqAPQK6rdQIDAQAB"; LoginModel userLogin = new LoginModel() { CreateDate = DateTime.UtcNow, AgencyCode = "8d003b", UserCode = "9f4b54", }; string rawData = JsonConvert.SerializeObject(userLogin); string encrypted = AsymmetricEncryptionManager.Encrypt(rawData, publicKeyBase64); string token = publicKeyBase64 + encrypted; } public static class AsymmetricEncryptionManager { public static string Encrypt(string data, string publicKeyBase64) { using (RSACryptoServiceProvider rsaCryptoServiceProvider = new RSACryptoServiceProvider()) { byte[] publicKeyBytes = Convert.FromBase64String(publicKeyBase64); rsaCryptoServiceProvider.ImportSubjectPublicKeyInfo(publicKeyBytes, out _); // .ImportRSAPublicKey(publicKeyBytes, out _); byte[] byteData = Encoding.UTF8.GetBytes(data); byte[] encryptedData = rsaCryptoServiceProvider.Encrypt(byteData, false); return Convert.ToBase64String(encryptedData); } } public static string Decrypt(string cipherText, string privateKeyBase64) { using (RSACryptoServiceProvider rsaCryptoServiceProvider = new RSACryptoServiceProvider()) { byte[] privateKeyBytes = Convert.FromBase64String(privateKeyBase64); rsaCryptoServiceProvider.ImportRSAPrivateKey(privateKeyBytes, out _); byte[] cipherDataAsByte = Convert.FromBase64String(cipherText); byte[] encryptedData = rsaCryptoServiceProvider.Decrypt(cipherDataAsByte, false); return Encoding.UTF8.GetString(encryptedData); } } }
Editor is loading...
Leave a Comment