С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.97/34: Рейтинг темы: голосов - 34, средняя оценка - 4.97
0 / 0 / 1
Регистрация: 05.09.2015
Сообщений: 212

Шифрование пароля при сохранении в xml файле

06.08.2016, 14:38. Показов 6765. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
в моей программе можно ввести в текстовые поля login,password,domain. сохраняется всё в отдельном фале xml формата. Далее данная запись отображаеться в listview.
хочу чтобы в файле пароль сохранялся в зашифрованном виде. не обезательно делать супер сложный шифр, но чтобы так просто он не лежал в открытом виде. При запуске программы в listview отображались все 3 колонки login,pass,domain уже в расшифрованом виде.
Кто знает как реализовать данный замысел ?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
06.08.2016, 14:38
Ответы с готовыми решениями:

Шифрование и дешифрование XML в одном и том же файле
Доброго времени суток! Есть рабочий код, шифрующий XML документ. проблема в том что когда происходит шифрование, то шифрованные данные...

При сохранении xml возникает ошибка, связанная с кодировкой
string str = null; string strRepl = null; StreamReader sr = new StreamReader(@"C:\ParserHTML\sample.xml"); while (!sr.EndOfStream) ...

При сохранении в файл формата xlsx выпадает сообщение о сохранении шаблона
Такая дурацкая штука получается при сохранении в файл формата xlsx - выпадает сообщение о сохранении шаблона!!! Этот шаблон я как раз...

4
 Аватар для EveKS
601 / 485 / 185
Регистрация: 19.04.2016
Сообщений: 1,885
06.08.2016, 14:59
eluzor, побитовые операции над char произвести.
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18250 / 14174 / 5366
Регистрация: 17.03.2014
Сообщений: 28,850
Записей в блоге: 1
06.08.2016, 16:26
Лучший ответ Сообщение было отмечено eluzor как решение

Решение

eluzor, если цель просто спрятать пароль от любопытных глаз, то берем любой симметричный алгоритм шифрования и шифруем в base64 строку:
PasswordHelper
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
class PasswordHelper
{
    private static RijndaelManaged CreateUsingRandom(int seed = -48718031)
    {
        Random rnd = new Random(seed);
        var rijndael = new RijndaelManaged();
        rijndael.BlockSize = 256;
        rijndael.KeySize = 256;
        
        byte[] key = new byte[rijndael.KeySize/8];
        rnd.NextBytes(key);
        rijndael.Key = key;
        
        byte[] iv = new byte[rijndael.BlockSize/8];
        rnd.NextBytes(iv);
        rijndael.IV = iv;
        
        return rijndael;
    }
    
    public static string Encrypt(string password)
    {
        var mstream = new MemoryStream();
        using (var rijndael = CreateUsingRandom())
        using (var cryptoStream = new CryptoStream(mstream, rijndael.CreateEncryptor(), CryptoStreamMode.Write))
        using (var writer = new StreamWriter(cryptoStream))
        {
            writer.Write(password);
        }
        return Convert.ToBase64String(mstream.ToArray());
    }
 
    public static string Decrypt(string base64text)
    {
        var mstream = new MemoryStream(Convert.FromBase64String(base64text));
        using (var rijndael = CreateUsingRandom())
        using (var cryptoStream = new CryptoStream(mstream, rijndael.CreateDecryptor(), CryptoStreamMode.Read))
        using (var reader = new StreamReader(cryptoStream))
        {
            return reader.ReadToEnd();
        }
    }
}

Два момента: 1) не забудь поменять значение аргумента seed 2) тот кто знает C# и про декомпиляторы без труда вскроет шифрование.
1
158 / 187 / 48
Регистрация: 25.11.2013
Сообщений: 978
07.08.2016, 02:29
Цитата Сообщение от eluzor Посмотреть сообщение
хочу чтобы в файле пароль сохранялся в зашифрованном виде
Best practice
1
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18250 / 14174 / 5366
Регистрация: 17.03.2014
Сообщений: 28,850
Записей в блоге: 1
07.08.2016, 10:04
DataPlanner дает хороший совет использовать класс ProtectedData. Нужно только понимать что ключ шифрования хранится в профиле текущего пользователя (DataProtectionScope.CurrentUser) или в общем профиле (DataProtectionScope.LocalMachine) и поэтому расшифровать данные можно только на одном компьютере. Передать их на другой компьютер не получится. Плюс система не дает возможности экспорта ключей DPAPI и после переустановки Windows доступ к зашифрованным данныи будет потерян. Поэтому данный метод следует использовать только для хранения локальных данных которые не требуют переноса.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.08.2016, 10:04
Помогаю со студенческими работами здесь

Ошибка в XML файле при десериализации
когда пытюсь десериализовать файл , то выдаёт ошибку - There is an error in XML document (8,5) Подскажите, в чем может быть проблема. ...

Шифрование пароля при авторизации
Здравствуйте всем. Есть сайт с авторизацией по Логину и Паролю. Пароль шифруется в какую-то байду, предположительно это RSA и шлется запрос...

Шифрование пароля при передаче в БД
Как зашифровать пароль, при передаче в базу данных??? <?php header('Content-Type: text/html; charset=utf-8'); ...

Перенос строк при сохранении XML файла
Здравствуйте. Хочу задать вопрос. Я пытаюсь сохранить древовидные данные в XML файл с помощью компонента XMLDocument. Кусок кода примерно...

Шифрование пароля при помощи функции crypt
Не получается проверить пароль. Хеширую так: crypt($user, $user). Получаю: '$1$G75.XY3.$10VBYmu2dXXk14YmIOyzy.'. Проверяю так: ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru