Замена байтов в warface навсегда

DanyaF Gren. ► Warface/Секретные оружия/Замена оружия!"комуфляжный нож"На PVP!

Изобретен и реализован в виде программы способ шифрования файлов случайными байтами. Последствия этого изобретения труднл переоценить. Это разделение людей на уровне ВАВИЛОНСКОГО СТОЛПОТВОРЕНИЯ, только уже между отдельными людьми и их сообществами. Описание программы в файле. Описание алгоритма приведено ниже.
Основная идея шифрования случайными байтами: замена исходных байтов файла на адреса этих байтов в некотором достаточно большом множестве. В качестве такого множества используется массив случайных строк длиной 256 байт, каждая строка которого содержит все 256 байтов ровно по одному разу. Генерация таких строк осуществляется по следующему алгоритму:
1) строке присваивается значение пусто ( L = “”)
2) с помощью функции Rnd(Timer) генерируется псевдослучайное число в интервале от 10000 до 30000 ( I = Int(Rnd*20000) + 10000);
3) берется остаток от деления этого числа на 256 ( J = I mod 256);
4) полученный остаток преобразуется в байт ( L1 = ChrB(J))
5) проверяется наличие сгенерированного байта в строке L, если такого байта нет, то L=L+L1. Если такой байт есть в строке, то переход к пункту 2. Естественно, проверка осуществляется только в том случае, если длина строки меньше 256 байт.
Таким образом, генерируются строки со случайным расположением одних и тех же 256 байтов. Количество таких строк исчисляется как факториал от 256, что превышает 10 в степени 506. Очевидно, что использовать этот массив строк в полном объеме в программе физически невозможно в силу огромной величины числа 10 в степени 506 (1 и пятьсот шесть нулей). Поэтому мы решили использовать порции в количестве до 2000 строк. Количество вариантов генерации одной порции в 2000 строк вычисляется как биноминальный коэффициент, в числителе которого произведение 2000 чисел вида (10 в степени 506 - 0,1,2,…,1999), а в знаменателе факториал от числа 2000. Поскольку вычитание от такого гиганта, как 1 и 506 нулей, чисел 1, 2, …,1999 никакого влияния на его величину не оказывает, то будем приближенно считать все произведения равными 1 и 506 нулей. Тогда произведение 2000 чисел 10 в степени 506 приближенно равно числу 10 в степени (506 х 2000 = 1012000). Факториал от 2000 не превышает 10 в степени 6000. Следовательно, общее количество вариантов генерации 2000 случайных строк, содержащих все 256 байт, но расположенных случайным образом в строке, превышает 10 в степени (1012000 – 6000 = 1006000, или более чем 1 и миллион нулей).
Итак, для шифрования будем использовать массивы случайных строк в количестве до 2000. Такой массив, мы назвали складом базисов шифрования. Алгоритм зашифровки файла пользователя состоит в следующем:

6) Настройки поиска ( Настраивайте до того, как вставили значение в поиск ) : Value type - Array of byte. 7) В Cheat Engine в строке поиска байтов пишем это 61 72 30 32 00 65

1) берем первый байт файла пользователя и случайным образом выбираем строку из склада базисов;
2) в выбранной случайной строке ищется байт, равный байту файла пользователя. Такой байт всегда существует, так как в нашей случайной строке всего 256 байтов и все они встречаются в строке ровно по одному разу;
3) номер расположения байта файла пользователя в случайной строке – это адрес байта файла пользователя в случайной строке. Поскольку величина байтов изменяется от 0 до 255, а номера расположения байтов в случайной строке изменяются от 1 до 256, то для записи номера байта можно использовать всего один байт. Для этого достаточно от номера отнять единицу и преобразовать полученное число в байт;
4) заменяем байт файла пользователя на байт, характеризующий номер (адрес) расположения байта файла пользователя в случайной строке из склада базисов. Эта операция – есть ничто иное, как замена исходного файла пользователя на адрес расположения этого байта в случайной строке из склада базисов;
5) берем второй байт файла пользователя и случайным образом выбираем другую строку из склада базисов и переходим к пункту 2;
6) таким образом, исходный файл пользователя превращается в список адресов, по которым производится восстановление исходного файла пользователя при расшифровке;
7) при расшифровке берем первый байт из зашифрованного файла и ту же самую строку из склада базисов, которую использовали при шифровании. Этот байт преобразуем в число и увеличиваем на единицу для вычисления номера. По этому номеру из строки находим исходный байт файла пользователя и записываем его на место первого байта. Затем берем второй байт из зашифрованного файла и вторую строку из склада базисов, использованную при шифровании второго байта, и восстанавливаем исходное состояние второго байта файла пользователя и т.д.
Таким образом, для шифрования используется двумерный массив случайных строк. Если мы при расшифровке ошибочно используем не ту строку, что применяли при зашифровке, то вместо расшифровки мы зашифруем файл еще раз.
Как видно из приведенного описания, какая-либо функциональная или статистическая связь между исходными байтами файла пользователя и байтами зашифрованного файла пользователя отсутствует. Это связано с тем, что отсутствует связь между величиной байта и его местом расположения в случайных строках склада базисов. Очевидно, что исходный байт файла пользователя и адрес расположения этого же байта в складе базисов никак между собой не связаны, поэтому связь между ними совершенно случайная. Остается рассмотреть возможность повторной генерации склада базисов. Необходимо заново выбрать 2000 строк из множества размером 1 и миллион нулей. Это исключено, так как количество атомов во Вселенной является бесконечно малой величиной перед числом 1 и миллион нулей – физически негде расположить все строки. Таким образом, возможность расшифровки файлов, зашифрованных по нашему алгоритму, исключена даже теоретически. Недавно, я где-то читал о квантовых вычислениях, которые должны взламывать любой шифр. Наш алгоритм дает мощный толчок для развития и совершенствования методов расшифровки. Желаем профессионалам всяческих успехов и удач в разработке методов расшифровки наших файлов. Будем надеяться на то, что наши выводы о теоретической невозможности взлома нашего метода шифрования, являются ошибочными. В противном случае профессиональные дешифровщики просто исчезнут в связи с ненадобностью.

Замена оружия в warface. Категория: Полезные статьи | Просмотров: 223447  richmond, m4a1, mp5, СВК ) Я начну с штурма ( все байты напишу в конце ) 5)

Далее при реализации описанного алгоритма встали вопросы:
1) где хранить склад базисов;
2) где хранить номера случайных строк, использованных при шифровании;
3) где хранить пароли (ключи), позволяющие пользователю расшифровывать свои зашифрованные файлы.
Мы применили следующие решения перечисленных вопросов:
1) склады хранятся в коде программы и в отдельных файлах:
а) публичный внутренний склад базисов, генерируемый программно, вшит в код программы, у всех программ один и тот же, предназначен для обмена зашифрованными файлами между различными пользователями;
б) частный внутренний склад базисов, генерируемый в момент генерации программы, вшит в код программы, у всех пользователей индивидуален и не повторим, предназначен для защиты информации пользователя;
в) публичный внешний склад базисов, генерируется по желанию пользователю в неограниченном количестве, записывается в отдельный файл, предназначен для обмена зашифрованными файлами между различными пользователями по предварительной договоренности;
г) частный внешний склад базисов, генерируется по желанию пользователю в неограниченном количестве, записывается в отдельный файл, предназначен для защиты информации пользователя.
Склады хранятся в зашифрованном виде, как в коде программы, так и во внешних файлах. Зашифровка производится тем же способом – заменой на адреса в случайных складах. Следует отметить чрезвычайную простоту и чрезвычайно большое количество вариантов шифрования одного и того же файла с одним и тем же складом базисов и одним и тем же паролем.
2) номера строк склада базисов, использованных при шифровании, создаются, используются и сохраняются следующим образом:
а) поскольку длина склада базисов превышает 256, то использовать один байт невозможно. Поэтому генерируются две одинаковые по длине строки, содержащие случайные байты. Длина таких строк изменяется от 512 до 2048 байт. Строки независимы. Берем первый байт из первой строки и первый байт из второй строки. Эти байты увеличиваем на единицу и перемножаем. Находим остаток от деления полученного числа на длину склада базисов и прибавляем к нему единицу. Полученное число есть номер строки склада базисов, использованной для шифрования первого байта файла пользователя. Далее, берем второй байт из первой строки и второй байт из второй строки и вычисляем номер второй строки склада базисов, использованной для шифрования второго байта файла пользователя и т.д. и т.п.;
б) случайные строки, используемые для генерации номеров строк склада базисов, храним в оболочке зашифрованного файла пользователя в зашифрованном виде по нашему алгоритму.
3) пароль (ключ) пользователя непосредственно участвует в процессе шифрования. Пароль имеет длину до 1024 байта. Это связано с тем, что байты пароля через один байт записывается либо в первую, либо во вторую строку, генерирующие номера считываемых строк из склада базисов. Всего имеется четыре варианта включения пароля в процесс шифрования: запись либо в первую, либо во вторую строку, запись по четным или нечетным номерам расположения байтов в строке. Все варианты используются случайным образом. Пароль хранится в оболочке зашифрованного файла в зашифрованном виде по нашему алгоритму. Как видно, из приведенного описания в нашем случае пароль может иметь произвольное содержание, в том числе пустое. Кроме того, пароль дополнительно зашифровывается по нашему алгоритму, что увеличивает его энтропию. Никаких проблем с паролями у нас нет.
Оболочка зашифрованного файла имеет случайную длину, у каждого пользователя свои параметры этой оболочки. Общий размер оболочки не превышает 32000 байт. В оболочке содержится информация о действительном имени исходного файла, о его размере, о структуре оболочки, об использовании при шифровании внешнем складе базисов и его имени и другая необходимая информация. Оболочка состоит из случайных областей байтов и трех областей, зашифрованных по нашему алгоритму:
1) единая зашифрованная область длиной от 7000 байт. Расшифровывается

1. ОБХОД Без обхода не получится, только с ним можно заменять байты. 2. ЗАМЕНА БАЙТОВ Включаем "СЕ" выбираем процесс "crossfire" [Вы должны быть

Вы здесь » Читы & Баги & Коды & Файлы » Байты для WarFace » Инструкция по замене байтов в Warface(+байты всех пушек).

3.6.2 Substitute bytes (замена байт). Этот шаг использует предварительно вычисленную таблицу (lookup table) S-box для замены байт в State. Как и секция 3.6.1