Аппаратный поиск паролей


Wiki

Программаторы с управлением на базе протокола команд SFPTotal поддерживают функцию аппаратного поиска пароля, с помощью которой возможно осуществлять поиск паролей в широком диапазоне значений c высокой скоростью операций.

Подробнее о назначении и синтаксисе команд управления можно узнать на странице Команды протокола SFPTotal.

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


Скорость поиска

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

Установить скорость тактирования шины данных 100 000 Hz.

I2CRATE=12

Установить паузу между блоками 16 ms

I2CPAUSE=10


Проблема скорости

Для успешного поиска необходимо, чтобы скорость операций и временной промежуток паузы между блоками были такими, при которых у трансивера будет достаточно времени на сохранение изменений, при этом будет сохраняться его способность продолжать обмен и обрабатывать события на шине данных.

Слишком высокая скорость записи может являться причиной прерывания внутренней программы трансивера по сохранению изменений. И как результат, причиной пропуска правильного пароля из-за невозможности проверить результат его ввода.

Рекомендуется подбирать оптимальные настройки работы программатора, при которых поиск продолжается и не прерывается кодами ошибок на шине данных.

Пределы скорости работы модуля зависят от его аппаратного обеспечения, качества программы управления и физической скорости стирания целевой памяти EEPROM/Flash.


Область записи контрольного слова

Используйте команды BFCWADR и BFCWOFT, чтобы изменить стандартные настройки области записи контрольного слова.


Настройки ввода контрольного слова для SFP

BFCWADR=A0
BFCWOFT=00


Настройки ввода контрольного слова для QSFP

BFCWADR=A0
BFCWOFT=80


Настройки для записи в страницу A2h трансивера SFP

BFCWADR=A2
BFCWOFT=80


Диапазоны значений

Для ускорения процедуры поиска рекомендуем в первую очередь проверить диапазоны значений в рамках определенной группы символов, которые имеют представление по таблице ASCII символов.

Диапазон буквенных значений от A до Z

BFSET A2 7B 41414141 5A5A5A5A 41414141


Диапазон буквенных значений от a до z

BFSET A2 7B 61616161 7A7A7A7A 61616161


Диапазон числовых значений от 0 до 9

BFSET A2 7B 30303030 39393939 30303030


Символы, цифры, буквы

BFSET A2 7B 20202020 7A7A7A7A 20202020 


Полный диапазон

BFSET A2 7B 00000000 FFFFFFFF 00000000


Запуск

Запуск поиска паролей для SFP+ со стандартной областью ввода пароля

BFCWADR=A0
BFCWOFT=00
BFSET A2 7B 20202020 7A7A7A7A 20202020


Запуск поиска паролей для SFP+ с НЕстандартной областью ввода пароля

BFCWADR=A0
BFCWOFT=00
BFSET A2 FC 20202020 7A7A7A7A 20202020


Запуск поиска паролей для трансивера XFP

Перед запуском аппаратного поиска паролей для модулей XFP, QSFP должена быть установлена соответствующая перемычка MODSEL/MODDESEL на плате устройства.

BFCWADR=A0
BFCWOFT=94
BFSET A0 7B 20202020 7A7A7A7A 20202020


Пример поиска

Лог выполнения аппаратного поиска для трансивера SFP+ при подключении к программатору через Putty

# Устанавливаем настройки скорости и паузу
I2CRATE=12
I2CPAUSE=05

# Область ввода контрольного слова
BFCWADR=A0
BFCWOFT=00

# Включаем эхо вывод команд
CLI=1

# Запускаем поиск в указанном диапазоне с вводом пароля в A2 по смещению FC
BFSET A2 FC 84720000 8472FFFF 84720000
Device=A2
Offset=FC
From    84 72 00 00
To      84 72 FF FF
Start   84 72 00 00


FOUND: 84 72 84 00


 STOP
Device=A2
Offset=FC
From    84 72 00 00
To      84 72 FF FF
Current 84 72 84 00

Результат поиска: 84728400


Примечание

Перед использованием рекомендуется предварительно ввести набор команд настройки и запуска аппаратного поиска в текстовый редактор, чтобы исключить возможные ошибки.


Видео-гайд