2010-04-27 4 views
1

Когда программа запускается, промежуточные данные должны сохраняться на компьютере пользователя.Сохранение рабочих данных программы

Теперь я использую .txt-файлы, кодирующие AES.

Но пользователь файл/код может сломаться, удалить ....

Может быть, лучше решение?

+0

Вы спрашиваете, как вы можете сохранить данные и убедиться, что с ними никто не сталкивается? – Larsenal

+0

Larsenal> Да, я написал об этом – user319854

ответ

1

Чтобы защитить данные пользователя от других пользователей используют Data Protection API и C# имеет простой в использовании классов для облегчения ее использования: ProtectedData, и есть примеры на MSDN, как записывать данные protecetd в файл, см How to: Use Data Protection.

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

+0

void encrypt (ref string s) {s = ""; } // Невозможно расшифровать – Jake

+0

Remus Rusanu> Спасибо, что помогли. Теперь я использую AES (RijndaelManaged), поэтому шифрование данных. Но, например, зашифрованные данные выглядят так: «wdewqeqwe»; Открытый файл пользователя и изменить на это: «wdewqeqwe123», и я никогда не декодировал файл, потому что код поврежден. Надеюсь, вы понимаете, моя проблема. – user319854

Смежные вопросы