есть библиотека tiny-AES, с помощью которой я указываю ключ в uint_8_t массиве как и в примере, все это отлично срабатывает, но остается вопрос, если через strings пропустить бинарник, то пароль там просто лежит не зашифрованным, как это можно исправить?
1.зашивать в бинарник зашифрованный пароль и программно его расшифровывать каким угодно алгоритмом.
2.Вычислять пароль на лету любым способом, который придумаете.
3.Запрашивать пароль у пользователя со стандартного входа - это был бы самый подходящий вариант - пусть пользователь сам думает как уберечь пароль от чужих глаз.
я шифрую AES, чтобы зашифровать внутри еще каким-нибудь шифром, тут вся суть что мне кажется в tinyAES где-то библиотеке зарыта проблема что strings находит строку, но зачем tinyAES так коряво написали не представляю даже
mrxakerrus, Не думаю, чтоб в коде tinyAES есть ваш пароль.
Приведите пример кода с объявлением переменной, хранящей пароль, и вызовом функции шифрования.
res2001, можно взять https://github.com/bricke/tiny-AES-C скомпилировать, там уже указан key и plain_text в hex формате, после компиляции, через strings перед строкой GCC Ubuntu и все прочее, будет строка с ключом шифрования..
mrxakerrus, Если вы имеете ввиду тест - то на то он и тест, чтоб там не заморачиваться с безопасностью.
Кто вам мешает в своем проекте хранить ключи и пароли в более защищенном варианте?
Любую строковую константу, которая присутствует в исходниках вы можете обнаружить в исполняемом файле. Это не баг библиотеки - так работает компилятор.
Просто не объявляйте пароли явно в коде.