Всем доброго дня!
нужна помощь в написании процедуры работы с картой памяти.
на карте памяти 2 файла DIC и STOK
в файле DIC словарь в формате
AB AB
AС AС
AD AD
… n-е количество строк по 2 байта
передача данных в цикле, передаются 4 байта, из которых первые 2 из словаря, третий и четвертый из вложенного цикла
необходимо передать либо весь словарь до конца и выдать сообщение об окончании словаря, либо весь словарь до положительного ответа, перебирая вложенные циклы -AB AB 0 0, AB AB 0 1 … AD AD 255 255
for (e = 0; e <= 255; e++) {
for (f = 0; f <= 255; f++) {
mySerial.write(byte(первый байт словаря));
mySerial.write(byte(второй байт словаря));
mySerial.write(byte(e));
mySerial.write(byte(f));
после передачи 4х байт проводится проверка ответа эбу
while (mySerial.available() > 0) // ПОКА есть что то на вход
{
strData += (int)mySerial.read(); // забиваем строку принятыми данными
recievedFlag = true; // поднять флаг что получили данные
delay(2); // ЗАДЕРЖКА. Без неё работает некорректно!
//Serial.println(strData); // для тестовых проверок
}
if (recievedFlag) // если данные получены
{
if (strData == "60060") // это 3с003с - ответ от блока что байты совпали
{
Serial.println("ok");
здесь нужно передать в файл STOK два байта из словаря (с которыми мы получили положительный ответ) и e f из цикла и закончить цикл.
если перебор словаря закончен и положительный ответ "60060"не получен - вывести сообщение в serial
}
}
}
}
}
для работы с картой памяти используется SD.h и SPI.h
для тех кто возьмется, имейте ввиду
все эти манипуляции с ЭБУ, потом конечному клиенту, обходятся в десятки килорублей!!
так что не пишите код за доширак
ответ от блока что байты совпали как передается ? сообщением 60060 в ком порт ?
эбу может в монитор порта отправить данные что ему нужно ?
( не плохо бы код посмотреть, как он определяет… )
и мой код будет искать пока не найдет совпадение…
при нахождении запишет… а окончание не помню как определить… (пусть это будет qq в конце файла, при обнаружении этих символов, перебор будет закончен ) 15-25к, и если подойдет, то возможно вроде… но надо проверять…
ответ от блока что байты совпали как передается ? сообщением 60060 в ком порт ? - да
эбу может в монитор порта отправить данные что ему нужно ? - нет, мы их и ищем…
давайте так за каждое действие в коде 5к хорошо))) ?
это будет извлечение с сд карты
будет преобразование в строку ( пожалуй накину отправку в порт бесплатно!!! )
функция сравнения строки пришедший с существующей (я с ней долго потел))) ), для остановки и записи. Можете купить частично действия))) насчитал всего 3… ну да ладно))) как еще выудить 10к придумаю позже))) для скидки вам придется объяснить почему вы зарабатывали деньги, пока я учился, и почему теперь из набора моих знаний, вы хотите купить часть, шелуху от семечек вы тоже не покупаете ?))) кстати чищенные семена стоят в 3 раза дороже ?))) вообще я не подаю, зачем вы побираетесь тут, когда можете сами обучиться?))) удивите юмором, и может быть вам будут скидки)))
вы про меня ?))) недавно нашел ваш форум, хотел познакомиться, спросил зачем создали форум, чтоб понять кто тут, и для чего, пришел какой то нарик самурай, и сказал что у самурая цели нет, есть путь, ну я подумал что он филосов, и чувство юмора есть, ответил, и отлетел ак в бан, и коменты потерли ( надеюсь этот лучше будет форум чем предыдущий, и то что это был 1дин участник такой))) ) иначе вы реально самураи! и найдете свою цель))) а вообще попутно вопросы, тут что лебезить надо ? аристократия так же сохранилась ? если хер с морщинами те втирает дичь надо молчать ? ( просто интересно кто тут, есть ли народ с юмором… или не пойми кто…)
я предлагаю:
вариант 1) 50 к.рублей, одновременно, исходники в комплекте.
вариант 2) прошивка для контролера + схема, работает только с моей SD, 10т.р. + каждый ответ от удачного брутфорса в телегу/ватсап по паролю в обмен на 1т.р.
не могу представить как вы планируете передать данные, он же будет слушать ком порт(выводить то что вы будите скармливать, и перед ответом просто получит правильную комбинацию))) ), и шифровка при передачи куда то, съест больше времени чем решение задачи…( да и зачем еще так морочиться, может просто hex ? )
ладно вы меня убедили
не буду заниматься “мартышкиным трудом”
ну а если серьезно, задача интересная, но ТС пытается вклинится в известную схему
“придумал - рубль; сделал - десять; продал - сто”
на втором этапе, причем за деньги первого, ожидая прибыли последнего.
я вообще не понимаю для чего это… но примерно знаю как в коде указать…
#include <MD5.h>
int val =23456;
String stringOne, stringTwo; // сравнение хеша который ищем с текущим, если строка не полностью сравнивается, а только несколько символов, дайте пж. знать
void setup(){
Serial.begin(9600);
}
void loop() {
char buff[5];
itoa(val, buff, DEC);
unsigned char* hash=MD5::make_hash(buff);
char *md5str = MD5::make_digest(hash, 16);
stringOne = String("e68e4a046a5a86de64238ca77d7970d5"); // 23490 = e68e4a046a5a86de64238ca77d7970d5, который мы ищем
stringTwo = md5str;
free(hash);
free(md5str);
val++;
//Serial.print(val);
//Serial.print(" ");
Serial.println(md5str);
delay(100);
if ( stringOne == stringTwo) { // при нахождении, сообщает чему равняется
Serial.print(val); }
}``` и вообще я не публикуюсь, но уже засветил где то код, может это вам поможет на примере брута...