Inleiding tot reverse engineering

Reverse Engineering is een methode om een ​​product te herstellen op basis van een evaluatie van de softwarestructuur, functionaliteitsvereisten en functies. Dit bouwt een lijst van de software op en haalt hieruit kennis. Deze technologie is bedoeld om onderhoudswerkzaamheden te bevorderen door de begrijpelijkheid van een systeem te verbeteren en de nodige documenten voor een oud systeem te genereren.

Wat zijn enkele veelvoorkomende toepassingen van reverse engineering?

1. Nieuwe compatibele producten goedkoper maken dan momenteel op de markt beschikbaar is.

2. Om code krachtiger te maken om samen te werken of om verschillende besturingssystemen of databases te koppelen.

3. Ongecoördineerde commerciële productkenmerken blootleggen.

4. Deze vorm van onderzoek betrekt individuen in een productief proces van leren over programma- en servicebewerking. De methode om iets te identificeren en uit te leggen hoe het werkt, is een belangrijke manier om een ​​systeem te leren en te ontwikkelen. Met reverse engineering is het mogelijk om een ​​bestaand onderdeel te dupliceren door de fysieke afmetingen, kenmerken en eigenschappen van het onderdeel te verzamelen. Er moet een goed geplande levenscyclusanalyse en kosten- of batenanalyse worden uitgevoerd om de reverse engineering-projecten te rechtvaardigen voordat een poging tot reverse engineering wordt gedaan.

Het bestaat uit de volgende stappen, volgens Methodology:

  • Vergelijk uw waarnemingen met het daadwerkelijke apparaat en stel een verbetering voor.
  • Observeer en analyseer de bedieningsmechanismen van het systeem.
  • Ontleed en bestudeer de innerlijke werking van een mechanisch apparaat.

Een onderzoeker kan de technische gegevens verzamelen die nodig zijn om de functie van software of een deel van een proces vast te leggen via reverse engineering. Onderzoekers kunnen de sterkte van systemen onderzoeken en hun zwakke punten in termen van prestaties, interoperabiliteit en beveiliging identificeren bij het gebruik van reverse engineering-software. De methode van reverse engineering helpt onderzoekers te begrijpen hoe een systeem functioneert en welke elementen van de software ertoe leiden dat het niet werkt. Onafhankelijke producenten kunnen geïnteresseerd zijn in een concurrerende markt die de verbeteringen van dominante goederen erkent. Het is bijvoorbeeld noodzakelijk voor beveiligingsaudits waarmee codegebruikers hun systemen en netwerken beter kunnen beschermen door beveiligingsfouten te ontdekken. Het begint vaak met het maken van betere ontwerpen en de interoperabiliteit van bestaande producten.

Stappen om te volgen voor reverse engineering worden als volgt gegeven:

  1. Verzameling informatie
  2. De functionaliteit opnemen
  3. Onderzoek van de informatie
  4. Opnamecontrolestroom
  5. De structuur extraheren
  6. Datastroom opnemen
  7. Bekijk geëxtraheerd ontwerp
  8. Genereer documentatie

Wat zijn enkele juridische zaken of ethische kwesties?

Nieuwe rechterlijke beslissingen tonen aan dat het juridische en ethische bestaan ​​van reverse engineering-technieken wordt gebruikt om interoperabiliteit met een onafhankelijk ontwikkeld computerprogramma te krijgen. Lexmark heeft in december 2002 een rechtszaak aangespannen tegen SCC en beschuldigd van het schenden van zowel de auteursrechtwetgeving als de DMCA. De code die in de Lexmark printercartridge wordt gebruikt, is door SCC reverse-engineered om compatibele cartridges te maken. Volgens de wereld van computers beweert Lexmark dat SCC's Smartek-chips auteursrechtelijk beschermde Lexmark-technologie bevatten. Het programma beheert de interactie tussen Lexmark-printers en tonercartridges; zonder dit kunnen gerevalideerde tonercartridges niet werken met de printers van Lexmark. “De rechtbank oordeelde dat 'auteursrechtwetgeving niet mag worden gebruikt om interoperabiliteit tussen de goederen van een bedrijf en die van hun concurrenten te voorkomen. In een Amerikaanse beslissing. "De DMCA verbiedt codeontwikkelaars niet om reverse engineering te gebruiken om toegang te krijgen tot elektronisch beschermd auteursrechtmateriaal als zij dit doen om interoperabiliteit met een onafhankelijk ontwikkeld computerprogramma te bereiken, " zei het Copyright Office in oktober 2003.

Wat is wettelijke implementatie?

  • Patentbescherming - beschermt het concept achter de werking van een nieuw product.
  • Auteursrechtbescherming dekt alleen de vorm en het ontwerp van een product.

Een patent is volgens NPD-oplossingen niets meer dan een waarschuwingsteken voor een rivaal om concurrentie te ontmoedigen. Alleen NPD-oplossingen zeggen dat een rivaal een van de volgende dingen kan doen als er interesse is in een idee: RE wordt meestal uitgevoerd met behulp van de Chinese of cleanroom-muur. Cleanroom, het wordt achter elkaar gedaan.

Is het onethisch om reverse engineering uit te voeren?

Dit probleem wordt breed besproken en blijkbaar is er geen exact antwoord op de splitsing. Die van intellectueel eigendom is de nummer één claim tegen reverse engineering. Omdat Lexmark en bedrijven zoals zij tijd en geld besteden aan het ontwikkelen van producten, vinden ze het onethisch dat anderen hun producten reverse-engineeren. Er zijn ook items die door deze activiteiten zijn geschaad, zoals Bit Keeper. Waarom zouden bedrijven en particulieren grote hoeveelheden middelen besteden aan het verwerven van intellectueel eigendom dat rivalen tegen een fractie van de kosten zouden kunnen terugdraaien ?.

Aanbevolen artikelen

Dit is een handleiding voor reverse engineering. Hier bespreken we het gebruik, juridische zaken, ethische kwesties en juridische implementatie van reverse engineering. U kunt ook het volgende artikel bekijken voor meer informatie -

  1. Reverse Engineering met Python
  2. Sollicitatievragen voor Software Engineering
  3. Carrières als software-ingenieur
  4. Sollicitatievragen voor Electrical Engineering