Base64-koodausta käytetään binääri- tai tekstidataa sisältävien tavujen muuntamiseen ASCII-merkeiksi. Koodaus estää tietoja vioittumasta, kun niitä siirretään tai käsitellään pelkän tekstijärjestelmän kautta. Tässä artikkelissa keskustelemme Base64-koodauksesta ja -dekoodauksesta ja sen käytöstä binääri- ja tekstidatan koodaamiseen ja purkamiseen.
Base64-koodaus:
Se on eräänlainen tavujen muuntaminen ASCII-merkeiksi. luettelo käytettävissä olevista Base64-merkeistä on mainittu alla:
faktoriaali vuonna c
- 26 isoa kirjainta
- 26 pientä kirjainta
- 10 numeroa
- + ja / uusille riveille
Jokainen Base64-merkki edustaa 6 bittiä dataa. On myös tärkeää huomata, että sitä ei ole tarkoitettu salaukseen ilmeisistä syistä.
Voit muuntaa merkkijonon Base64-merkiksi seuraavasti:
- Hanki ASCII-arvo jokaiselle merkkijonolle.
- Laske ASCII-arvojen 8-bittinen binäärivastine
- Muunna 8-bittinen merkkipala 6-bittisiksi paloiksi ryhmittelemällä numerot uudelleen
- Muunna 6-bittiset binaariryhmät vastaaviksi desimaaliarvoiksi.
- Käytä Base64-koodaustaulukkoa tasataksesi vastaavat Base64-arvot kullekin desimaaliarvolle.
Alla oleva kuva tarjoaa meille Base64-koodaustaulukon.

Kuvan lähde: Wikipedia
Pythonin käyttäminen merkkijonojen koodaamiseen:Pythonissa base64-moduulia käytetään tietojen koodaamiseen ja purkamiseen. Ensin merkkijonot muunnetaan tavumaisiksi objekteiksi ja koodataan sitten base64-moduulilla. Alla oleva esimerkki osoittaa, että koodausmerkkijonojen toteutus ei ole base64-merkkiä.
Esimerkki:
import> base64> > sample_string>=> 'GeeksForGeeks is the best'> sample_string_bytes>=> sample_string.encode(>'ascii'>)> > base64_bytes>=> base64.b64encode(sample_string_bytes)> base64_string>=> base64_bytes.decode(>'ascii'>)> > print>(f>'Encoded string: {base64_string}'>)> |
>
>
java muuntaa merkki merkkijonoksi
Lähtö:
Encoded string: R2Vla3NGb3JHZWVrcyBpcyB0aGUgYmVzdA==>
Pythonin käyttäminen merkkijonojen purkamiseen:
Base64-merkkijonon dekoodaus on täsmälleen päinvastainen kuin koodauksen. Ensin muunnetaan Base64-merkkijonot koodaamattomiksi datatavuiksi, minkä jälkeen muunnetaan tavumaiseksi objektiksi merkkijonoksi. Alla oleva esimerkki kuvaa yllä olevan esimerkin koodausmerkkijonotulosteen dekoodausta.
Esimerkki:
import> base64> > > base64_string>=>' R2Vla3NGb3JHZWVrcyBpcyB0aGUgYmVzdA =='> base64_bytes>=> base64_string.encode(>'ascii'>)> > sample_string_bytes>=> base64.b64decode(base64_bytes)> sample_string>=> sample_string_bytes.decode(>'ascii'>)> > print>(f>'Decoded string: {sample_string}'>)> |
>
>
Lähtö:
Decoded string: GeeksForGeeks is the best>