From 5ad4cbc7c303a75639b39a84dd8c419cab2cb415 Mon Sep 17 00:00:00 2001 From: citizen-VM Date: Fri, 21 Aug 2020 20:10:07 +0200 Subject: [PATCH] feat: added correct message padding --- main_form.cs | 37 +++++++++++++++++-------------------- 1 file changed, 17 insertions(+), 20 deletions(-) diff --git a/main_form.cs b/main_form.cs index 746de30..f17bec1 100644 --- a/main_form.cs +++ b/main_form.cs @@ -49,9 +49,9 @@ namespace KRY_0x01_ng { second_char = 'Q'; } - else if ((i == str.Length || str[i] == first_char) && (first_char != 'W')) + else if ((i == str.Length || str[i] == first_char) && (first_char != 'Z')) { - second_char = 'W'; + second_char = 'Z'; } else { @@ -61,6 +61,10 @@ namespace KRY_0x01_ng padded_str += first_char; padded_str += second_char; } + if (padded_str.Length % 2 != 0) + { + padded_str = pad(padded_str); + } } return padded_str; } @@ -74,7 +78,7 @@ namespace KRY_0x01_ng return; } - string str_to_check = str_to_check = String.Join("", tb_k.Text.ToUpper().Distinct()); + string str_to_check = String.Join("", tb_k.Text.ToUpper().Distinct()); if (str_to_check.Length < 9) { MessageBox.Show($"The key is too short ({str_to_check.Length} characters).\nKey requirements: 9-25 unique alphabetic characters", "Error"); @@ -93,7 +97,15 @@ namespace KRY_0x01_ng return; } TextBox tb_pruned_k = textBox2; + TextBox tb_nualph = textBox3; tb_pruned_k.Text = str_to_check; + nualphabet = alphabet.Except(str_to_check.ToArray()).ToArray(); + string nualph_str = ""; + for (int i = 0; i < nualphabet.Length; i++) + { + nualph_str += nualphabet[i]; + } + tb_nualph.Text = str_to_check + nualph_str; return; } @@ -117,23 +129,8 @@ namespace KRY_0x01_ng } void prep_message(TextBox tb_m) { - string msg = tb_m.Text; - if (msg.Length % 2 != 0) - { - if (! msg.EndsWith("X")) - { - msg += "X"; - } - else if (! msg.EndsWith("Q")) - { - msg += "Q"; - } - else if (! msg.EndsWith("Z")) - { - msg += "Z"; - } - } - textBox6.Text = pad(msg); + string msg = pad(tb_m.Text); + textBox6.Text = msg; return; }