Hvordan lese en Base64 teaser uten å finne på betydningen

Dekod en kort Base64-streng, bevar bevisene og separer de resulterende bytene fra påstander om kunngjøringer som ikke støttes.

Kodede strenger vises ofte i puslespill, utgivelses-teasere og sosiale innlegg. Dekoding kan fastslå hvilke bytes en streng representerer. Den kan ikke fastslå hvem som har skrevet meldingen, om et skjermbilde er ekte, eller hva et fremtidig produkt vil gjøre. Hold disse spørsmålene adskilt når du undersøker en ledetråd.

Start med en nøyaktig transkripsjon

Kopier kildestrengen uten å skrive den på nytt når det er mulig. Ta vare på store og små bokstaver, tegnsetting og eventuell synlig utfylling. Ta opp kilden URL og ta opp tid separat fra den dekodede utgangen. Hvis kilden er et bilde, merk at transkripsjon kan forvirre tegn som stor I, liten l og sifferet 1. En plausibel setning er ikke et bevis på at transkripsjonen er korrekt.

Dekod den bokstavelige verdien

For eksempel den korte strengen NS41 har et enkelt Base64 resultat: ASCII byte for 5.5. Resultatet er en streng. Det er ikke uavhengig et utgivelsesnummer, en dato, en referansepoengsum eller bevis på en kunngjøring fra en bestemt organisasjon.

const bytes = Uint8Array.from(atob('NS41'), c => c.charCodeAt(0));
console.log([...bytes]); // [53, 46, 53]
console.log(new TextDecoder('utf-8', { fatal: true }).decode(bytes)); // 5.5
console.log(btoa('5.5')); // NS41

Den omvendte konverteringen bekrefter kodingsforholdet. Det legger ikke til herkomst. Den eldre artikkelen URL inneholder et navn knyttet til søk etter en teaser; denne siden hevder ikke at den navngitte organisasjonen publiserte den eller annonserte et produkt.

Hold en liten bevistabell

Skriv ned tre separate felt: den bokstavelige inndata, det deterministiske dekodede resultatet og tolkningen du vurderer. Merk tolkningen som en hypotese med mindre en primærkilde bekrefter den. Sjekk en offisiell kunngjøring direkte før du gjentar et produktkrav. En repost, skjermbildetekst eller dekodet nummer bør ikke stille erstatte denne sjekken.

Hvis dekodingen mislykkes, rapporter det nøyaktige problemet i stedet for å prøve mange transformasjoner til noe ser meningsfullt ut. Å legge til utfylling kan fikse en kjent formateringsutelatelse; sletting av ukjente tegn endrer bevisene. Gjentatt dekoding av en utgang er bare rettferdiggjort når kilden eller formatet indikerer et annet lag.

Til slutt, hold dekodet innhold inert. En nyttelast for puslespill kan inneholde en lenke eller kjørbar kodebit. Å lese teksten krever ikke at du besøker lenken eller kjører koden. Denne tilnærmingen fungerer både for produktteasere, ledetråder og feilsøkingsmeldinger: utfør den reversible operasjonen, og evaluer deretter påstanden på grunnlag av egne bevis.