Na kterých zajímavých projektech reverzního inženýrství se mohu naučit?


Nejlepší odpověď

Toto je velmi široká otázka. Záleží na tom, o jaký typ produktů máte zájem.

Zde je několik příkladů reverzního inženýrství, kterých jsem se účastnil:

Odpověď Michaela Durcana na Jak je reverzní inženýrství dokončeno čelní ozubené kolo?

Odpověď Michaela Durcana na Jak fungují moderní techniky reverzního inženýrství, jako jsou přenosné CMM a laserové skenování?

Odpověď Michaela Durcana na Jak mohu naučit se reverzní inženýrství?

Odpovědět

Předpokládám, že nejste žádný odborník na informatiku a programování na nízké úrovni, takže odpověď zní ano, je velmi těžká.

Existují dvě „úrovně“ programovacích jazyků; Vysoko a nízko. Vysoké programovací jazyky se obecně snadno používají a učí. Jsou zcela čitelné člověkem a pro provedení je třeba je „přeložit“ stroji. Příklady programovacích jazyků na vysoké úrovni jsou Javascript, R, Python, Java a mnoho dalších.

Nízkoúrovňové programovací jazyky se těžko učí. Potřebují více porozumět tomu, jak funguje paměť a procesy v počítači. Nejlepším a nejznámějším příkladem jazyka poměrně nízké úrovně je C. C je velmi silný a je těžké se ho naučit. Je to však strojově srozumitelné mnohem více než programovací jazyky na vysoké úrovni. Poměrně nízkou úrovní programovacího jazyka je Assembly. Kód sestavy existuje v různých typech, ale všechny jsou komplikované, otravné a velmi těžko čitelné. Kód sestavy je však hlavní součástí reverzního inženýrství. Pokud něco zpětně analyzujete, zobrazíte / změníte kód sestavy programu.

Musíte pochopit, že shromáždění je v podstatě mateřským jazykem. Pokud píšete program, vždy je s ním kód shromáždění. Buď váš překladač převede váš kód do Assembly, nebo to za vás provede tlumočník v reálném čase.

To vše v zásadě znamená, že stát se skutečným reverzním inženýrem je snadné. Jediné, co musíte udělat, je ovládat různé typy sestavení a naučit se programovat v jazyce C. Jediným problémem je, že tyto dvě věci je těžké udělat.

Hodně štěstí!

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *