Я пытаюсь зашифровать входную строку и передать cipher_text, чтобы снова расшифровать ее в исходную строку.
входная строка -> зашифровать -> зашифровать текст -> расшифровать -> исходная входная строка
Я вызываю функцию Lua (скажем, шифрование (ввод)) из кода C++. У меня есть обратный вызов для этой функции шифрования, в которой с помощью OpenSSL я шифрую входную строку и помещаю результат в стек Lua. затем я получаю переданную строку и вызываю функцию Lua (скажем, расшифровать (ciper_text)).
encEncrypt("abcdef") encDecrypt("'\x17Q.J\xce\xab\x94\x83c\xd6\x cqD\x94\x86")
Но ошибка ниже :1: ожидается шестнадцатеричная цифра рядом с '"'Q.JΫ▒▒c▒\x '
Что я делаю неправильно, любой указатель/комментарий?





У вас есть пробел после "\x" в вашей строке.
"\x cq"
Избавьтесь от него и убедитесь, что после \x у вас есть допустимая двухзначная шестнадцатеричная цифра.
Что-то вроде "\x0c".
@atulya Ну, cq - это не шестнадцатеричное число. вам нужно две цифры. поэтому, если ваше значение равно c, напишите \x0c
Спасибо @Piglet, все заработало после замены пробела на 0
попытался удалить пробел, теперь получаю ошибку - ожидается шестнадцатеричная цифра рядом с '"Q.JΫ��c�\xcq'