C: Простой способ ввода и безопасного хранения строки в консоли? - PullRequest
0 голосов
/ 03 июля 2011

Я создаю консольное приложение, которое будет хранить некоторые чувствительные строки в памяти для отправки другому клиенту.В этом случае это почти как безопасный мессенджер (несколько% небезопасности было бы приемлемо), хотя и не так сложно.

Принял бы ввод пользователя с помощью (функция, принимающая по одной букве за раз для обработки, напримеркак поиск ключевых букв) в той части памяти, которая выделена, совершенно небезопасно, с точки зрения того, что она не защищена от других процессов, которые могут шпионить?

Я испытываю желание кодировать каждый символ перед отправкой егоСтрока, хотя это кажется немного глупым.Существуют ли какие-либо методы для «блокировки» доступа к этому malloc (по крайней мере, для тривиальных попыток просмотра памяти) или аналогичные методы для защиты строки в памяти?

Спасибо.

Я открытдля многих идей, в настоящее время я только планирую.

1 Ответ

1 голос
/ 03 июля 2011

Если вам нужна настоящая безопасность в плане предотвращения того, чтобы кто-либо видел то, что вы сохранили в памяти, то шифрование (или, по крайней мере, запутывание) каждого символа при прочтении - это путь. В противном случае вы можете сделать очень мало для того, чтобы решительный злоумышленник не мог просматривать ваши незашифрованные данные в памяти. На самом деле, я считаю, что главный ключ Blu-ray был взломан из-за устройства, которое загружало незашифрованное представление ключа в его память.

...