Sadržaj:
Definicija - Što znači obrnuti inženjering?
Obrnuti inženjering, u računalnom programiranju, tehnika je koja se koristi za analizu softvera kako bi se prepoznali i razumjeli dijelovi od kojih je sastavljen. Uobičajeni razlozi za obrnuti inženjering dio softvera su ponovno stvaranje programa, stvaranje nečeg sličnog njemu, iskorištavanje njegovih slabosti ili jačanje njegove obrane.
Tehopedia objašnjava obrnuti inženjering
Budući da zatvoreni, vlasnički softver nikad ne dolazi s dokumentacijom koja otkriva izvorni kod koji se koristio za njegovo stvaranje, ljudi koriste obrnuti inženjering kad god žele razumjeti unutarnje funkcioniranje softvera.
Neki hakeri koriste obrnuti inženjering kako bi pronašli slabe točke programa koje mogu iskoristiti.
Drugi hakeri koriste obrnuti inženjering kako bi pronašli slabe točke s namjerom da ojačaju tamošnje obrambene snage.
Softverske tvrtke s konkurentnim proizvodima inženjeriraju programe svojih konkurenata kako bi otkrili gdje se i kako mogu poboljšati na njihovim vlastitim proizvodima. Neke tvrtke koriste obrnuti inženjering kada još nemaju slične proizvode za izradu vlastitih proizvoda.
Oni koji namjeravaju izgraditi vlastiti proizvod na temelju postojećeg često preferiraju obrnuto inženjerstvo nego kreiranje ispočetka jer nakon što se identificiraju dijelovi i ovisnosti, proces rekonstrukcije obično je puno lakši.
U SAD-u je obrnuti inženjering softvera zaštićen iznimkom poštene uporabe u zakonu o autorskim pravima.
