public IActionResult StatusInfo() { APIResponseView message = new APIResponseView(); message.Success = true; message.Message = "0: Armed 1: Detonated 2: Primed -1: Defused -2: Dud"; return(Json(message)); }
public IActionResult TimeBombInfo() { APIResponseView message = new APIResponseView(); message.Success = true; message.Message = "\"NewTimeBomb\":{ \"MessageId\": 4, \"MessageCypher\": \"password\", \"KillMessage\": \"password\", \"Address\": \"[email protected]\", \"DetonationTime\": \"2020-02-28\"}"; return(Json(message)); }
public IActionResult NewTimeBomb([FromBody] SecretView timebomb) { APIResponseView results = new APIResponseView(); if (ModelState.IsValid) { try { TimeBomb newTimeBomb = timebomb.NewTimeBomb; newTimeBomb.CreatedAt = DateTime.Now; newTimeBomb.UpdatedAt = DateTime.Now; string encryptedMessage = EncryptionMethods.encrypt(EncryptionMethods.crocodile(), newTimeBomb.KillMessage, EncryptionMethods.alphabet()); newTimeBomb.KillMessage = encryptedMessage; _context.Add(newTimeBomb); _context.SaveChanges(); System.Console.WriteLine("Success! Adding timebomb with id " + newTimeBomb.TimeBombId); _context.SaveChanges(); results.Success = true; results.Message = "Success! Adding timebomb with id " + newTimeBomb.TimeBombId; } catch (Exception e) { System.Console.WriteLine("Something's f****d!"); System.Console.WriteLine(e); results.Success = false; results.Message = "An error occured! " + e; } } else { results.Success = false; string message = "Errant input! Model not valid!"; results.Message = message; System.Console.WriteLine(message); } return(Json(results)); }
public JsonResult NewMessageAPI([FromBody] SecretView secretView) { APIResponseView results = new APIResponseView(); if (ModelState.IsValid) { try { Message newMessage = secretView.NewMessage; newMessage.CreatedAt = DateTime.Now; newMessage.UpdatedAt = DateTime.Now; string encryptedMessage = EncryptionMethods.encrypt(newMessage.MessageBody, newMessage.Cypher, EncryptionMethods.alphabet()); newMessage.MessageBody = encryptedMessage; _context.Add(newMessage); _context.SaveChanges(); System.Console.WriteLine("Success! Adding message with id " + newMessage.MessageId); _context.SaveChanges(); results.Success = true; results.Message = "Success! Adding message with id " + newMessage.MessageId; } catch (Exception e) { System.Console.WriteLine("Something's broke!"); System.Console.WriteLine(e); results.Success = false; results.Message = "An error occured! " + e; } } else { results.Success = false; results.Message = "Errant input! Model not valid!"; System.Console.WriteLine("Errant input! Model not valid!"); } return(Json(results)); }
public JsonResult DecryptMessageAPI([FromBody] SecretView secretView) { APIResponseView results = new APIResponseView(); try { // Login user int login = _administrator.loginUser(secretView.User); if (login == -1) { results.Success = false; results.Message = "Errant input! Username or password incorrect!"; return(Json(results)); } else { // Check to make sure message has not been accessed too many times int id = Int32.Parse(secretView.MessageId); if (_administrator.checkMessageAccesses(id)) { System.Console.WriteLine("Decrypting message with id:" + id); Message message = _context.Messages.FirstOrDefault(x => x.MessageId == id); if (message == null) { results.Success = false; results.Message = "Errant input! Message with id " + id + " does not exist!"; return(Json(results)); } HttpContext.Session.SetString("cypher", secretView.Cypher); string decrypt = EncryptionMethods.decrypt(message.MessageBody, secretView.Cypher, EncryptionMethods.alphabet()); // System.Console.WriteLine(decrypt); results.Success = true; results.Message = decrypt; // Add this attempt to access log Access thisAccess = new Access(); thisAccess.MessageId = id; thisAccess.UserId = login; thisAccess.CreatedAt = DateTime.Now; _context.Accesses.Add(thisAccess); _context.SaveChanges(); } else { System.Console.WriteLine("Message has been accessed too many times!"); results.Success = false; results.Message = "Message has been accessed too many times!"; } } } catch (Exception e) { System.Console.WriteLine("Errant input!"); System.Console.WriteLine(e); results.Success = false; results.Message = e.ToString(); } return(Json(results)); }