Po pewnym czasie z Raspberry Pi 2 Model B v1.1. Mam następujące obawy?
- Wiem, że koncentruje się na ulepszaniu wrażliwych sektorów edukacyjnych, ale można sprzedawać produkt oparty na RPi ?. Zarabiać na tym? Zostań zillionaire'em ?.
- Jak powinienem chronić rozwój, powiedzmy, nie chcę, aby ktoś wziął moją kartę SD RPi, powielił ją i miał własne repliki ? Moja obecna alternatywa to wypełnienie portu SDCard superglue :). Innym wyborem może być wysłanie przez RPi polecenia ping do serwera licencji online, co oczywiście wymagałoby połączenia WiFi . Lub sprzętowy identyfikator HASH (chyba powinna być lepsza odpowiedź ...)
- Sprawdziłem, że istnieją również mechanizmy przywracania instalacji, nawet jeśli nie masz roota, poprzez zamontowanie karty SD. Ponownie moim najlepszym rozwiązaniem jest podejście superglue ...
Z góry dziękuję.
Odpowiedzi:
Jeśli naprawdę zależy Ci na ochronie swojej własności intelektualnej, możesz połączyć aplikację opartą na Rapberry Pi z jakimś zewnętrznym niestandardowym mikrokontrolerem (MCU, takim jak AVR, PIC, 8051 ...) klucz sprzętowy (podłączony do Pi przez USB, RXTX, I2C, SPI, 1wire ...). Na przykład aplikacja po stronie Pi generuje losową liczbę, która jest wysyłana do MCU, dekodowana i wysyłana z powrotem jako klucz odblokowujący w celu odszyfrowania czegoś ważnego. Następnie dodatkowo masz ważną funkcję wykonaną bezpośrednio w MCU (po prostu przekazujesz parametry i otrzymujesz wynik z MCU). Możesz sobie wyobrazić, w jaki sposób zwiększyłoby to trudność hakera o rząd wielkości, ponieważ jego wiedza musiałaby być znacznie szersza niż zwykle. Nie ma idealnej ochrony, ale jeśli naprawdę chcesz uczynić to wyzwaniem, może to być dobry sposób.
źródło
Myślę, że taki był pomysł z modułem obliczeniowym przez cały czas. Zysk nie powinien być problemem.
/ 4. Opcja superglue jest prawdopodobnie dobrym kompromisem. Ostatecznie nie możesz pokonać atakującego z fizycznym dostępem do urządzenia. Rzuć okiem na konsole do gier, które prawdopodobnie zainwestowały miliony w infrastrukturę DRM i wszystkie one ostatecznie upadają. W innym duchu możesz również przyjąć otwartość i sprzedać wersję programistyczną swojego produktu oraz dołączyć jakiś zestaw SDK. Informacje zwrotne od technicznej grupy użytkowników mogą być cenne i działać w twoim interesie.
źródło
Hardware Key
zasugerowanie przez firmę avra i zakopanie karty SD z SuperGlue w złączu?Chociaż ta praktyka zdecydowanie traci zasięg, zaskoczyłaby Cię ilość złączy USB przyklejonych do komputerów stacjonarnych w korporacyjnych środowiskach biurowych. Mówię tu o dużych międzynarodowych korporacjach.
Ale teraz na temat ...
W przypadku projektów komercyjnych, w których ochrona IP jest głównym czynnikiem, Pi jest najlepszy w przypadku wczesnego prototypowania / weryfikacji koncepcji. Nawet jeśli ochrona nie byłaby problemem, wdrożenia Pi na większą skalę nie są najlepszym rozwiązaniem IMHO - z wielu powodów opisałem we wcześniejszym wątku na tym forum.
Nie ma systemu bezpiecznego przed inżynierią wsteczną / hakowaniem / odtwarzaniem. Każdy system można wykorzystać. Każdy system ma jednak wynik penetracji. Dzięki otwartemu podejściu i zewnętrznej karcie SD Pi ma bardzo niski poziom. Specjalnie zaprojektowana, zatwierdzona przez wojsko płyta sprzętowa z niestandardowym układem SoC, komponentami sandwiczowymi i wielowarstwową płytką drukowaną w połączeniu z niestandardowym programem ładującym, szyfrowanie sprzętowe będzie miało wyższy wynik.
Do tego dochodzi czynnik wdrażania. Im szerszy jest rynek, tym bardziej interesujące będzie dla ludzi włamanie się i kradzież twojej technologii.
Jeśli sprzęt jest twoim oporem w całej konfiguracji, a ochrona twojej technologii jest głównym czynnikiem, nie sądzę, że Pi jest produktem dla ciebie. Jeśli twój sprzęt ułatwia sprzedaż usług, być może technologia ochrony powinna odbywać się po stronie serwera, a nie po stronie klienta.
Używamy Pi do sprzedaży takich usług. Nasze oprogramowanie na Pi ma wyższy poziom ochrony, używamy skompilowanej aplikacji C, zablokowanej na MAC i / lub numerze seryjnym procesora. Ale w końcu bez strony naszego serwera nawet kod źródłowy jest praktycznie bezużyteczny.
źródło
Możesz użyć piggy-back wewnątrz maliny z kluczem szyfrującym. Na rynku jest kilka urządzeń komercyjnych. Użyłem tego oprogramowania Serial Protection dla Raspberry Pi , które działa bardzo dobrze.
źródło
Zrób to jako open source
Poważnie, nie próbuj go chronić przed kopiowaniem. Zrób to jako open source. Jeśli to możliwe, pozwól innym dołączyć do twojego projektu.
Następnie nalicz opłaty za usługi. Możesz zrobić wiadra pieniędzy, jeśli zrobisz to dobrze.
Red-had robi to w ten sposób i kilka innych firm. Wszystkie mają się dobrze i rosną.
źródło
Kilka moich centów:
...
źródło
Jako podstawową ochronę znajduje się unikalny identyfikator karty SD, pod
/sys/block/mmcblk0/device/
którym nie jest klonowany przez typowe oprogramowanie do klonowania obrazu dysku. Ma to tę zaletę, że nie wymaga oddzielnego urządzenia do przechowywania unikalnego identyfikatora i działa całkiem dobrze jako druga warstwa ochrony po superglue. Przynajmniej zatrzyma ludzi, którzy są w stanie po prostu sklonować kartę SD.Kolejną wskazówką dotyczącą ochrony przy użyciu identyfikatorów jest unikanie prostej kontroli, tj
Takie proste kontrole są łatwe do wykrycia (poprzez wyszukanie znanego ID lub monitorowanie połączeń z
exit()
) i usunięcie. O wiele lepszym podejściem jest włączenie identyfikatora jako stałej do obliczeń. Oznacza to, że zamiasti++
gdzieś w kodzie napiszeszBędzie to znacznie trudniejsze do wykrycia, ponieważ dokładny identyfikator nie pojawi się w kodzie verbatim (
0xDEADBEEF + 1 == 0xDEADBEF0
), a sprawdzenie wszystkich wywołańexit()
również nie ujawni położenia kodu ochronnego. Zamiast tego kod po prostu zawiesi się w systemie z niewłaściwym identyfikatorem, a osoba atakująca będzie musiała debugować logikę aplikacji, aby zrozumieć i naprawić problem.źródło
Używając zewnętrznego komponentu, miałem na myśli, że komponent bezpieczeństwa rozwiązałby ten problem. Jeśli naprawdę uważasz, że Twój pomysł jest świetny i warty dodatkowych kosztów, sugeruję skorzystanie z profesjonalnej jednostki MCU / CPU. Podobnie jak seria Broadcom BCM58101, nie jest tak naprawdę opłacalny i nie jest przyjazny dla nowego użytkownika, ale wysoki poziom bezpieczeństwa może również chronić Twój pomysł / projekt.
źródło