Автор Тема: Открыть файл в бинарном виде  (Прочитано 256 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн andre213 [?]

  • Новичок
  • *
  • Сообщений: 10
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Доброго время суток!
Меня интересует такой вопрос: как открыть файл(к примеру BMP*) в бинарной системе счисления, подобно тому как работаю НЕХ редакторы, то есть бит за битом вот в таком виде:


бин: 01000010 01001101 00111010 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00110110 00000000 00000000 00000000 00101000 00000000

Ребята ооочень нужна ваша помощь!!! Мне надо для научных целей.
Знаю можно сделать при помощи массива, преобразуя с шестнадцатеричной системы, но в среднем по размерам BMP файле содержится более 2 миллионов строк (16х8 байт)это оч много для перебора на среднем по мощности компьютере.
Возможно существует решение при помощи регулярных выражений или API File или .COM объекты
« Последнее редактирование: Ноябрь 13, 2017, 22:17:50 от andre213 »

Русское сообщество AutoIt

Открыть файл в бинарном виде
« Отправлен: Ноябрь 13, 2017, 22:08:46 »

Онлайн Alofa [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 1199
  • Репутация: 168
  • Пол: Мужской
  • Windows7 (x64)
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: Открыть файл в бинарном виде
« Ответ #1, Отправлен: Ноябрь 13, 2017, 22:44:13 »
andre213
Посмотрите "Похожие темы" в конце этой страницы

Оффлайн andre213 [?]

  • Новичок
  • *
  • Сообщений: 10

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Открыть файл в бинарном виде
« Ответ #2, Отправлен: Ноябрь 13, 2017, 23:01:30 »
Да, нашёл похожую статью
http://autoit-script.ru/index.php?topic=23546.0

Скорость выполнения оставляет желать лучшего 10 мб файл обрабатывает 10 минут.

Может есть ещё варианты, подойдут также написанные на других языках.

Оффлайн Prog [?]

  • Осваивающий
  • **
  • Сообщений: 275
  • Репутация: 28
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: Открыть файл в бинарном виде
« Ответ #3, Отправлен: Ноябрь 14, 2017, 00:13:15 »
andre213  [?]
Цитировать
есть ещё варианты, подойдут также написанные на других языках
Изучайте.


Внимание: Для просмотра прикреплённых файлов необходимо Войти или Зарегистрироваться

Русское сообщество AutoIt

Re: Открыть файл в бинарном виде
« Ответ #3 Отправлен: Ноябрь 14, 2017, 00:13:15 »

Оффлайн andre213 [?]

  • Новичок
  • *
  • Сообщений: 10

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Открыть файл в бинарном виде
« Ответ #4, Отправлен: Ноябрь 14, 2017, 09:57:21 »
andre213  [?]
Цитировать
есть ещё варианты, подойдут также написанные на других языках
Изучайте.



Изучил... Спасибо за помощь, но это то что я хотел.
Файл показывает в шестнадцатеричном виде (424D36E8F9-Hex), а мне надо в двоичном виде(01000010 01001101 00111010 00000000 00000000 00000000 00000000 00000000 00000000 00000000 -bin).


Онлайн Alofa [?]

  • AutoIt Гуру
  • *****
  • Сообщений: 1199
  • Репутация: 168
  • Пол: Мужской
  • Windows7 (x64)
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: Открыть файл в бинарном виде
« Ответ #5, Отправлен: Ноябрь 14, 2017, 23:16:37 »
OffTopicandre213
Если не секрет, то зачем вам это?
Вас не смущает тот факт, что все BIN-редакторы отображают информацию в HEX?

Оффлайн andre213 [?]

  • Новичок
  • *
  • Сообщений: 10

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Открыть файл в бинарном виде
« Ответ #6, Отправлен: Вчера в 21:02:30 »
Alofa
OffTopicandre213
Если не секрет, то зачем вам это?
Вас не смущает тот факт, что все BIN-редакторы отображают информацию в HEX?
[/quote]

Нет, не секрет, но это касается секретности.
Для реализации СЗИ используют два подхода:
1)Криптографию
2)Стеганографию
Библиотека криптографии встроена  Autoit и встречаться пользовательские функции в инете. А вот стеганография как в классике этого жанра остаётся тайной.
Вкратце есть есть Битмап БМП изображения например (HEX)00-00-00 00-00-00,  то в него можно встроить сообщение(HEX) FF-FF-FF, то стеганоконтейнер будет выглядеть так: 0F-0F-0F 0F-0F-0F.
Этот инжект не исказит существенно наш Битмап. Это называется встраивание в первых 4 бита, 8 битного БМП. Но это слишком грубо и можно выявить встраивание не вооружённым глазом без оригинала.
Для более скрытного встраивания необходимо использовать 3, 2 или 1 последних бит.
Что бы убрать математические операции преобразования(т.е. использовать Регулярные выражения вместо *****х массивов) необходимо использовать восьмеричную систему счисления для встраивания в 3 бита, четырёхручную систему для 2-х битов и двоичную систему для 1 бита.
Я так понял что это оч. жирно для многих языков.
НО выход есть - это использовать двоичную систему для всех 4х вариантов.
Вот я это и ищу.

По-поводу BIN редакторов: нет не смущает, к.т. Hex Editor Neo отображает файлы в HEX/OCT/BIN системах, причём перевод одной системы в другую занимает менее секунды для 50 мб файла(52 мил строк)
Я нашёл решение на Phyton размером в 2 строки(Работоспособность не проверял). Но хотелось бы найти решение  на родном Autoit.

По моему мнению, это возможно осуществить через файловую систему используя COM объект...

Оффлайн Prog [?]

  • Осваивающий
  • **
  • Сообщений: 275
  • Репутация: 28
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.12.0
Re: Открыть файл в бинарном виде
« Ответ #7, Отправлен: Вчера в 22:21:18 »
Вам нужно встроить или выявить встраивание?
В любом случае, задача решается путем логических операций над байтами.

Русское сообщество AutoIt

Re: Открыть файл в бинарном виде
« Ответ #7 Отправлен: Вчера в 22:21:18 »

Оффлайн andre213 [?]

  • Новичок
  • *
  • Сообщений: 10

  • Автор темы
  • Репутация: 0
  • Пол: Мужской
    • Награды
  • Версия AutoIt: 3.3.14.0
Re: Открыть файл в бинарном виде
« Ответ #8, Отправлен: Сегодня в 11:55:04 »
Встроить и выявить. Если регулярное выражения это логическая операция то да.

Русское сообщество AutoIt

Re: Открыть файл в бинарном виде
« Ответ #8 Отправлен: Сегодня в 11:55:04 »

 

Похожие темы

  Тема / Автор Ответов Последний ответ
8 Ответов
4488 Просмотров
Последний ответ Сентябрь 30, 2010, 00:40:46
от Garrett
5 Ответов
6764 Просмотров
Последний ответ Февраль 12, 2013, 17:09:44
от madmasles
7 Ответов
6520 Просмотров
Последний ответ Апрель 27, 2012, 13:39:34
от Вовчик55
12 Ответов
4605 Просмотров
Последний ответ Март 08, 2013, 02:31:54
от joiner
1 Ответов
2545 Просмотров
Последний ответ Март 21, 2015, 17:13:42
от Yashied
1 Ответов
886 Просмотров
Последний ответ Апрель 08, 2015, 06:20:23
от CreatoR
3 Ответов
983 Просмотров
Последний ответ Август 02, 2015, 18:20:25
от sngr
6 Ответов
1268 Просмотров
Последний ответ Сентябрь 13, 2015, 09:58:28
от Yashied
1 Ответов
721 Просмотров
Последний ответ Июль 12, 2016, 12:23:26
от pvnn
3 Ответов
413 Просмотров
Последний ответ Март 12, 2017, 19:12:59
от Garrett