Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Чтение двоичного файла. [D6, WinXP]


Ji ©   (2005-03-11 23:58:00) 

Как из двоичного файла прочитать строку (string)?
Формат файла:
первые 4байта - integer (пусть будет i),
последующие байты - строка длиной i байт


Anatoly Podgoretsky   (2005-03-12 11:25:00) [1]

Ji ©   (12.03.05 10:40) [9]
Конечно, применить над ними XOR и получишь код, остается найти в нем начало повторений.


Ji   (2005-03-12 10:40:00) [2]

Ну тогда еще такой вопрос.
А можно ли, зная исходный текст и результат применения XOR,
восстановить код которым xor'ился исходный текст?


Defunct   (2005-03-12 01:47:00) [3]

Выделите кодововое слово строкой: S = #0+#0+#0+#0+#0+#0+#0+#0;

им и xor'те


GuAV   (2005-03-12 01:40:00) [4]

то есть 8 байт. ещё проще.


GuAV   (2005-03-12 01:39:00) [5]


> Мне все же это очень-очень напоминает простой шифр с
> xor-кодированием

Мне тоже, а в коде похоже 7 байт

> аа абббаб аб аб    | D37C 8917 C0 3A 45 8E D35C 8917


Ji   (2005-03-12 01:36:00) [6]

> Шифр
Подумаю над этим. Кстати, длина результата РАВНА длине оригинала.

Ок. Спасибо и на этом.
Хотя нет, не все... А как применить к этим данным XOR-кодирование?


GanibalLector   (2005-03-12 01:25:00) [7]

>Че за хрень и как с ЭТИМ работать?
Обратись к автору программы Editor


DrPass   (2005-03-12 01:24:00) [8]

Шифр. Или криптограмма (судя по тому, что длина результата не всегда пропорциональна длине оригинала, то вряд ли). Или кодирование по Хоффману. Угадывать можно сколь угодно долго
Мне все же это очень-очень напоминает простой шифр с xor-кодированием


Ji   (2005-03-12 01:08:00) [9]

Ну это понятно. Но ситуация такая. Есть некая программа, для простоты назовем Editor.
Ее функция: 1. введенный в окне текст, записать в файл. 2. прочитать файл и вывести текст.
Причем она текст пишет в файл как-то хитро.
Проводим ряд экспериментов (каждая строка - отдельный файл):
=======================================
вводим          |  видим        
в окне          |  в файле
----------------+----------------------
zzz             | 86 29 DC
привет          | 35 7A 8E 77 47 5C
аааиии          | D3 7C 89 30 E7 1D
ааабббабабаб    | D3 7C 89 17 C0 3A 45 8E D3 5C 89 17
ааа ббб        | E8 1A 45 AE DB 5C A9 17
=======================================
Че за хрень и как с ЭТИМ работать?


DrPass   (2005-03-12 00:10:00) [10]

blockread(f, i, 4);
getmem(p, i);
blockread(f, p^, i);


Наверх

Титульная страница Поиск, карта сайта Написать письмо