Hex dekódolás

Illessze be a hexadecimális karakterláncot alább, és kattintson a Dekódolás gombra a szöveggé való visszaalakításhoz. Az összes feldolgozás helyben, a böngészőjében történik.

A szóközöket, kettőspontokat, vesszőket, kötőjeleket és 0x előtagokat a program dekódolás előtt eltávolítja.
Másolva!

Mi az a Hex dekódolás?

A hex dekódolás egy hexadecimális karakterláncot alakít vissza az eredeti bájt reprezentációjává, majd szöveggé. A bemenet tartalmazhat szóközöket, kettőspontokat vagy elválasztó nélküli hex párokat.

Minden hex karakterpár (00ff) egy bájtot jelöl. A dekódolt bájtok UTF-8 szövegként kerülnek értelmezésre.

A szóközöket, kettőspontokat, vesszőket, pontosvesszőket, pontokat és kötőjeleket a program dekódolás előtt eltávolítja, így az ujjlenyomatból vagy dumpból közvetlenül másolt hexadecimális általában tisztítás nélkül működik. A bájtokat ezután UTF-8 szerint olvassa, és ami nem érvényes UTF-8, azt jelzi ahelyett, hogy elrontaná.

Valami nem akar dekódolódni?

Egy dekódolhatatlan adatcsomag általában tünet, nem maga a hiba: kettős kódolás valahol a folyamatban, feltételezett és nem deklarált karakterkészlet, vagy olyan bájtokra aláírt token, amelyek nem egészen azok, amikre bárki számított. Pontosan ilyesmin dolgozunk: integrációkon, API-kon és az adatot továbbadó rendszereken.

Mondja el, mi akadt el

Gyakran ismételt kérdések

Miért nem sikerül dekódolni a hexadecimális szövegemet?
Rendszerint páratlan számú számjegy, vagy egy karakter, ami nem hexadecimális számjegy. Minden bájthoz pontosan két számjegy kell, a páratlan darabszám tehát azt jelenti, hogy valami csonkult, vagy útközben elveszett egy számjegy. Az idegen karakter gyakran kisbetűs l az egyes helyett, nagy O a nulla helyett, vagy egy másolt sor vége, ami velejött.
Beilleszthetek szóközös, kettőspontos vagy 0x előtagú hexadecimálist?
A szóközöket, kettőspontokat, vesszőket, pontosvesszőket, pontokat és kötőjeleket a program dekódolás előtt mind eltávolítja, így a tanúsítvány-ujjlenyomatból, MAC-címből vagy dumpból közvetlenül másolt hexadecimális általában tisztítás nélkül működik. A bájtok elé írt 0x előtagot nem távolítja el, azt előbb vegye ki, ha a forrásában szerepel.
Mi van, ha a dekódolt bájtok nem szövegek?
Ez a szokásos eset, nem hiba. A hexadecimális a bájtok leírásának módja, és ezek a bájtok gyakran egyáltalán nem szövegek. Ez az oldal UTF-8 szerint dekódolja őket, és nyíltan megmondja, ha nem érvényes UTF-8, ahelyett hogy helyettesítő karaktereket írna ki és önre bízná a találgatást. Ha szöveget várt és nem kapott, nézze meg, tömörítettek vagy titkosítottak-e a bájtok.
Honnan tudom, milyen karakterkódolást használnak a bájtok?
Pusztán a hexadecimálisból sehogy. Egy hexadecimális szövegben semmi nem rögzíti, milyen kódolás állította elő; ez az információ a bájtokon kívül él, egy HTTP fejlécben, egy fájlformátumban vagy egy protokoll specifikációjában. Ez az oldal UTF-8-at feltételez, ami az esetek túlnyomó többségében helyes, és ezért jelent egy érvénytelen sorozatot binárisként ahelyett, hogy csendben elrontott karakterekké alakítaná. Ha tudja, hogy a bájtok mást hordoznak, olyan eszközzel dekódolja őket, amelyben megnevezheti a kódolást.
Visszafordítható a hexadecimális dekódolás?
Teljesen. A hexadecimális egyenes helyettesítés, bájtonként két karakter, semmi nem vész el és semmi nem kerül hozzá, így a kódolás és a dekódolás pontosan azokat a bájtokat adja vissza, amikkel indult. Ami nem mindig fordítható vissza, az a rákövetkező lépés: a bájtokból szöveget csinálni a helyes kódolást igényli, és egy abban a kódolásban érvénytelen bájtsorozatnak egyszerűen nincs szöveges alakja.