Paras vastaus
Yksi suurimmista (ellei suurin) verkkosivustoista, joka sisältää käänteisen koodin suunnittelun haasteita, on div id = ”53ac8ea8db”>
24/7
Yksi suurimmista (ellei suurin) verkkosivustoista, joka sisältää käänteisen koodin suunnittelun haasteita, on div id = ”53ac8ea8db”>
Crackmes.de .
Tämä verkkosivusto on erittäin mahtava, koska:
Oletan vain, että et ole tietojenkäsittelytieteen ja matalan tason ohjelmoinnin asiantuntija. joten vastaus on kyllä, se on erittäin vaikeaa.
Ohjelmointikieliä on kaksi ”tasoa”; Korkea ja matala. Korkeat ohjelmointikielet ovat yleensä melko helppoja käyttää ja oppia. Ne ovat melko inhimillisesti luettavissa ja teloitettavat koneet on ”käännettävä”. Esimerkkejä korkean tason ohjelmointikielistä ovat Javascript, R, Python, Java ja monet muut.
Matalan tason ohjelmointikieliä on vaikea oppia. He tarvitsevat enemmän tietoa tietokoneen muistin ja prosessien toiminnasta. Paras ja tunnetuin esimerkki melko matalasta kielestä on C.C on erittäin voimakas ja melko vaikea oppia. Mutta se on aivan lähellä koneen ymmärrettävää kuin korkean tason ohjelmointikielet. Aivan matalan tason ohjelmointikieli on Assembly. Kokoonpanokoodi on olemassa erityyppisinä, mutta ne kaikki ovat monimutkaisia, ärsyttäviä ja erittäin vaikea lukea. Kokoonpanokoodi on kuitenkin tärkeä osa käänteisessä suunnittelussa. Jos muokkaat jotain, katsot / muutat ohjelman kokoonpanokoodia.
Sinun on ymmärrettävä, että Assembly on pohjimmiltaan äidinkieli. Jos kirjoitat ohjelmaa, siinä on aina kokoonpanokoodi. Joko kääntäjäsi kääntää koodisi Assemblyksi tai tulkki tekee sen puolestasi reaaliajassa.
Kaikki tämä tarkoittaa periaatteessa sitä, että todelliseksi käänteisinsinööriksi tuleminen on helppoa. Ainoa mitä sinun tarvitsee tehdä, on sujuvasti puhua erilaisista kokoonpanotyypeistä ja oppia ohjelmoimaan C: ssä. Ainoa ongelma on, että näitä kahta asiaa on vaikea tehdä.
Onnea!