Exemple #1
0
        public IActionResult PlayfairDecrypt([FromBody] PlayfairCipherViewModel viewModel)
        {
            PlayfairCipher cipher = new PlayfairCipher(viewModel.Key);

            string decrypted = "";

            try
            {
                decrypted = cipher.Decrypt(viewModel.Message);
            }
            catch (Exception e)
            {
                return(BadRequest(new { Result = false, Message = e.Message }));
            }

            return(Json(decrypted));
        }
Exemple #2
0
        public IActionResult PlayfairEncrypt([FromBody] PlayfairCipherViewModel viewModel)
        {
            PlayfairCipher cipher = new PlayfairCipher(viewModel.Key);

            string encrypted = "";

            try
            {
                encrypted = cipher.Encrypt(viewModel.Message);
            }
            catch (Exception e)
            {
                return(BadRequest(new { Result = false, Message = "Uzupełnij wartość tajnego klucza!" }));
            }

            return(Json(encrypted));
        }
Exemple #3
0
        public IActionResult PlayfairVisualization([FromBody] PlayfairCipherViewModel viewModel)
        {
            PlayfairCipher cipher = new PlayfairCipher(viewModel.Key);

            string encrypted = "";
            string input     = viewModel.Message;

            string[] results = new string[4] {
                "output", "input", "table", "digrams"
            };
            input      = StringHelper.ReplaceWhitespace(input, "");
            input      = input.ToUpper();
            results[1] = input;
            char[,] table;
            try
            {
                encrypted  = cipher.Encrypt(viewModel.Message);
                results[0] = encrypted;

                table = cipher.KeyMatrix;

                var stringTable = new StringBuilder();
                for (int i = 0; i < 5; i++)
                {
                    for (int j = 0; j < 5; j++)
                    {
                        stringTable.Append(table[i, j]);
                    }
                }
                results[2] = stringTable.ToString();

                if (input.Length % 2 != 0)
                {
                    input += "X";
                }

                results[3] = input;
            }
            catch (Exception e)
            {
                return(BadRequest(new { Result = false, Message = e.Message }));
            }

            return(Json(results));
        }