У меня есть программа, которая является методом шифрования.Это шифр Vigenere, но после первого преобразования он конвертируется в гекс.Мне удалось зашифровать шестнадцатеричный код из моего текстового вывода, но я не знаю, чтобы расшифровать мой вывод Hex обратно в оригинальный текст.
Имеет графический интерфейс ввода текста, секретный ключ, а затем вывод.Когда выходные данные помещаются в текстовое поле GUI, они расшифровываются до исходных данных, помещенных туда первыми.Пример зашифрован: 'HELLO' + секретный ключ: 'London' = WXÍS4.Когда WXÍS4 вставляется с 'LONDON', он выведет 'HELLO' как его расшифрованный на этот раз.
Я пробовал различные методы из других источников, но они, кажется, не работают, такие как Integer.decode("0x4d2").
public static String toHexadecimal(String text) throws
UnsupportedEncodingException
{
byte[] myBytes = text.getBytes("UTF-8");
return DatatypeConverter.printHexBinary(myBytes);
}
public String toHex(String arg) {
return String.format("%040x", new BigInteger(1, arg.getBytes()));
}
private void encrypt_buttonActionPerformed(java.awt.event.ActionEvent evt)
{
String text = inputArea.getText();
String key = keySection.getText();
outputArea.setText(Encrypt(text,key ));
String outputEncrypt = outputArea.getText();
System.out.println("Your secret key is "+ key + " with the message as "
+ text + " which encrypted to " + outputEncrypt);
outputEncrypt = toHex(outputEncrypt);
System.out.println("The hex of this is " + outputEncrypt);
Я хочу, чтобы шестнадцатеричный вывод расшифровывался до исходного текста, который был введен.Этот код выше для шифрования.