Bencode

Bencode on tietomuoto . Se on kautta jakaminen - protokollaa BitTorrent avulla tallennetaan ja vaihtaa tietoja.

Muoto tukee neljää tietotyyppiä .

Bencodea käytetään muun muassa .torrenttiedostoissa. BitTorrent standardi määritelty, että nämä tiedostot selityksessä kutsutaan myös metatietojaJoitakin tiedostot pitäisi bencodete assosiatiivinen listoja.

Koska se on suhteellisen yksinkertainen algoritmi, Bencode voidaan toteuttaa ja jäsentää hyvin helposti . Se on myös immuuni joillekin ongelmille, joita binaarimuodot usein kohtaavat. Esimerkiksi tavujärjestyksellä ei ole merkitystä.

Koodaus

Bencode käyttää ASCII- kirjaimia erottimina.

numerot

Numerot i<zahl>ekoodataan nimellä. Se on <zahl>ASCII-versionumero, perustaso 10. Negatiiviset numerot kirjoitetaan miinusmerkillä. Bencode ei tue kiinteän pisteen tai liukuluvun numeroita .

määrä Bencode
−234 i-234e
0 i0e
29410 i29410e

Jouset

Merkkijonot <länge>:<inhalt>tuotetaan muodossa. Tässä on <länge>pituus, pohja 10 ja <inhalt>merkkijono itse. Tyhjät merkkijonot tulostetaan pituudeltaan nolla.

Merkkijono Bencode
−234 0:
Hei maailma 10:Hallo Welt

Luettelot

Luettelot l<inhalt>etulostetaan muodossa. Se on <inhalt>luettelon viivoitetut, bencodeten-elementit siinä järjestyksessä kuin niiden pitäisi näkyä. Luettelo voi sisältää sekoituksen erilaisia ​​tietotyyppejä (esim. Numeroiden ja merkkijonojen sekoitus). Tyhjä luettelo letulostetaan muodossa (ts. Ilman sisältöä).

sisältö Bencode
[] le
[595] li595ee
[Hei siellä] l5:Halloe
[-343, Hei, 555, [], [5]] li-343e5:Halloi555eleli5eee

Sanakirjat

Assosiatiiviset luettelot, joita kutsutaan myös englanninkielisiksi sanakirjoiksi (ja eritelmiksi) , näytetään tässä muodossa tavallisten luetteloiden tapaan d<inhalt>e. Sisältö koostuu kahden elementin, avaimen ja arvon ketjutetuista pareista . Parien järjestyksen on oltava leksokografisessa järjestyksessä . Tyhjä sanakirja detulostetaan muodossa.

sisältö Bencode
{} de
{Nimi => Thomas, ikä => 34} d4:Name6:Thomas5:Alteri34ee

Katso myös

Yksittäiset todisteet

  1. Bit Torrent -protokollan määritys . BitTorrent.org. Haettu 8. lokakuuta 2018.
  2. BitTorrent Specification v1.0: koodaus . Theory.org. Haettu 9. lokakuuta 2018.