Innholdsfortegnelse:
Definisjon - Hva betyr Reverse Engineering?
Omvendt engineering, i dataprogrammering, er en teknikk som brukes til å analysere programvare for å identifisere og forstå delene den er satt sammen av. De vanlige årsakene til omvendt prosjektering av et programvare er å gjenskape programmet, å bygge noe som ligner på det, utnytte dets svakheter eller styrke forsvaret.
Techopedia forklarer Reverse Engineering
Fordi lukket, egenutviklet programvare aldri kommer med dokumentasjon som avslører kildekoden som brukes til å lage den, bruker folk omvendt prosjektering når de vil forstå programvarens indre virkemåte.
Noen hackere bruker reverse engineering for å finne svake punkter med programmer som de kan utnytte.
Andre hackere bruker reverse engineering for å lokalisere svake punkter med den hensikt å styrke forsvaret der.
Programvareselskaper med konkurrerende produkter reverserer konkurrentenes programmer for å finne ut hvor og hvordan forbedringer kan gjøres på egne produkter. Noen selskaper bruker reverse engineering når de ikke har lignende produkter ennå, for å lage egne produkter.
De som har tenkt å bygge sitt eget produkt basert på et eksisterende, foretrekker ofte reverse engineering fremfor å lage fra bunnen av, fordi når delene og avhengighetene er identifisert, har prosessen med å rekonstruere enklere.
I USA er omvendt prosjektering av programvare beskyttet av unntaket for rettferdig bruk i opphavsrettsloven.