Skip to main content

Co to jest zaciemniacz?

Obcuscator to proces lub urządzenie, które ma utrudnić zrozumienie programu.Ogólnie rzecz biorąc, podejściem Ofuscatora polega na przyjęciu programu, który jest stosunkowo prosty i uczynienie kodu podstawowego bardziej złożonym.Chociaż użytkownik końcowy prawdopodobnie nie zauważy różnicy w sposobie działania kodu, funkcja obcuscatora utrudnia zhakowanie kodu i przejść program.Z tej perspektywy użycie tego typu narzędzia można postrzegać jako miarę bezpieczeństwa.Nazwa urządzenia lub procesu jest zapożyczona od słowa „zaciemnianie”, które odnosi się do komplikowania prezentacji słownej w celu pomylania lub oszołomienia.W podobny sposób Ofuscator stara się, aby proces zrozumienia kodu jest nieco zakłopotany.Zasadniczo utrudnia to podważanie kodu, ponieważ prawdziwe mięso kodu jest tak głęboko zakopane lub zaciemnione, że trudno jest wyodrębnić niezbędne części robocze kodu.

Istnieje kilka języków programowych, które zwykle reagują bardzo dobrze na proces zaciemnienia.C ++ jest jednym z najpopularniejszych języków i umożliwia zatrudnienie obcuscatora z względną łatwością bez uszkodzenia funkcji kodu podstawowego.W podobny sposób C i Perl również dobrze działają przy użyciu zaciemniania, dzięki czemu stosunkowo łatwo jest dodać element ochrony do każdego programowania napisanego w tych trzech językach.

Podczas gdy celem zaciemniacza jest celowe uczynienie kodu trudniejszego rozwiązywania, istnieje również potrzeba upewnienia się, że osoby upoważnione do pracy z programowaniem mogą to zrobić bez utrudniania procesu zaciemniania.W tym celu możliwe jest zastosowanie różnych technik do pracy przez dodatkowe komplikacje i dotarcie do kodu podstawowego.Proces ten jest znany jako inżynieria odwrotna, ponieważ obejmuje zasadniczo cofanie komplikacji, aby zobaczyć prawdziwy obraz.Krojenie programu jest przykładem technik inżynierii wstecznej stosowanych do de-obojęzyki zestawu kodu.

Podczas gdy zaciemniacz zapewnia pewien stopień ochrony, ważne jest, aby zdać sobie sprawę, że proces ten nie powinien być jedynym sposobem bezpieczeństwa zatrudnionego w celu ochrony programowania.Należy również zastosować inne strategie bezpieczeństwa, aby upewnić się, że wrogie wstawki nie zostaną przyjęte przez sieć i pozwolone na poruszanie się do istniejących kodów.