public IActionResult Post([FromBody] string filenames) { string path = "./filenames.json"; string err = ""; try { StringValues auth; HttpContext.Request.Headers.TryGetValue("Authorization", out auth); string authHeader = auth.First(); string username; string password; Helper.GetUsernamePassword(authHeader, out username, out password); if (username == configuration.GetSection("uname").Value&& password == configuration.GetSection("password").Value) { byte[] byteArr = Convert.FromBase64String(filenames); string payload = _AESDecryptor.Decrypt(byteArr); TreeNode root = JsonConvert.DeserializeObject <TreeNode>(payload); System.IO.File.WriteAllText(path, payload); return(Ok("File was successfully decrypted and saved")); } else { err = "Incorrect username/password"; } } catch (Exception ex) { Console.WriteLine(ex.ToString()); err = "Some error occurred"; } return(BadRequest(err)); }
public void can_encrypt_and_decrypt_using_aes() { var encryptor = new AESEncryptor("SBcvpEo21MnyWamdiPxf1O+kBKk53s5GWRnrv3JoUVQ=", "vLWsT81pAOlk7hKd4cyz5A=="); var encr = encryptor.Encrypt("some string"); var stringy = Convert.ToBase64String(encr); var decryptor = new AESDecryptor("SBcvpEo21MnyWamdiPxf1O+kBKk53s5GWRnrv3JoUVQ=", "vLWsT81pAOlk7hKd4cyz5A=="); var decr = decryptor.Decrypt(encr); decr.ShouldBe("some string"); }