zabezpieczenie programu w zewn. pamięci ?

No to tym razem z innek beczki... Zastanawiam się - załóżmy, że mam jakiś MCU z zewnątrzną pamięcią (czy to flash, czy to SD jakieś) - i trzymam tam program. Jak zabezpieczyć się przed kradzieżą ? Są jakieś sprawdzone sposoby ?

Reply to
sundayman
Loading thread data ...

W dniu 2010-08-20 00:52, sundayman pisze:

To te pliki graficzne są tak cenne, że ktoś ci je będzie chciał skraść?

Reply to
Mario

Użytkownik "sundayman" snipped-for-privacy@poczta.onet.pl> napisał w wiadomości news:i4kcjp$2vv$ snipped-for-privacy@news.onet.pl...

Ja bym nie stawiał na sprawdzone, bo są znane.

Wyobraź sobie, że zamieniasz linie szyny danych i odpowiednio przekodowujesz zapis w pamięci. Nie do końca wierzę, że jest to do zrealizowania na SD, ale na programie w EPROM to możliwe.

Więc, jeśli ten sposób się rozpowszechni to ile czasu zajmie średnio inteligentnemu hakerowi na "odplątanie" linii danych?

Dla dysków twardych chyba były sprzętowe moduły szyfrujące. Czy to wystarczające zabezpieczenie przed kradzieżą?

A teraz inny aspekt: Często samym "patentem" jest interfejs programu. Czy jest jakiś problem żeby go napisać innym kodem?

Więc: Co chronimy, przed kim, i za ile. Czy chodzi o "niekopiowalny" klucz sprzętowy?

Feromon

Reply to
Feromon

sundayman pisze:

Zależy przed czym chcesz się zabezpieczyć, czy przed powielaniem programu, czy przed dekompilacją.

Reply to
Zbych

Chodzi mi generalnie o program, a nie pliki graficzne... Po prostu zastanawiam się, jak rozwiązać zabezpieczenie aplikacji przed skopiowaniem. Produkt jest komercyjny i dobrze by było, żeby jakoś zabezpieczyć się przed prostym skopiowaniem.

Reply to
sundayman

Nie, chodzi o rodzaj sterownika (MCU + LCD + ładne GUI). Prawdopodobnie to będzie ARM9, ale pytanie mi się nasunęło generalne - w przypadku, kiedy program nie siedzi w samym MCU, zabezpieczony "fusebitami", to jak chronić program ? (przed skopiowaniem, odczytaniem, czy jak kto woli). Jak wiadomo, sprzętowo tutaj Ameryki odkrywać nie będę, cała "wartość" to głównie program (a przecież będzie musiał siedzieć w zewnętrznym flashu).

No, bo wyobrażam sobie, że być może skuteczne byłoby jakieś "szyfrowanie w locie", ale pewnie byłaby to masakra... I dlatego pytam, czy może są jakieś gotowe "rozwiązania" , czy też "metody".

Reply to
sundayman

Chronic mozna na rozne sposoby, tylko pytanie czego sie boisz:

-ze ktos to wszystko skopiuje w calosci,

-ze ktos twoj program odczyta i wszczepi do swojego sterownika,

-ze ktos go zdeassembluje i pozna twoje najtajniejsze algorytmy.

W wielu przypadkach ambitniejsze zabezpieczanie sie po prostu nie oplaca - to nie iphone ani nokia, zeby oplacalo sie kopiowac.

O ile pamietam to sa procki ktore deszyfruja sobie program w locie.

J.

Reply to
J.F.

Użytkownik "J.F." <jfox snipped-for-privacy@poczta.onet.pl> napisał w wiadomości news: snipped-for-privacy@4ax.com...

swoją drogą, "proste" skopiowanie może służyć tylko do zrobienia "prostej" kopii urządzenia - czy naprawdę ktoś będzie identycznego urządzenia potrzebował (i skompletuje identyczny hardware)?

e.

Reply to
invalid unparseable

Użytkownik "sundayman" snipped-for-privacy@poczta.onet.pl> napisał w wiadomości news:i4kcjp$2vv$ snipped-for-privacy@news.onet.pl...

Nie przed kradzieżą, tylko przed skopiowaniem :) Jeśli chcesz się zabezpieczyć tylko przed zrobieniem prostej kopii, umieść w urządzeniu coś niepowtarzalnego w każdym egzemplarzu (np. cokolwiek mającego nr seryjny, kawałek programowalnej logiki, malutki procesorek z jakąś logiką sekwencyjną itp) lub coś w procesorze o ile się da (wewn. flash?). Kiedyś były robione jakieś cuda z przeplataniem nóg pamięci, albo z logiką TTL na sygnałach pamięci, ale to bez sensu (utrudnienie głównie dla Ciebie). Przed bardziej skomplikowanymi akcjami IMHO też nie warto się zabezpieczać przy takim urządzeniu.

e.

Reply to
invalid unparseable

W dniu 2010-08-20 15:01, sundayman pisze:

Pisałeś że potrzebujesz zewnętrzną pamięć bo masz dużo danych. Procesorki mają teraz nawet do 512kB Flasha na program. Jesteś pewien że potrzebujesz zewnętrznej pamięci dla programu? Procki mają zazwyczaj możliwość zablokowania odczytu wewnętrznej pamięci flash prze ISP czy JTAG.

Reply to
Mario

W dniu 2010-08-20 00:52 sundayman napisał(a):

A nie masz w ogóle wewnętrznego Flasha? Często się przydaje nawet mały - ot choćby do trzymania algorytmu i kluczy deszfrowania (a właściwy większy soft śmiga po zabootowaniu w RAMie).

Reply to
Adam Dybkowski

Nawet jezeli, to i tak z reguly taniej od nowa zaprojektowac. Zwlaszcza skoro tam ma byc, bez urazy dla OP, 'mcu + lcd + ladne gui' - a nie supertajny algorytm sterowania maszyna do druku pieniedzy.

Reply to
Jerry1111

Tylko pod warunkiem ze w wewnetrznym - bo z zewnetrznego ramu grzecznie sobie przeczytasz jak juz procek rozszyfruje.

Reply to
Jerry1111

W dniu 2010-08-22 23:47 Jerry1111 napisał(a):

No jasne. Chyba że procek ma wsparcie do szyfrowania RAMu w locie (jak chipy kartowe).

Reply to
Adam Dybkowski

Na razie to nie wiem, bo jestem na etapie wyboru procesora :) Tyle wiem, że raczej jakiś ARM9 powinien to być, z uwagi na to, że chciałbym dać na tym Linuxa + QT. Ewentualnie druga opcja - android. Ale raczej QT jednakowoż.

Urządzenie jest , można powiedzieć "domowe", więc nie jest to element broni masowego rażenia :) Ale, klient jednakowoż zadaje kłopotliwe pytania co do zabezpieczenia softu :) A, że mozna oczywiście (zapewne najłatwiej) taki soft napisać od nowa, i to od razu po chińsku, to inna sprawa...

Reply to
sundayman

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.