Bencode
Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2019. november 1-jén felülvizsgált
verziótól ; az ellenőrzéshez
1 szerkesztés szükséges .
A Bencode egy formátum, amelyet a BitTorrent p2p fájlelosztó rendszer használ lazán strukturált adatok tárolására és továbbítására.
Négy adattípust tartalmaz:
- bájt karakterlánc,
- egész szám,
- lista (tömb),
- szótár (asszociatív tömb).
A Bencode .torrent fájlokban használatos , amelyek egy Bencode formátumú szótár.
Kódolás
A Bencode ASCII karaktereket használ határolóként és számként.
- Egy egész számot így írunk le: i <tizedes szám> e . A szám nem kezdődhet nullával, de a nulla számot i0e-ként írjuk. A negatív számokat mínuszjellel írjuk a szám elé. A -42 szám így fog kinézni: "i-42e".
- Byte karakterlánc: <méret> : <tartalom> . A méret egy pozitív szám decimális jelöléssel, lehet nulla; A tartalom maga az adat, amelyet egy bájtokból álló sztring képvisel, amely nem jelent semmilyen karakterkódolást. A "spam" karakterlánc ebben a formátumban úgy néz ki, mint "4:spam".
- Lista (tömb): l <tartalom> e . A tartalom tartalmazza az egymást követő Bencode típusokat. A "spam" karakterláncból és a 42-es számból álló lista így néz ki: "l4:spami42ee".
- Szótár: d <tartalom> e . A tartalom egymást követő kulcs-érték párokból áll. A kulcsok csak bájtokból álló karakterláncok lehetnek, és lexikográfiai sorrendben kell őket rendezni . Az érték bármilyen Bencode elem lehet. Ha a "bar" és a "foo" kulcsokat leképezzük a "spam" és a 42 értékekre, a következőt kapjuk: "d3:bar4:spam3:fooi42ee". (Ha szóközt adsz az elemek közé, könnyebben megértheted a szerkezetet: "d 3:bar 4:spam 3:foo i42e e" .)
Linkek