> zeromq | kildesikker | effektiv <

// Z85 – ZeroMQs Base85-variant, sikker at bruge direkte i kildekode og JSON

[SOURCE-SAFE]

Sikker for kildekode

Undgår anførselstegn, backslash og mellemrum, så strenge kan indsættes direkte i C/C++‑kode, JSON og konfigurationsfiler uden ekstra escape.

[EFFKTIV]

Høj tæthed

4 byte bliver til 5 tegn, hvilket giver ca. 25 % overhead – mere effektivt end Base64 (~33 %) ved tekstlig repræsentation.

[ZEROMQ]

ZeroMQ-standard

Det officielle Base85-encodingformat, som ZeroMQ bruger til at transportere binære data i tekstprotokoller.

>> tekniske detaljer

Sådan fungerer Z85:

Z85 konverterer blokke af 4 byte til 5 tegn ved hjælp af 85 udskrivbare ASCII-tegn. Alfabetet er udvalgt, så ingen tegn kræver escape i C/C++‑strenge eller JSON, hvilket gør det nemmere at embedde binære data i kode og konfigurationer.

Eksempel:

"Hello" → nm=QNz.92

Hvorfor bruge Z85:

  • >Til at embedde binære data direkte i kildekode eller konfigurationsfiler
  • >For at minimere behovet for escape‑sekvenser i JSON, YAML og XML
  • >For at få en mere kompakt tekstlig repræsentation end Base64
  • >For at følge ZeroMQs anbefalede encoding for binære payloads
  • >For at standardisere formatet for binære data i tekst‑API’er

>> ofte stillede spørgsmål

Hvad er Z85-kodning?

Z85 er en Base85-variant defineret af ZeroMQ, som bruger 85 udskrivbare ASCII‑tegn, valgt så strenge kan bruges direkte i kildekode og JSON uden ekstra escape.

Hvordan adskiller Z85 sig fra andre Base85-varianter?

I modsætning til nogle andre Base85‑implementationer undgår Z85 anførselstegn, backslash, mellemrum og andre tegn, der typisk kræver escape i de fleste programmeringssprog.

Hvornår bør jeg bruge Z85?

Når du vil embedde binære data i kode, konfigurationer eller tekstprotokoller (især i ZeroMQ‑miljøer) og samtidig vil minimere problemer med escapning og læsbarhed.

Hvilke længdebegrænsninger gælder for Z85?

Den oprindelige binære længde skal være et multiplum af 4 byte. Enkodsiden kan tilføje padding, men dekoderen forudsætter denne egenskab for at kunne gendanne de originale data.

Andre sprog