Reg binary как расшифровать
Сообщения: 15
Благодарности: 0
Здравствуйте! Я в реестре не разбираюсь, а нужно внести значение в параметр Reg Binary (По умолчанию). Подскажите, пожалуйста, как сделать файл вносящий значение!
Внести надо в HKLM\software\Classes\Wow6432Node\CLSID\\InProcServer32
значение FFFFFFE0FFFFFFE5FFFFFFB5FFFFFFC0FFFFFFAD1CFFFFFFCF01FFFFFFD0FFFFFFA0FFFFFFBAFFFFFFC0FFFFFFAD1CFFFFFF CF01010000000200000000000000
Параметр, куда вносить, на всякий случай заскринил:
http://rghost.ru/52052541/image.png
Сообщения: 15
Благодарности: 0
Если возможно еще, дайте, пожалуйста, ссылку, где бы для чайников объясняли по поводу моего вопроса — все что я нашел, то ли непонятно написано, то ли не в тему.
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.
Сообщения: 5380
Благодарности: 1874
Конфигурация компьютера | ![]() |
ОС: OpenSUSE Tumbleweed en-us, Windows 10 Pro x64 en-us |
Как в реестре работать с параметром REG_BINARY? Нужно обратиться к разработчику программы, которая создала этот ключ реестра. Бинарный тип — это просто массив байт: Type TRegistryBinary = array of Byte; Следовательно, эта структура, по сути, тоже самое, что файл на диске. Там можнет быть записана любая информация. Средством редактирования реестра можно лишь просмотреть массив, как HEX редактором. http://social.technet.microsoft.com/Forums |
Сообщения: 8176
Благодарности: 2820
Конфигурация компьютера | ![]() |
Процессор: Intel Pentium Dual-Core Mobile T2390 1866 МГц | |
Материнская плата: Quanta 30CC | |
Память: 2 × 512МБ DDR2-666 SDRAM (ProMos/Mosel Vitelic) (1 гиг) | |
HDD: TOSHIBA MK1646GSX 160 гиг sata | |
Видеокарта: Mobile GM965/GL960 Express Integrated Graphics Controller | |
Звук: 82801H (ICH8 Family) HD Audio Controller , Realtek ALC268 | |
Блок питания: 65 w 2008 г | |
CD/DVD: TSSTcorp CDDVDW TS-L632N | |
Монитор: LG Philips LP154WX4-TLC8 (LPL 0120) 15.4″ | |
ОС: Windows XP pro x32 | |
Индекс производительности Windows: None | |
Прочее: Hewlett-Packard HP Pavilion dv6700 Notebook PC |
Цитата dnk2010:
нужно внести значение в параметр Reg Binary (По умолчанию). » |
нужно щёлкнуть правой клавишей мышки по InProcServer32 и выбрать экспортировать
получится файл с расширением reg
этот файл и будет
Цитата dnk2010:
файл вносящий значение! » |
Будем жить, Маэстро.
Сообщения: 6694
Благодарности: 1393
Конфигурация компьютера | ![]() |
Процессор: Intel Pentium 4 Socket 478 2.26 Ghz/512/533 BOX | |
Материнская плата: ABIT IS7-E2 i865PE+ICH5, S-478 VC 6ch SB Lan ATX 2 DDR 400 | |
Память: PQI DDR 512 Mb, 400 Mhz | |
HDD: SAMSUNG HD103SJ (1000 Гб, SATA) | |
Видеокарта: AGP ATI Radeon X1550 256/128 DDR2 (Palit) | |
Звук: Интегрированный звук | |
Блок питания: ATX Midle Tower CODEGEN 6205-C9 P4, 300W, 27 Ноября 2004 г. | |
CD/DVD: LG DVD-RW, GSA-H30N RBBB (SATA) | |
Монитор: Samsung SyncMaster 223BW(Digital) [NoDB] (HMEQ201792) [21.6″ LCD-TFT Монитор] | |
ОС: Windows XP Professional (SP-3) Russian. Special Edition XP | |
Прочее: Borland C++ Builder 6.0 Enterprise Suite и CodeGear C++ Builder 2009 |
dnk2010, Создаёте файл addreg.cmd, пишете туда
REG ADD HKLM\software\Classes\Wow6432Node\CLSID\\InProcServer32 /ve /t REG_BINARY /d FFFFFFE0FFFFFFE5FFFFFFB5FFFFFFC0FFFFFFAD1CFFFFFFCF01FFFFFFD0FFFFFFA0FFFFFFBAFFFFFFC0FFFFFFAD1CFFFFFFCF01010000000200000000000000
Почитать можно: Пуск — Выполнить — cmd — Enter — пишем add reg /? — Enter
C:\Documents and Settings\Maestro>reg /? Программа редактирования системного реестра из командной строки, версия 3.0 (C) Корпорация Майкрософт, 1981-2001. Все права защищены REG [Список параметров] == [ QUERY | ADD | DELETE | COPY | SAVE | LOAD | UNLOAD | RESTORE | COMPARE | EXPORT | IMPORT ] Код возврата: (за исключением REG COMPARE) 0 - Успешно 1 - С ошибкой Для получения справки по определенной операции введите: REG /? Примеры: REG QUERY /? REG ADD /? REG DELETE /? REG COPY /? REG SAVE /? REG RESTORE /? REG LOAD /? REG UNLOAD /? REG COMPARE /? REG EXPORT /? REG IMPORT /? C:\Documents and Settings\Maestro>reg add /? Программа редактирования системного реестра из командной строки, версия 3.0 (C) Корпорация Майкрософт, 1981-2001. Все права защищены REG ADD [/v | /ve] [/t ] [/s ] [/d ] [/f] [\\\] Имя удаленного компьютера, если оно опущено, то по умолчанию считается равным имени локального компьютера. На удаленных компьютерах доступны только разделы HKLM и HKU. Полный путь к разделу реестра в виде КОРЕНЬ\Подраздел. Корневой радел. Значения [ HKLM | HKCU | HKCR | HKU | HKCC ]. Полный путь к разделу реестра в выбранном корневом разделе. /v Имя добавляемого параметра в указанном разделе. /ve Добавить пустой параметр (По умолчанию) в указанный раздел. /t Типы данных. [REG_SZ | REG_MULTI_SZ | REG_DWORD_BIG_ENDIAN | REG_DWORD | REG_BINARY | REG_DWORD_LITTLE_ENDIAN | REG_NONE | REG_EXPAND_SZ ] По умолчанию, считается равным REG_SZ. /s Определяет разделитель, который используется для разделения данных в многострочных параметрах типа REG_MULTI_SZ. По умолчанию, считается равным "\0". /d Значение, присеваемое добавляемому параметру реестра. /f Принудительно перезаписывать существующие записи реестра без предупреждения. Примеры: REG ADD \\ABC\HKLM\Software\MyCo Добавляет раздел HKLM\Software\MyCo на удаленный компьютер ABC REG ADD HKLM\Software\MyCo /v Data /t REG_BINARY /d fe340ead Добавляет параметр с именем: Data, типом: REG_BINARY, и значением: fe340ead REG ADD HKLM\Software\MyCo /v MRU /t REG_MULTI_SZ /d fax\0mail Добавляет параметр с именем: MRU, типом: REG_MUTLI_SZ, и значением: fax\0mail\0\0 REG ADD HKLM\Software\MyCo /v Path /t REG_EXPAND_SZ /d %%systemroot%% Добавляет параметр с именем: Path, типом: REG_EXPAND_SZ, и значением: %systemroot% Примечание: Используйте в строке двойные символы процента ( %% )
——-
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]
Windows Параметр REG_BINARY
Необработанные двоичные данные.
Большинство сведений об аппаратных компонентах хранится в виде двоичных данных и выводится в редакторе реестра в шестнадцатеричном формате.
Очень много информации содержится именно в параметрах типа REG_BINARY.
Первое что нам нужно запомнить- параметр типа REG_BINARY содержит двоичные данные в шестнадцатиричном формате.
В этой теме я опубликовал таблицу символов шестнадцатиричной системы исчисления,она нам пригодится.
- Двоичная система счисления — Википедия
- Электронный справочник по ИНФОРМАТИКЕ (Автор Панов В.А.)
В поле Параметр данного окна отображается наименование редактируемого параметра, а в поле Значение с клавиатуры вводится нужное значение.
Тут надо учитывать что в центральной части поля Значение отображается редактируемый байт в шестнадцатиричном виде, а справа от него – уже читабельный вариант,символы появляются по мере ввода соответственно каждому введенному биту в центральной части.
В режиме редактирования двоичного параметра реализована возможность ввода информации как в двоичной, так и в шестнадцатеричной форме (поразрядно).
Нажатием кнопки OK параметру REG_BINARY присваивается введенное значение.
Видимые в центральной части 8 значений-это байты в шестнадцатиричном значении.
Как мы помним из курса по двоичным данным — один символ это один байт.
Один байт — это 8 бит.
8 бит= октет ,полный байт.
Давайте попробуем создать параметр REG_BINARY и вписать туда значение SafeZone .
Как я и говорил ранее нам понадобится таблица из этой темы
Пробуем ввести следующий код в центральной части :
53 61 66 65 5a 6f 6e 65
В правой части увидим SafeZone .
Обратите внимание что окончание строки тут не подписывается значением null 00,00
Если произвести экспорт в reg-файл,значение будет отображаться аналогично,но через запятые:
Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\razdel] "Tect"=hex:53,61,66,65,5a,6f,6e,65,53,61,66,65,5a,6f,6e,65
Эксперимента ради можно перевести значение в двоичную форму-так как ее видит комп.
Воспользуемся калькулятором:
(вид-программист)
53 61 66 65 101011 110001 110110 110101
Это четыре буквы Safe.
Что бы вычислить ставим флажок на Hex а затем вводим код символа и жмем Bin
И получаем нужное значение.
Последнее редактирование: 5 Дек 2016
machito
Команда форума
Супер-Модератор
Сообщения 2,687 Реакции 2,027
Интересная тема, спасибо Кирилл.
regist
гоняюсь за туманом
Ассоциация VN/VIP
VIP
Разработчик
Сообщения 14,626 Реакции 6,709
Для большего удобства этих преобразований можно использовать утилиту OTConvertIt. Вот для примера
safer
Новый пользователь
Сообщения 4 Реакции 2
Очень много информации содержится именно в параметрах типа REG_BINARY.
ну хоть бы намек на реальный пример такой информации.
есть книга, где автор \см файл\ много и подробно пишет о реестре и о reg bin. и тоже без хоть маленького примера.
а между тем, как показало мое небольшое исследование, рег бин может иметь просто колоссальный вес\объем\: я ставил RED BUTTON- редактор реестра. но не понравился и удалил. чистил реестр прогой RegScanner. конечно, сначала посмотрел что на удаление.
чем замечательна эта простенькая программа?-указывает вес значений ключей !
и вот увидел-вес некоторых рег бин =58 кб! причем, как обычно, значения часто повторяются в другом разделе. те уже 100 кб! и это для одного рег бин.
конечно, не все рег бин в программе так тяжелы и может не во всякой программе так.
теперь понятно необходимость чистки реестра после удаления. иначе реестр пухнет.
конечно, в нужных прогах такие рег бины не выкинешь.
однако что такое там содержится? ведь 58 кб\ я перенес в блокнот\ это около 40 страниц текста.
уберем половину на кодировку-все равно немало.
что это может быть? вся документация для пользователя открыта свободно. что еще нужно кодировать так много?
раскодировать вручную такие объемы немыслимо. впрочем-может и не надо.
Вложения
хоннекайт- книга.png
16.4 KB · Просмотры: 144
регбин .png
30.8 KB · Просмотры: 144
Последнее редактирование: 15 Ноя 2016
Кирилл
Команда форума
Администратор
Ассоциация VN
Сообщения 14,076 Реакции 5,782
safer, вы можете ваш вопрос сформулировать поточнее?
На данный момент это похоже на мысли вслух
safer
Новый пользователь
Сообщения 4 Реакции 2
да — это мысли вслух. поделился тем, что накопал. мне кажется вес рег бин в 58 кб вряд ли кто из обычных юзеров ожидал. хотя об этом они просто не думают.
относительно уточнения вопроса: я уже написал-хоть бы небольшой реальный пример содержимого рег бин.
или общее объяснение-какого типа \ инструкция или типа ini-файла и тд\ это содержание бывает.
я понимаю-этот вопрос очень спец, узок. и он ничему и никому не нужен для пользы. у меня это чистый интерес.
Кирилл
Команда форума
Администратор
Ассоциация VN
Сообщения 14,076 Реакции 5,782
Как ни странно,но на самом деле такой формат позволяет читать системе его гораздо быстрее,чем привычный глазу пользователя.
shestale
Ассоциация VN/VIP
Преподаватель
Сообщения 9,332 Реакции 3,990
А мне нравится этот Hex Editor(installable и portable).
safer
Новый пользователь
Сообщения 4 Реакции 2
В начале моего поста я указал, что неплохо бы иметь пример реального раскодированного рег бин.
Или хотя типы текстов в рег бин: обычные тексты, программы и тд. не понятно-зачем кодировать текст, весом 58 кб. ведь в реестре по идее его создания должны быть очень краткие сведения о компе , прогах и тд, что мы и видим обычно.
Конечно, вряд ли обычному юзеру это надо — это мой личный интерес.
Я пытался работать с OTConvert утилитой для декодировки и начал с 58 кб текстом — не получилось пока.
Спасибо за наводку на HEX EDIT, попробую.
Последнее редактирование модератором: 18 Ноя 2016
Кирилл
Команда форума
Администратор
Ассоциация VN
Сообщения 14,076 Реакции 5,782
что неплохо бы иметь пример реального раскодированного рег бин.
Реальная декодировка и кодировка указаны в первом сообщении.
Так же следует учитывать тот факт,что декодировка может производиться как с лева направо,так и справа налево — в зависимости от типа банарника.
Так же данные примеры вовсе не означают того,что расшифрованные данные будут удобочитаемы и понятны пользователю.
Или вообще может быть другой принцип кодировки.
Dragokas
Angry & Scary Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения 7,482 Реакции 6,366
safer, что-то намешали всего в кучу. А реального вопроса нет.
Начнём с того, что чистка реестра не обсуждается в этой теме. Вы можете получить ответы, почитав эту тему: https://safezone.cc/threads/chistka-reestra.23231/
Там же вы узнаете, почему не нужно бояться большого объема файлов реестра.
Понятие «кодирование» имеет много значений в контексте обсуждаемой темы, поэтому не стоит всё смешивать.
Параметр типа REG_BINARY используется для многих целей. Но зачастую, для записи информации, в содержимом которой могут быть служебные символы, например символы с кодами 0x00 — 0x31.
И ещё когда нужно записать большой объём данных. В этом случае можно конечно задать резонный вопрос, почему не воспользоваться типом REG_SZ. Дело в том, что REG_SZ обычно пишут в формате юникод, поэтому он будет занимимать в 2 раза больше места. Но дело больше в том, что с бинарными данными в программе проще работать. Обычно это кусок структурированной информации, где по определённому смещению находится то или иное поле с данными.
Чтобы понять, как именно система (или программа, создавшая этот параметр) интерпретирует его, нужно обратится к спецификации на данный конкретный параметр (если таковая существует).
Вот к примеру,
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\S-1-5-18 => SID
здесь дублируется в бинарном виде идентификатор безопасности пользователя. Никакого принципа кодирования нет. Просто строка записана в бинарном виде.
Из последнего, в чём я самостоятельно разбирался, например, политики IPSec:
HKLM\SOFTWARE\Policies\Microsoft\Windows\IPSec\Policy\Local\ в этом из разделов есть параметр ipsecData.
По одному из смещений часть инфы кодируется примерно так:
'00,00,00,00,00,00,00,00 -> any IP 'xx,xx,xx,xx,ff,ff,ff,ff -> specified IP / subnet '00,00,00,00,ff,ff,ff,ff + [0x6F] == 0 -> my IP '00,00,00,00,ff,ff,ff,ff + [0x6F] == 0x81 -> DNS-servers '00,00,00,00,ff,ff,ff,ff + [0x6F] == 0x82 -> WINS-servers '00,00,00,00,ff,ff,ff,ff + [0x6F] == 0x83 -> DHCP-servers '00,00,00,00,ff,ff,ff,ff + [0x6F] == 0x84 -> Gateway ' '[0x4E] == 1 -> mirrored ' '[0x66] -> port type '[0x6A] -> port number (source) '[0x6C] -> port number (destination)
и так далее. Каждый случай уникален.
Видимые в центральной части 8 значений-это биты.
Это неправда. Там указаны байты в 16-ричном виде. Сам же дальше пишешь, что:
Тут надо учитывать что в левой части поля Значение отображается номер редактируемого байта, а справа от него – восемь битов данного байта
при том что на картинке № байтов показаны 0, а во второй строке уже 8 и т.д. Эти значения также указаны в 16-чной СС.
Возможны еще 4 и 2 битные варианты.
Вообще непонятно, о чём речь.
Последнее редактирование: 29 Ноя 2016
Кирилл
Команда форума
Администратор
Ассоциация VN
Сообщения 14,076 Реакции 5,782
Dragokas,ага,где то намесил.
Найду где сохранил исходники разберусь,похоже должно было быть две темы.
Статью поправлю.
safer
Новый пользователь
Сообщения 4 Реакции 2
вернусь к чтению регбин. для этого надо раскодировать текст регбин , что требует копирования в программу декодирования и тд.
много проще и удобно это делать с программой RegScanner. пример см файл снимка. тут все ясно.
основную работу делает реестр. это он показывает раскодировку в окне изменения двоичного параметра. RegScanner быстро ищет что надо.
конечно, в окне изменения двоичного параметра=искомый текст не все читаемо и окно мало. но английский текст вполне.
странно, но прямой поиск в реестре файла примера НЕ находит регбин этого файла\только REG_SZ\.
или я что-то не так делаю?
я не имею большой цели в чтении регбин-обычное любопытство. поэтому, видимо, мои методы дилетантны.
Вложения
20.9 KB · Просмотры: 125
20.9 KB · Просмотры: 116
Dragokas
Angry & Scary Developer
Команда форума
Супер-Модератор
Разработчик
Клуб переводчиков
Сообщения 7,482 Реакции 6,366
Regedit не предназначен для поиска параметров типа REG_BINARY.
Используйте более продвинутые альтернативы. См. в теме: Набор программ для работы с реестром
«G~Lí†çh»
Новый пользователь
Сообщения 7 Реакции 6
и вот увидел-вес некоторых рег бин =58 кб! причем, как обычно, значения часто повторяются в другом разделе. те уже 100 кб! и это для одного рег бин.
Ох, попалось несколько REG_MULTI_SZ в [HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib\CurrentLanguage]
Вот тут-то у меня бывало и по 12 МЕГАбайт! Без понятия из-за чего, там по нескольку сотен раз дублировалась одна и та же куча строк что вызывало ошибку при открытии системного монитора «Не удаётся загрузить счётчики»… Ручная правка этого параметра невозможна, удалить ключ тоже нельзя… Благо, именно для этого существует команда LODCTR /R , что помогло решить, но «осадочек остался» — файл куста-то так и остался чересчур разрежённым! Несколько программ, заявляющих возможность дефрагментации реестра, облажались: предлагают «освободить» максимум четверть мегабайта (будто бы вообще не в курсе о высвобожденом десятке мегабайт) — ещё больше укрепило недоверие к organizer / optimizer / cleaner — туфта конченая, абсолютно бесполезная … Уже даже такое безобидное название, как «organizer» вошло в «список» игнорируемых к ознакомлению программ…
Хотелось бы что-то наподобие NTREGOPT из пакета ERUNT, но только чтобы не настолько сильно «сжимало», чтоб стало ещё хуже — хоть какая-то разрежённость должна оставаться в определённых местах (а потом нахожу сообщения и о других недостатках)…
К слову, даже после LODCTR /R — количество данных остаётся «больше позволенного к просмотру» regedit`ом. так что, 64 кб — далеко не лимит…
Что касается REG_BINARY и системного монитора — HKLM\SYSTEM\CurrentControlSet\Control\WMI\Security хранит определённые параметры безопасности Trace Providers (Поставщиков отслеживания) в Data Collector Sets\Startup Event Trace Sessions || Группы сборщиков данных\Сеансы отслеживания событий запуска.
Именно тут мне впервые попался «пользователь» ЗАПИСЬ ОГРАНИЧЕНА… Тупо, что его можно удалить, но невозможно обратно добваить! Если это относится к самому журналу, то можно каким-то образом и через экспорт/импорт XML`ки (всего одна SDDL-строка, где можно подписать S-1-5-33).
В интернете уже давно выяснили, как его «распотрошить» PowerShell`ом:
$key = "hklm:\SYSTEM\CurrentControlSet\Control\WMI\Security" $sd = (gp -Path $key)."нужный GUID, т.е. имя параметра" $sddl = ([wmiclass]"Win32_SecurityDescriptorHelper").BinarySDToSDDL($sd).SDDL $sddl
Причём нашлась эта «подсказка» для параметра AccessPermission у определённых подключей Classes\AppID (которые можно встретить в оснатке «Службы компонентов» … Настройка DCOM)
Есть ещё вроде REG_NONE, и вроде бы как некоторые ключи куста SECURITY || SAM имеют немного другую структуру, «неподвластную» wmiclass`у «Win32_SecurityDescriptorHelper» — secpol.msc немного иначе «потрошится», благо есть PolsEdit от Southsoftware (особенно полезен для home edition), но и он «не всё» может впихнуть (хоть и позволяет больше, чем родной secpol.msc)…
Ещё бы выяснить, где хранятся параметры безопасности остальных WinObj, и особенно интересно тех, что правились в TweakUI на WinXP (где даже была расшифровка S-1-5-32-549 и S-1-5-32-550, которых так же вручную добавить нельзя тем же TweakUI)
Чтение из реестра бинарных данных в HEX виде.
Вообщем такое дело, есть в реестре ключ типа REG_BINARY, в нем записаны определенные данные, мне их нужо получить в строковом (string) виде, для дальнейшей с ними работы. Как это реализовать на С++ Builder (или хоть на чем другом)? Пример такого Reg файла приведен ниже.
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Control\Session Manager\AppCompatCache] "AppCompatCache"=hex:ee,0f,dc,ba,77,02,00,00,78,00,00,00,9a,c7,00,00,00,00,00,\ 00,96,0b,00,00,0b,00,00,00,00,00,00,00,4d,00,00,00,30,00,00,00,19,03,00,00,\ 00,00,00,00,b5,c2,00,00,be,04,00,00,77,02,00,00,00,00,00,00,0b,09,00,00,00,\ 00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,01,00,00,00,0c,00,00,00,f3,02,\ 00,00,00,00,00,00,00,00,00,00,f3,02,00,00,0c,00,00,00,00,00,00,00,00,00,00,\ 00,04,18,01,00,00,00,00,00,46,00,48,00,48,d1,01,00,15,4b,38,fe,f9,88,cb,01,\ 07,00,00,00,00,01,00,00,00,00,00,00,00,00,00,00,58,00,5a,00,ee,d0,01,00,8d,\ c8,f2,65,f1,41,cc,01,07,00,00,00,00,01,00,00,00,00,00,00,00,00,00,00,5c,00,\ 5e,00,90,d0,01,00,29,de,f1,65,f1,41,cc,01,07,00,00,00,00,01,00,00,00,00,00,\ 00,00,00,00,00,48,00,4a,00,46,d0,01,00,6a,75,db,fd,f9,88,cb,01,07,00,00,00,\ 00,00,00,00,00,00,00,00,00,00,00,00,44,00,46,00,00,d0,01,00,80,6e,91,0a,fa,\ 88,cb,01,05,00,00,00,00,01,00,00,00,00,00,00,00,00,00,00,46,00,48,00,b8,cf,\ 01,00,5c,2f,0f,f9,f9,88,cb,01,05,00,00,00,00,01,00,00,00,00,00,00,00,00,00,\ 00,48,00,4a,00,6e,cf,01,00,f9,2f,a2,53,7e,dc,cc,01,07,00,00,00,00,01,00,00,\ 00,00,00,00,00,00,00,00,40,00,42,00,2c,cf,01,00,bf,22,c2,00,fa,88,cb,01,07,\ 00,00,00,00,01,00,00,00,00,00,00,00,00,00,00,3c,00,3e,00,ee,ce,01,00,20,bc,\ 29,73,20,04,ca,01,07,00,00,00,00,01,00,00,00,00,00,00,00,00,00,00,48,00,4a,\ 00,a4,ce,01,00,90,c8,22,71,20,04,ca,01,0f,00,00,00,01,11,00,00,c8,01,00,00,\ fe,d4,00,00,8a,00,8c,00,18,ce,01,00,81,22,25,ab,d1,b4,cc,01,07,00,00,00,00,\ 01,00,00,00,00,00,00,00,00,00,00,46,00,48,00,d0,cd,01,00,a0,80,03,f7,f9,88,\ cb,01,05,00,00,00,00,01,00,00,00,00,00,00,00,00,00,00,48,00,4a,00,86,cd,01,\ 00,de,b4,18,f9,f9,88,cb,01,05,00,00,00,00,01,00,00,00,00,00,00,00,00,00,00,\ 46,00,48,00,3e,cd,01,00,20,a8,3e,77,20,04,ca,01,07,00,00,00,00,00,00,00,00,\ 00,00,00,00,00,00,00,46,00,48,00,f6,cc,01,00,7b,64,6b,4d,2a,d2,cc,01,07,00,\ 00,00,00,01,00,00,00,00,00,00,00,00,00,00,72,00,74,00,82,cc,01,00,51,f3,de,\ aa,42,d2,cc,01,07,00,00,00,00,01,00,00,00,00,00,00,00,00,00,00,42,00,44,00,\ 3e,cc,01,00,dc,b1,b9,01,fa,88,cb,01,05,00,00,00,00,01,00,00,00,00,00,00,00,\ 00,00,00,4e,00,50,00,ee,cb,01,00,00,2c,a4,8a,20,04,ca,01,05,00,00,00,00,01,\ 00,00,00,00,00,00,00,00,00,00,60,00,62,00,8c,cb,01,00,5d,37,2f,ab,42,d2,cc,\ 00,55,00,49,00,2e,00,65,00,78,00,65,00,00,00
Reg binary как расшифровать
Проблема с Binary. Delphi
От: | Xobotik |
Дата: | 12.03.09 01:30 |
Оценка: |
Задача заключается в следущем считать из реестра значение типа REG_BINARY и потом привести к читабельному виду, вот так было реализовано, но на выходе ерунда:
//HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\LicenseInfo - тип BINARY function TReadReg.GetLicenceInfo : TResultat; var Buf : array[0..1000] of char; begin try Reg := TRegistry.Create; ReadValue := TReadValue.Create; Reg.RootKey := HKEY_LOCAL_MACHINE; if Reg.OpenKeyReadOnly('SOFTWARE\Microsoft\Windows NT\CurrentVersion') then begin Reg.ReadBinaryData('LicenseInfo',Buf,sizeof(Buf)); ReadValue.rRegCurrKey := buf; ReadValue.rRegPathKey := 'HKEY_LOCAL_MACHINE\' + Reg.CurrentPath + '\LicenseInfo'; ReadValue.rRegSizeKey := IntToStr(Reg.GetDataSize('LicenseInfo')-1)+'байт'; Reg.CloseKey; Result := TResultat.Create(ReadValue.rRegCurrKey,ReadValue.rRegPathKey,ReadValue.rRegSizeKey); end else Result := TResultat.Create('Не найдено','Не найдено','0'); Reg.CloseKey; finally Reg.Free; ReadValue.Free; end; end;
То есть получается как нужно преобразовать массив Buf в котором, как я полагаю записаны бинарные значения, в читабельный вид ( к типу string ). Помогите все перепробывал. По идеи тут мы имеем в параметре LicenseInfo что-то записанное в 16-ой системе счисления. Тогда получается в Buf ( буфер ) помещается как раз что-то записанное в 16-ой системе счисления. Пробовал преобразовывать по всякому, но все равно бред получается, возможно ли, что, этот параметр ключа еще как — то шифруется ? Хелп =)
С уважением!
Re: Проблема с Binary. Delphi
От: | silent_roach |
Дата: | 12.03.09 06:59 |
Оценка: |
Вряд ли Microsoft держит алгоритм шифрования такой информации открытым.
Re: Проблема с Binary. Delphi