De term hex, kort voor hexadecimaal of base-16, is de onbewerkte gegevensstructuur die alle bestanden die op uw computer zijn opgeslagen volgen. Hoewel letterlijk elk bestand in dit formaat op uw computer wordt opgeslagen, ziet u deze gegevens bijna nooit ergens. Maar de mogelijkheid om de onbewerkte bits en bytes in je computer direct aan te passen, kan soms in je voordeel worden gebruikt.
Dus hoe werkt hex, wat is een hex-editor en waarom zou je er misschien een op je pc moeten gebruiken?
Wat is Hex?
Het getalsysteem dat mensen gebruiken om te tellen, wordt decimaal genoemd, de getallen van 0 tot 9. Decimal werd ongeveer 6000 jaar geleden door de Perzen uitgevonden.
Snel vooruit naar 1679. Het binaire getalsysteem bestaande uit nullen en enen werd uitgevonden door Gottfried Wilhelm von Leibniz.
Eindelijk formaliseerde IBM in de jaren vijftig of zestig het hexadecimale getalsysteem, wat een korte manier is om binaire gegevens te representeren. In plaats van de cijfers 0-9 te gebruiken, gebruikt hexadecimaal cijfers van 0 tot en met F. Tellen van 0 tot 31 (converteren van decimaal naar hexadecimaal):
0 1 2 3 4 5 6 7 8 9 ABCDEF 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F
Zodra u het einde van de numerieke "cijfers" bereikt, verhoogt u eenvoudig het aantal naar links met één, net als bij het decimale telsysteem.
Nu we de basis van hexadecimalen uit de weg hebben, gaan we verder met een aantal hex-editors.
Hex Editors
Hex-editors verschillen op een aantal manieren van een gewone teksteditor. De basis van een hex-editor is dat ze de onbewerkte inhoud van het bestand weergeven. Geen codering of vertaling naar tekst - alleen de onbewerkte machinecode. De tweede is dat regelnummers in plaats van gebaseerd op "lijnen" een offset-adres zijn vanaf het begin van het bestand.
PSPad
Mijn favoriete hex-editor is PSPad. PSPad biedt niet alleen een geweldige tekst- en code-editor, maar ook de optie " Open in HEX Editor ... " waarmee de speciale bewerkingsmodus wordt gestart.
Als u zich eenmaal in deze modus bevindt, kunt u de locatie en hexadecimale waarden van elk bit van het bestand bekijken. Je hebt twee keuzes om het bestand te bewerken - je kunt de hexadecimale waarden per locatie bewerken, of aan de rechterkant heb je de alfanumerieke weergave van die waarde die je ook kunt bewerken.
XVI32
XVI32 is ook een zeer capabele hex-editor. Net als bij PSPad kunt u de hexadecimale waarden of de tekenweergave rechtstreeks bewerken.
Het heeft ook een aantal geavanceerde hex-bewerkingshulpmiddelen, zoals een adrescalculator voor het controleren van offsets en enkele andere hex-specifieke opties die u kunnen helpen om een hex-bestand te omzeilen als u weet wat u doet.
Wat kunt u doen met een Hex Editor?
Nu u weet wat een hex-waarde is en hoe u ze kunt openen en bewerken, waarom zou u dat dan precies willen doen?
Ontdek een bestandstype
Af en toe kom je misschien een bestand tegen dat je gewoon niet lijkt te openen. Het heeft een normale grootte, maar Word of Adobe zal het niet openen. Kun je daar iets aan doen?
Het eerste wat ik zal doen is het bestand openen in een hex-editor. De meeste bestanden bevatten enkele informatie helemaal bovenaan het bestand die beschrijft wat voor soort bestand het eigenlijk kan zijn.
Hieronder staat een karakterrepresentatie van een Adobe PDF-bestand. Stel dat iemand ten onrechte een PDF-bestand opslaat als een Microsoft Word.DOC-bestand.
Wanneer uw systeem die extensie ziet, zal het proberen Microsoft Word te starten om het bestand te openen - maar het zal mislukken. Open het bestand in een hex-editor en het is meteen duidelijk dat dit bestand inderdaad een PDF-bestand is en een snelle overschakeling naar de bestandsextensie en je kunt het bestand rechtstreeks openen in Adobe Acrobat of een andere echte lezer.
Als u een bestand ziet maar geen idee hebt welk soort programma kan worden gebruikt om dat bestand te openen, kunt u OpenWith bekijken met een lijst met veel bestandsextensies en de programma's die worden gebruikt om ze te openen.
Game- en bestandshacking
Een andere populaire reden waarom je een hex-editor zou kunnen gebruiken, is game-hacking. Je kunt een spelbesparend statusbestand laden en bijvoorbeeld het bedrag dat je hebt veranderen van $ 1.000 tot $ 1.000.000.
Nu, op recentere games is dit veel moeilijker gemaakt. Veel moderne spellen bevatten compressie of versleuteling, waardoor het vele malen moeilijker wordt om de opslagstatus of het spel te decompileren. In sommige games kun je echter nog steeds bepaalde variabelen bewerken, zoals in Sonic Spinball.
Naast het zoeken naar spelbestanden, kunt u soms andere belangrijke informatie ophalen uit een opgeslagen bestand waartoe u mogelijk geen toegang hebt. Dit is sterk afhankelijk van het type bestand en welke informatie u zoekt, maar het gebruik van een hex-editor is handig om te bepalen wat zich precies in een bestand bevindt.
Debugging & Editing
De laatste belangrijkste reden waarom u misschien een hex-editor zou gebruiken, is als u een programmeur bent die uw code debugt. In plaats van terug te gaan naar het opnieuw compileren van je code, is een eenvoudige hexadecimale bewerking misschien alles wat je nodig hebt om een verificatiepatroon uit te testen. Het bewerken van een onbewerkt binair bestand wordt niet aanbevolen voor de schijn van hart - pas één personage in een bestand aan kan het mogelijk onbruikbaar maken. Zorg ervoor dat u een back-up hebt voordat u bestanden wijzigt met een hex-editor.
Wanneer een hex geen hex is
Hopelijk heb je een beetje geleerd over computers die je nog niet eerder had gekend, of je hebt je geheugen tenminste opgeklaard. Weten hoe uw computer tikt wordt steeds belangrijker naarmate ze eenvoudiger en gemakkelijker te gebruiken worden. Ik weet dat als u zover bent gekomen, u klaar bent om deze geavanceerde strategieën te gebruiken om het meeste uit de bits en bytes te halen die op uw harde schijf zijn opgeslagen!
Heeft u vragen over hexadecimale of hex-editors in het algemeen? Laat het ons hieronder weten!