static void Main(string[] args) { const string certificateThumbPrint = "d4e2c6acb703896ad723d795bb94025fb0c89847"; var dict = new Dictionary <string, string>(); var i = 1; Console.WriteLine("---------------------------------------"); Console.WriteLine("-- BCP Client Password Encrypter --"); Console.WriteLine("---------------------------------------\n"); Console.Write("Enter client {0}'s id: ", i); var idCliente = Console.ReadLine(); while (idCliente != string.Empty) { Console.Write("Enter client {0}'s connection string: ", i); var passCliente = Console.ReadLine(); dict.Add(idCliente, passCliente); i++; Console.Write("Enter client {0}'s id: ", i); idCliente = Console.ReadLine(); } using (var outputFile = new StreamWriter(Path.Combine(Directory.GetCurrentDirectory(), "ClientsPasswords.txt"))) { foreach (var entry in dict) { var encryptedPass = CriptographyUtils.Encrypt(Encoding.UTF8.GetBytes(entry.Value), certificateThumbPrint); outputFile.WriteLine("\"{0}\": \"{1}\"", entry.Key, Convert.ToBase64String(encryptedPass)); } } }
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline. public void Configure(IApplicationBuilder app, IHostingEnvironment env) { app.Run(async context => { await context.Response.WriteAsync( "<html><body>" + $"<b>Connection string 1 encrypted</b>: {_configuration.GetConnectionString("FirstDatabase")}<br>" + $"<b>Connection string 2 encrypted</b>: {_configuration.GetConnectionString("SecondDatabase")}<br>" + $"<b>Connection string 3 encrypted</b>: {_configuration.GetConnectionString("ThirdDatabase")}<br><br>" + $"<b>Connection string 1 decrypted</b>: {Encoding.UTF8.GetString(CriptographyUtils.Decrypt(Convert.FromBase64String(_configuration.GetConnectionString("FirstDatabase")), _configuration["CertificateThumbPrint"]))}<br>" + $"<b>Connection string 2 decrypted</b>: {Encoding.UTF8.GetString(CriptographyUtils.Decrypt(Convert.FromBase64String(_configuration.GetConnectionString("SecondDatabase")), _configuration["CertificateThumbPrint"]))}<br>" + $"<b>Connection string 3 decrypted</b>: {Encoding.UTF8.GetString(CriptographyUtils.Decrypt(Convert.FromBase64String(_configuration.GetConnectionString("ThirdDatabase")), _configuration["CertificateThumbPrint"]))}" + "</body></html>"); }); }
public Startup(IHostingEnvironment env) { var builder = new ConfigurationBuilder() .SetBasePath(env.ContentRootPath) .AddJsonFile("appsettings.json", true, true) .AddCustomProvider() .AddJsonFile($"appsettings.{env.EnvironmentName}.json", true, true); _configuration = builder.Build(); var connStr1 = _configuration.GetConnectionString("FirstDatabase"); var connStr2 = _configuration.GetConnectionString("SecondDatabase"); var connStr3 = _configuration.GetConnectionString("ThirdDatabase"); var decryptedConnStr1 = Encoding.UTF8.GetString(CriptographyUtils.Decrypt(Convert.FromBase64String(connStr1), _configuration["CertificateThumbPrint"])); var decryptedConnStr2 = Encoding.UTF8.GetString(CriptographyUtils.Decrypt(Convert.FromBase64String(connStr2), _configuration["CertificateThumbPrint"])); var decryptedConnStr3 = Encoding.UTF8.GetString(CriptographyUtils.Decrypt(Convert.FromBase64String(connStr3), _configuration["CertificateThumbPrint"])); }