Reverse engineering
Att ta isär programvara för att förstå hur den fungerar — ofta för att ändra den, ta bort begränsningar eller förstå ett säkerhetshål.
Reverse engineering började på 1970-talen när crackers ville dölja kopieringsskydd på spel och hemmaprogramvara. En cracker tog maskinkoden från en körbar fil, disassemblerade den till läsbara instruktioner, spårade kontrollflödet och letade efter de kritiska instruktionerna som skräddde en felaktig licensnyckel eller ett kopierat tecknade begränsningar. Det var rent detektivarbete — ibland lagde en enda JNZ-instruktion (hoppa om ej noll) mellan ett licenserat original och en crackad version. Modern reverse engineering är en samma teknik men på större skalor: analyse av IoT-enheter, mobilappar och nätverksprotokoller för säkerhetsforskning och interoperabilitet.