Изучение уязвимостей электронных систем.
 
key programming immo tools emergency start device программаторы ключа заводилки Кодграббер штатных охранных систем, toyota, lexus, subaru.

Вернуться   Изучение уязвимостей электронных систем > Для начинающих > Новички

Новички Раздел для новичков. Что такое кодграббер, ретранслятор, подмена кода.

Ответ
 
Опции темы
Старый 17.02.2012, 17:05   #1
СаняЧ
редкий гость
 
Аватар для СаняЧ
 
Регистрация: 18.02.2009
Адрес: Darknet
Сообщений: 57
Поблагодарил: 29
Поблагодарили 6 раз в 5 сообщениях
СаняЧ стоит на развилке
По умолчанию Анализатор пакетов STARLIN, KEELOG на Arduino UNO

Хотелосьбы собрать Анализатор пакетов STARLIN, KEELOG на Arduino UNO но не помешалобы помошь!!! Думаю кому интересно сможет помочь...

---------- Post added at 15:26 ---------- Previous post was at 15:18 ----------

Есть вот такой код анализатора под ATmega 16, хотелосьбы переделать этод код под скейч для Arduino UNO

//#define F_CPU=8000000UL

#include <avr/io.h>
#include <avr/interrupt.h>
#include <avr/pgmspace.h>
#include <util/delay.h>
#include <stdlib.h>
#include <stdio.h>

#include "keeloq.h"
#include "starline.h"

#define TIMER_DIV 32 //us
#define RAW
#define DECODE

#define RX_PORT PORTD
#define RX_DDR DDRD
#define RX_PIN PIND
#define RX PD2
#define RX_STATE (RX_PIN&(1<<RX))

int uart_putchar(char c, FILE *stream);
FILE uart_str=FDEV_SETUP_STREAM(uart_putchar, NULL, _FDEV_SETUP_WRITE);

char s_hello[] PROGMEM = "\n### KeeLoq&StarLine Logger ###\n\n";
char s_keeloq[] PROGMEM = "KeeLoq";
char s_starline[] PROGMEM = "StarLine";

volatile struct
{
unsigned char state;
unsigned char TE, pre_count, data[9], dat_bit;
} keeloq;

volatile struct
{
unsigned char state;
unsigned char pre_count, data[8], dat_bit;
} starline;

int uart_putchar(char c, FILE *stream)
{
if(c=='\n') uart_putchar('\r', stream);
loop_until_bit_is_set(UCSRA, UDRE);
UDR=c;

return 0;
}

#define KL_MIN_PRE_COUNT 4
#define KL_MAX_TE (800/TIMER_DIV)
#define KL_MIN_TE (200/TIMER_DIV)
#define KL_MAX_BITS 66

void process_keeloq(unsigned char p_len)
{
unsigned char a;

switch(keeloq.state)
{
case 0:
if(!RX_STATE) break;
keeloq.state=1;
keeloq.pre_count=0;
break;

case 1: //pre+hdr
if(RX_STATE)
if(p_len>KL_MAX_TE*10 || p_len<KL_MIN_TE)
{
keeloq.state=0;
break;
}

if(!RX_STATE)
if(p_len>KL_MAX_TE || p_len<KL_MIN_TE)
{
keeloq.state=0;
break;
}

if(RX_STATE && p_len>KL_MAX_TE)
{
if(keeloq.pre_count<KL_MIN_PRE_COUNT)
{
keeloq.state=0;
break;
}

keeloq.TE=(p_len)/10;
keeloq.state=2;
keeloq.dat_bit=0;
for(a=0; a<sizeof(keeloq.data); a++) keeloq.data[a]=0;
break;
}

keeloq.pre_count++;
break;

case 2: //dat
if(p_len<keeloq.TE/2 || p_len>keeloq.TE*2+keeloq.TE/2)
{
keeloq.state=0;
break;
}

if(RX_STATE) break;

if(p_len<keeloq.TE+keeloq.TE/2) keeloq.data[keeloq.dat_bit/8]|=(1<<(keeloq.dat_bit%8));

if(++keeloq.dat_bit==KL_MAX_BITS) keeloq.state=3;
break;

case 3:
break;
}
}

#define SL_MIN_PRE_COUNT 4
#define SL_MAX_PRE (1200/TIMER_DIV)
#define SL_MIN_PRE (850/TIMER_DIV)
#define SL_MAX_ONE (416/TIMER_DIV)
#define SL_MIN_ONE (150/TIMER_DIV)
#define SL_MAX_ZERO (650/TIMER_DIV)
#define SL_MIN_ZERO (416/TIMER_DIV)
#define SL_MIN_BITS 16
#define SL_MAX_BITS 64

void process_starline(unsigned char p_len)
{
unsigned char a, b;

_begin:

switch(starline.state)
{
case 0:
if(!RX_STATE) break;
starline.state=1;
starline.pre_count=0;
break;

case 1: //pre
if(p_len>SL_MAX_PRE)
{
starline.state=0;
break;
}

if(p_len<SL_MIN_PRE && starline.pre_count>=SL_MIN_PRE_COUNT)
{
starline.state=2;
starline.dat_bit=0;
for(a=0; a<sizeof(starline.data); a++) starline.data[a]=0;
goto _begin;
}

starline.pre_count++;
break;

case 2: //dat
if(p_len>=SL_MIN_ONE && p_len<=SL_MAX_ONE) b=1;
else if(p_len>=SL_MIN_ZERO && p_len<=SL_MAX_ZERO) b=0;
else if(starline.dat_bit>=SL_MIN_BITS)
{
starline.state=3;
break;
}
else
{
starline.state=0;
break;
}

if(!RX_STATE)
{
if(b) starline.data[starline.dat_bit/8]|=(1<<(starline.dat_bit%8));
if(++starline.dat_bit==SL_MAX_BITS) starline.state=3;
}
break;

case 3:
break;
}
}

#define FILTER 20
#define FILTER_STEP 5
#define MAX_PULSE (6000/TIMER_DIV) //6ms
#define MIN_PULSE (64/TIMER_DIV) //64us

ISR(INT0_vect)
{
unsigned char len;

len=TCNT0;
if(len<MIN_PULSE) return;
TCNT0=0;

if(len>MAX_PULSE)
{
keeloq.state=0;
starline.state=0;
}

process_keeloq(len);
process_starline(len);
}

void dump_hex(volatile unsigned char *data, unsigned char bits)
{
unsigned char a;

for(a=bits/8+((bits%8)?1:0); a>0; a--) printf("%.2X ", data[a-1]);
}

int main(void)
{
//31.250KHz
TCCR0=(1<<CS02)|(0<<CS01)|(0<<CS00);
TCNT0=0;
OCR0=0;

GICR=(1<<INT0);
MCUCR=(0<<ISC01)|(1<<ISC00);
MCUCSR=0;
GIFR=(1<<INTF0);

TIMSK=0;

//115200, double speed
UCSRA=0x02;
UCSRB=0x08;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x08;

stdout=&uart_str;

printf("%S", s_hello);

sei();

while(1)
{
if(keeloq.state==3)
{
printf("%S [TE=%.3d pre_cnt=%.2d] ", s_keeloq, keeloq.TE*TIMER_DIV, keeloq.pre_count);
#ifdef RAW
dump_hex(keeloq.data, sizeof(keeloq.data)*8);
printf("\n");
#endif
#ifdef DECODE
printf("hop:%.8lX serial:%.7lX fun:%.1X bat:%d fix:%d\n\n",
((keeloq66_packet*)keeloq.data)->hop,
((keeloq66_packet*)keeloq.data)->serial,
((keeloq66_packet*)keeloq.data)->function,
((keeloq66_packet*)keeloq.data)->flag_bat,
((keeloq66_packet*)keeloq.data)->flag_rep);
#endif

keeloq.state=0;
}

if(starline.state==3)
{
printf("%S [%.2d] ", s_starline, starline.dat_bit);
#ifdef RAW
dump_hex(starline.data, starline.dat_bit);
printf("\n");
#endif
#ifdef DECODE
if(starline.dat_bit==64)
printf("hop:%.8lX serial:%.6lX fun:%.2X\n\n",
((starline64_packet*)starline.data)->hop,
((starline64_packet*)starline.data)->serial,
((starline64_packet*)starline.data)->function);
#endif

starline.state=0;
}
}

return 0;
}




Как можно будет реализовать дешевровку кода для KeeLog и что для этого потребуется???


Фрикерам везде дорога!!! Фрикерам везде почет!!!

SMD придумали те, кому в плате под DIP дырки сверлить лень!!!
СаняЧ вне форума   Ответить с цитированием
Старый 17.02.2012, 17:44   #2
tahion
начинающий фрикер
 
Регистрация: 15.06.2009
Сообщений: 624
Поблагодарил: 14
Поблагодарили 540 раз в 127 сообщениях
tahion скоро станет знаменитым(-ой)
По умолчанию

Для начала разберись таки в коде ))
tahion вне форума   Ответить с цитированием
Старый 17.02.2012, 17:56   #3
СаняЧ
редкий гость
 
Аватар для СаняЧ
 
Регистрация: 18.02.2009
Адрес: Darknet
Сообщений: 57
Поблагодарил: 29
Поблагодарили 6 раз в 5 сообщениях
СаняЧ стоит на развилке
По умолчанию

Цитата:
Сообщение от tahion Посмотреть сообщение
Для начала разберись таки в коде ))



tahion как вы думаете а кад рабочий???


Фрикерам везде дорога!!! Фрикерам везде почет!!!

SMD придумали те, кому в плате под DIP дырки сверлить лень!!!
СаняЧ вне форума   Ответить с цитированием
Старый 17.02.2012, 18:02   #4
tahion
начинающий фрикер
 
Регистрация: 15.06.2009
Сообщений: 624
Поблагодарил: 14
Поблагодарили 540 раз в 127 сообщениях
tahion скоро станет знаменитым(-ой)
По умолчанию

Цитата:
Сообщение от СаняЧ Посмотреть сообщение
tahion как вы думаете а кад рабочий???

откуда же мне знать? спроси у того, кто его написал ))
tahion вне форума   Ответить с цитированием
Старый 17.02.2012, 19:12   #5
СаняЧ
редкий гость
 
Аватар для СаняЧ
 
Регистрация: 18.02.2009
Адрес: Darknet
Сообщений: 57
Поблагодарил: 29
Поблагодарили 6 раз в 5 сообщениях
СаняЧ стоит на развилке
По умолчанию

Цитата:
Сообщение от tahion Посмотреть сообщение
откуда же мне знать? спроси у того, кто его написал ))

А вас случайно нет исходника на С на который можно оператся???


Фрикерам везде дорога!!! Фрикерам везде почет!!!

SMD придумали те, кому в плате под DIP дырки сверлить лень!!!
СаняЧ вне форума   Ответить с цитированием
Старый 17.02.2012, 19:47   #6
tahion
начинающий фрикер
 
Регистрация: 15.06.2009
Сообщений: 624
Поблагодарил: 14
Поблагодарили 540 раз в 127 сообщениях
tahion скоро станет знаменитым(-ой)
По умолчанию

Цитата:
Сообщение от СаняЧ Посмотреть сообщение
А вас случайно нет исходника на С на который можно оператся???

Исправляй ошибку и опирайся на мой исходник, он 100% работает. Но этот контекст не для этой темы...
tahion вне форума   Ответить с цитированием
Старый 18.02.2012, 16:50   #7
СаняЧ
редкий гость
 
Аватар для СаняЧ
 
Регистрация: 18.02.2009
Адрес: Darknet
Сообщений: 57
Поблагодарил: 29
Поблагодарили 6 раз в 5 сообщениях
СаняЧ стоит на развилке
По умолчанию

Цитата:
Сообщение от tahion Посмотреть сообщение
Исправляй ошибку и опирайся на мой исходник, он 100% работает. Но этот контекст не для этой темы...

Уважамый tahion может и на этом сайте создать тему!!! А то у меня уже 3 дня не заходит пишит что сервер не доступин или не существует....


Фрикерам везде дорога!!! Фрикерам везде почет!!!

SMD придумали те, кому в плате под DIP дырки сверлить лень!!!
СаняЧ вне форума   Ответить с цитированием
Старый 18.02.2012, 18:28   #8
tahion
начинающий фрикер
 
Регистрация: 15.06.2009
Сообщений: 624
Поблагодарил: 14
Поблагодарили 540 раз в 127 сообщениях
tahion скоро станет знаменитым(-ой)
По умолчанию

СаняЧ, на форуме выложены рабочие проекты для изучения старлайна и шерхана (см. подпись)
К тому же в других разделах есть много интересного, так что как говорится изучай матчасть раз интересно ))
tahion вне форума   Ответить с цитированием
Старый 18.02.2012, 20:29   #9
СаняЧ
редкий гость
 
Аватар для СаняЧ
 
Регистрация: 18.02.2009
Адрес: Darknet
Сообщений: 57
Поблагодарил: 29
Поблагодарили 6 раз в 5 сообщениях
СаняЧ стоит на развилке
По умолчанию

Цитата:
Сообщение от tahion Посмотреть сообщение
СаняЧ, на форуме выложены рабочие проекты для изучения старлайна и шерхана (см. подпись)
К тому же в других разделах есть много интересного, так что как говорится изучай матчасть раз интересно ))

У меня есть собранные эти проэты на мне хотелосьбы полность розобратся сомаму как они работают... А именно зделать свой скейч для Arduino UNO пока хочу сделать скейч для KeeLog, а в дольнейшем и для всего остальнова!!!

Анализатор поссылок так сказать....

Инфу коку можно я изучил на мне кажется без помощи я не обойдусь!!!

Этот сайт я понимаю для этого и создан

---------- Post added at 19:29 ---------- Previous post was at 19:26 ----------

Цитата:
Сообщение от tahion Посмотреть сообщение
СаняЧ, на форуме выложены рабочие проекты для изучения старлайна и шерхана (см. подпись)
К тому же в других разделах есть много интересного, так что как говорится изучай матчасть раз интересно ))


tahion я розобрался с скейчем для STARLINE вот прием правельный да?

***STARLINE 64 Bit Receiver Started***
STARLINE_FC3F07E07E03F01F
STARLINE_FE3F8FE1FC3F87E0
STARLINE_FE3F87F0FC1FC1F8
STARLINE_FF0FF0FF0FF0FF0F
STARLINE_FE3F8FE1FC3F83F8
STARLINE_FE0FF0FF0FF07F83
STARLINE_FCFCFC7E3F0FC3F0
STARLINE_FF0FF0FF0FE0FE07
STARLINE_FFFCFBEFBE78F9F1
STARLINE_FF0FF0FF0FF07F81
STARLINE_FF0FF0FF0FF07F83
STARLINE_FF0FE07F83FC1FE0
STARLINE_FF0FF07F83FC1FE0
STARLINE_FF1FC3FC3FC3F83F
STARLINE_FE1FC3F87F07F07F
STARLINE_FF0FF0FF07F83FC1
STARLINE_FE1FC3FC7F07F07F
STARLINE_FE3F87F0FE1FC3F8
STARLINE_FF0FF0FF07F83FC0
STARLINE_C4186183040C0C0C
STARLINE_FE3F87F0FE1FC1FC
STARLINE_FE1FC3F87F07F07F
STARLINE_FE3F87F1FC3F87F0
STARLINE_FF0FF0FF0FF07F83
STARLINE_FE1FC1FC1FC1FC1F
STARLINE_FF0FF0FF0FF07F80
STARLINE_FE0FE1FC3F81FC1F
STARLINE_FE3F07F0FE1FC3F8
STARLINE_FF0FF07F83FC0FF0
STARLINE_FE1FC1FE1FC1FE0F
STARLINE_FF0FF0FF0FF07F83
STARLINE_FF0FF0FE0FF07F00
STARLINE_FE0FF0FE0FE0FF07
STARLINE_FE3F8FE1F87F0FC0
STARLINE_FC7E1F87E0FC3F00
STARLINE_FE3F83FFC07F03F8
STARLINE_FFFFFFFE07F00FF8
STARLINE_FC7C03FC07FE3FF0
STARLINE_FFFF83FC1FF07F01
STARLINE_FE01FFE03F8FFDFC


Фрикерам везде дорога!!! Фрикерам везде почет!!!

SMD придумали те, кому в плате под DIP дырки сверлить лень!!!
СаняЧ вне форума   Ответить с цитированием
Старый 19.06.2012, 21:17   #10
Astronom
случайно влез
 
Аватар для Astronom
 
Регистрация: 21.03.2012
Сообщений: 43
Поблагодарил: 1
Поблагодарили 10 раз в 9 сообщениях
Astronom стоит на развилке
По умолчанию

правильный! на меге 16 я тоже собирал тоже работает
Astronom вне форума   Ответить с цитированием
Ответ

Метки
анализатор на arduino uno


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Кодграббер Scher-Khan Magicar + анализатор пакетов tahion Новички 398 08.12.2016 23:53
Нашёл кучу тем для Arduino primesat Флейм 0 28.03.2012 08:58
[Проблема] Arduino и Globalsat EM-411 иероглифы alcogol Спутниковые системы 2 02.03.2011 23:32
off-line анализатор пакетов Lestat Новички 10 28.05.2010 00:58
Новый анализатор пакетов! Piratcom Флейм 35 25.03.2010 15:24


Текущее время: 16:36. Часовой пояс GMT +4.


Перевод: zCarot