Как зашифрованть и расшифровать строку?

Программирование на Юнити.

Как зашифрованть и расшифровать строку?

Сообщение Zimaell 24 мар 2021, 21:32

у меня данные хранятся в файлах к которым можно легко получить доступ ( игра на смартфоне, и не трудно догадаться где там файлы хранятся).
Сейчас они там хранятся в открытом виде, например файл звука
MusicVolume.txt в нем 0,25
файл уровней
TestFile.txt в нем 0,1/56/45/test|test|34|1212|ntst3434.......
то есть информация с текстовых файлах может быть разная
мне нужно хранить информацию там же но уже в зашифрованном виде, чтобы никто не смог изменить (дорисовать там себе призов и т.д.)

По сути мне нужно два метода
Синтаксис:
Используется csharp
private string Encode(string Str){
  string CodeStr = "";
......................................
  return CodeStr ;
  }
 
private string Decode(string Str){
  string NormalizeStr = "";
......................................
  return NormalizeStr;
  }


В сети я видел примеры но они переводят либо в байты а не строку, либо кодируют так что при следующем запуске уже эту строку так не раскодирует...

Подскажите Как мне правильно реализовать данные методы?
Естественно Encode применяется перед записью в файл, а после прочтения файла Decode, и подается туда строка и забираться должна тоже стока...
Да и конечно информация может изменятся....
Zimaell
UNIверсал
 
Сообщения: 474
Зарегистрирован: 04 июл 2020, 18:45

Re: Как зашифрованть и расшифровать строку?

Сообщение Alkos26Rus 24 мар 2021, 22:09

я использую такой вариант, вроде нормально кодирует и декодирует
Синтаксис:
Используется csharp
using System.Text;

public static string Encode(string plainText){
var plainTextBytes = Encoding.UTF8.GetBytes(plainText);

return System.Convert.ToBase64String(plainTextBytes);
}//Encode

public static string Decode(string base64EncodedData){
var base64EncodedBytes = System.Convert.FromBase64String(base64EncodedData);

return Encoding.UTF8.GetString(base64EncodedBytes);
}//Decode
 
Аватара пользователя
Alkos26Rus
Адепт
 
Сообщения: 1640
Зарегистрирован: 26 ноя 2020, 17:52
Откуда: Москва

Re: Как зашифрованть и расшифровать строку?

Сообщение samana 25 мар 2021, 18:29

Можно ещё простым способом через операцию xor. То-есть вы придумываете любой ключ, с помощью этого ключа текст зашифровывуется и расшифровывается
https://studassistent.ru/charp/algoritm-shifrovaniya-i-deshiforvaniya-strokovyh-dannyh-metodom-xor-s-klyuchom-c
Аватара пользователя
samana
Адепт
 
Сообщения: 4738
Зарегистрирован: 21 фев 2015, 13:00
Откуда: Днепропетровск

Re: Как зашифрованть и расшифровать строку?

Сообщение Alex5 25 мар 2021, 20:13

Насчёт XOR: если выбрать длину ключа равной длине шифруемого сообщения, то результат нельзя будет расшифровать без ключа. Вообще. Никогда. :) см. "одноразовый блокнот"
Linux это просто
Экономика это просто
Forex это просто
Мой канал на YouTube
Аватара пользователя
Alex5
Старожил
 
Сообщения: 507
Зарегистрирован: 22 авг 2019, 17:37


Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7