Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

HCS301 - Programowanie HCS301 i PICKIT2 Clone

Jagi_prg 09 Sie 2014 15:11 4263 15
  • #1 09 Sie 2014 15:11
    Jagi_prg
    Poziom 9  

    Witam,

    Kupiłem sobie kiedyś pilot pewnej firmy w którym znajduje się układ do Keeloq-a HCS301. Po jego rozebraniu znalazłem 4 pady (są to pady do programowania) Podłączam się do pilota za pomocą Pickita2 clone (kupionego w AVT) i już mam pewien problem... chcąc wgrać własny numer seryjny oraz SEED za pomocą MPLAB IDE v8.92 i Keeloq plugin nie mogę wpisać własnego numeru seryjnego pilota (po prostu jest szare/dezaktywowane pole) oraz nie mogę zaprogramować ponieważ przycisk prgoramming również jest dezaktywowany... moge jedynie wygenerować plik SQTP w którym mogę ustawić numer seryjny...
    Czy ktoś byłby w stanie mi pomóc z zaprogramowaniem HCS301 za pomocą MPLAB?!?! Byłbym bardzo wdzięczny! :)

    Jeżeli chodzi o połączenie to sprawdziłem pady programowe z układem HCS i wiem który pad do jakiego pinu prowadzi.

    0 15
  • #2 16 Sie 2015 00:07
    Mstasik
    Poziom 18  

    Witaj,
    Czy problem został już rozwiązany ?
    Osobiście nie mam doświadczenia z programatorem PicKit2 ale wiem że większość programatorów z tej półki cenowej nie potrafi zaprogramować HCS301.
    Dopiero w TL866cs jest to możliwe.

    Poza tym klonowanie HCSa bez zmiany jego numeru jest bez sensu gdyz jeden z pilotów szybko przestanie działać w systemie odbiornika.

    0
  • #3 16 Sie 2015 11:31
    Jagi_prg
    Poziom 9  

    tak... już dawno dawno temu sobie poradziłem z tym sam. Każdy pickit da rade. Nawet klon...

    0
  • #4 16 Sie 2015 15:08
    Mstasik
    Poziom 18  

    A możesz opisać coś bliżej ?
    Ja mam K150 i nie daję rady zaprogramować HCS301
    nie wiem czy to wina programatora czy oprogramowania,
    polecono mi zakup TL866cs bo ten na bank daje radę wszystkim HCS-om

    0
  • #5 16 Sie 2015 17:38
    Jagi_prg
    Poziom 9  

    Tak po za tym wracając do pierwszego posta Twojego... Jakiego numeru? Bo z tego co pamiętam to masz dwa numery w keeloq MAnufactury i serialnumber... i jeżeli zmienisz jakikolwiek numer to zagwarantuje Ci, że żaden nadajnik nie zadziała i to nie po jakimś czasie a od samego początku bo odbiornik będzie miał własne numery które będą potrzebne do autoryzacji. :) Po za tym klonowanie HCS?! Z tego co wiem to nie ma fizycznej możliwości odczytania danych z HCS. Możesz jedynie wgrać. (choć nie twierdze że się nie da. Z noty wyczytałem, że jest pamięc zabezpieczona przed odczytem. mój klon pickita za (30-40zł) może zaprogramować ale nie odczyta pamieci)
    Nie mam bladego pojęcia jak programuje K150... nigdy nie korzystałem z tego. Ale jeżeli chodzi o wgrywanie do pamięci danych to sama nota katalogowa opisuje dokładnie jak powinno wszystko wyglądać. :)

    0
  • #6 16 Sie 2015 18:44
    Mstasik
    Poziom 18  

    Mam urządzenie, a nawet 2 maszyny do klonowania pilotów, które potrafią odczytać mniej lub bardziej czytelnie kody wysyłane przez piloty na KeeLoq'u. (fotka poniżej).
    Niestety nie żadna z nich nie potrafi zapisać na nowym HCS'ie.

    Wiem co jest istotne i jakie kody są potrzebne żeby wprogramować nowy pilot do radiolonii, oraz jak przygotować pilota a żeby zadziałał pilot który zrobiłem przy bramie bez użycia oryginalnego pilota. Jednak działa to tylko w niektórych systemach, takich jak pisałem wcześniej. Nie każdy system mogę zrobić w ten sposób - dlatego potrzebuję softu i programatora, który potrafi zaprogramować HCS301. Ale żeby także edytować zczytanego wcześniej z innego pilota pliku .bin

    HCS301 - Programowanie HCS301 i PICKIT2 Clone

    0
  • #7 16 Sie 2015 20:37
    michalko12
    Specjalista - Mikrokontrolery

    To co masz jest zapewne pod jakiegoś konkretnego producenta który ma ustalony swój manufacture key. Manufacture key jest używany do generowania zaszyfrowanej porcji danych wysyłanych przez enkoder. Dekoder musi znać ten kod do odszyfrowania tych danych.
    Oprócz części zakodowanej jest również wysyłana część danych niezakodowana - numer seryjny, stan przycisków i stan baterii. Mając taką programowałkę można bez problemu podejrzeć manufacture key np. oscyloskopem. Ewentualnie niektóre urządzenia nie korzystają z części zakodowanej i te udaje Ci się tym kopiować.

    0
  • #8 16 Sie 2015 22:55
    Jagi_prg
    Poziom 9  

    manufacture key oscyloskopem? Czy aby naperwno? :P Z tego co wiem to jest bardzo tajny kod, który tylko prezes danej firmy może znać. :) Inaczej keeloq byłby tak beznadziejny jak stałe kody w pilotach. :P (algorytm keeloq nie jest jakiś skomplikowany i znając manufactury key można było by wtedy "bez obawień" ukraść niejedno auto z niejednego garażu) manufactury wykorzystuje się do wygenerowania klucza dla danego nadajnika oraz SEED dzięki któremu odbiornik (mający w sobie klucz wygenerowany za pomoca manufactury key) może autoryzować nadajnik. :) Ja również podejrzewam że to jest dekoder od jednej konkretnej firmy.
    Reasumują Manufactury key nie ma ani po stronie nadawczej ani po stronie odbiorczej. Manufactury key jest indywidualny dla danej firmy i służy jedynie do generowania klucza dla części zmiennokodowej. :)

    0
  • #9 16 Sie 2015 23:36
    michalko12
    Specjalista - Mikrokontrolery

    No tak, masz racje co do manufacture key, pomyliło mi sie z Crypt Key. 15 lat temu zajmowałem się KEELOQem więc po takim okresie coś mi tam miało prawo w pamięci wywietrzeć. ;)

    0
  • #10 17 Sie 2015 12:32
    Mstasik
    Poziom 18  

    Tak koledzy, co do fotki macie 100% racji, jest to pilot przygotowany dla odbiorników wiodącego producenta systemów bram (lub raczej dla zdecydowanej ich większości bo systemy wciąż ewoluują i nie do każdego odbiornika można go zakodować) to co widać to informacje wysyłane przez pilota do odbiornika. Znajduje się tu kod przycisku, kod fabryki, nr pilota i część zakodowana zmienna zgodnie z algorytmem keeloq. przez naście lat działania tych systemów pojawiły się informacje i urządzenia pozwalające na przechwycenie czy odczytanie kodu z pilota. jasnym jest że wysłanie ponownie tego samego kodu do odbiornika bramy nie uruchomi jej, więc trzeba zrobić odpowiedni klon a nie identyczny. Na chipie HCS301 czy jego poprzedniku HCS200 zapisane jest o wiele więcej informacji, jak np ilość kliknięć co wg wyliczeń algorytmu keeloq pozwala na ustalenie kolejnego wysłanego kodu przez nadajnik.

    Pamiętajmy jeszcze o fakcie że na większości nowych systemów (działa to już około 8 lat wstecz lub więcej) w odbiorniku uruchomiono system A.L.S. który pozwala na wkodowanie zgodnego pilota do radioodbiornika bez użycia przycisku programowania.

    0
  • #11 10 Sty 2016 08:58
    Mstasik
    Poziom 18  

    Czy temat został faktycznie w 100% wyczerpany i nikt nie ma nic do dodania?
    szczerze mówiąc ja nadal szukam opracowań i informacji o tym systemie, jeśli ktoś z kolegów posiada takowe bardzo proszę o podesłanie na PW lub bezpośrednio w temacie.

    0
  • #12 11 Sty 2016 16:48
    Eagle
    Poziom 23  

    http://ww1.microchip.com/downloads/en/DeviceDoc/40138c.pdf strona 4 rysunek 1-2

    Jeśli chcesz sklonować nadajnik potrzebujesz cryp-key, który uzyskiwany jest z Manufacturers code oraz Serial Number. Piloty danego "producenta" urządzenia posiadają ten sam manufacturer code oraz różne numery seryjne. Cała idea kodu kroczącego jest stosunkowo prosta : sync count to licznik, który zwiększany jest z każdym naciśnięciem przycisku, szyfrowany za pomocą cryp-key i wysyłany w pakiecie wraz z jawnym nr seryjnym. Tą transmisję możesz spokojnie podejrzeć oscyloskopem czy nasłuchwiać. Dekoder jest w posiadaniu manufacturer code, z transmisji odczytuje nr seryjny a tym samym wytwarza cryp-key mogąc tym samym odszyfrować zaszyfrowany licznik. Aby odbiornik uznał, iż odebrał poprawną transmisję, wartość licznika musi być następna, nie może być z Wartością jaką odebrał ostatnio ( ochrona przez przesłaniem ostatnio wysłanej transmisji). Wartość następna to wartość w zależności od implementacji np : do 16 kroków w przód, ochrona przed nie odebraniem kodu lub jeśli użytkownik naciska przycisk, poza zasięgiem odbiornika. Gdy dojdzie do rozsynchronizowania odbiornika z nadajnikiem, odbiornik wymaga odebrania dwóch kolejnych liczników.

    Odczytanie cryp-key a następnie wyznaczenie manufacture code jest możliwe, ale nie trywialne, polega na obserwacji poboru prądu przez układ nadajnika i zbieraniu dużej ilości próbek. W zależności od wartości bitów klucza zmienia się pobór prądu, co pozwala wyznaczyć bity klucza.

    Tutaj szczegóły ataku dla całej rodziny HCS, zarówno dla HCS200 jak i HCS301
    https://eprint.iacr.org/2008/058.pdf

    0
  • #13 12 Sty 2016 15:13
    Mstasik
    Poziom 18  

    czyli rozumiem że sama informacja, którą uzyskuję na wyświetlaczu czytnika (Remote Mastera) nie jest wystarczająca chociażby do zobrazowania typu radioodbiornika na czym mi bardzo zależy (czytaj fabryki / producenta) o zdobyciu Manufacture Code już nie wspominając ?

    HCS301 - Programowanie HCS301 i PICKIT2 Clone

    0
  • #14 12 Sty 2016 19:36
    Eagle
    Poziom 23  

    Z całą pewnością zdalnie nie da się odzyskać klucza, który potrzebny jest do zaprogramowania pilota z HCS200 czy HCS301, są inne ataki zdalne pozwalające jednorazowo wysłać poprawną kombinację, jednak to nie jest to czego potrzebujesz. Możesz nadać własny manufacture code w nadajniku oraz w odbiorniku, jednak nieraz zmiana klucza w odbiorniku jest niemożliwa, ze względu na umieszczenie klucza wewnątrz programu, który zabezpieczony jest przed odczytem. Sprawdzałeś co dekoduje sygnał po stronie odbiornika ?

    0
  • #15 13 Sty 2016 08:53
    Mstasik
    Poziom 18  

    Niestety nie mam takich możliwości, to są różne nadajniki do różnych odbiorników - w różnych lokalizacjach.
    Powiem tak: gdyby to była jedna brama do elektroniki której miałbym bezpośredni dostęp założyłbym dodatkowy radioodbiornik innej firmy i dołączył alternatywną drogę radiową do już istniejącej. Niestety dostęp mam tylko do pilotów (nadajników typu JET-003 z HCS301 na pokładzie).
    Patrząc na pojedynczy przypadek to jest bardzo mocno zabezpieczona linia radiowa firmy BFT (przyjmuje piloty tylko z odpowiednimi numerami seryjnymi zmodyfikowane - oryginału nie udało mi sie zaprogramować), ale patrząc szerzej to rozpoznanie na podstawie nr nadajnika, nr przycisku, i kodu zmiennego który można szybko przeliczyć (w założeniu 2 lub 3 kolejnych sygnałów lub tzw. użycia ukrytego przycisku jak w przypadki BFT czy BENNINKI) wyłącznie w celu rozpoznania fabryki - bardzo ułatwiła by mi sprawę.

    0
  • #16 18 Sty 2017 13:54
    Mstasik
    Poziom 18  

    Eagle,
    możesz mi podesłać te materiały ?

    czy temat naprawdę umarł ?

    0