logo

Kodning och avkodning av Base64-strängar i Python

Base64-kodningen används för att konvertera bytes som har binär- eller textdata till ASCII-tecken. Kodning förhindrar att data skadas när de överförs eller bearbetas genom ett system med endast text. I den här artikeln kommer vi att diskutera Base64-kodning och avkodning och dess användningsområden för att koda och avkoda binär- och textdata.

Base64-kodning:
Det är en typ av konvertering av byte till ASCII-tecken. listan över tillgängliga Base64-tecken nämns nedan:

skillnad mellan räv och varg
  • 26 versaler
  • 26 små bokstäver
  • 10 nummer
  • + och / för nya rader

Varje Base64-tecken representerar 6 databitar. det är också viktigt att notera att det inte är avsett för kryptering av uppenbara skäl.
För att konvertera en sträng till ett Base64-tecken bör följande steg följas:



  • Hämta ASCII-värdet för varje tecken i strängen.
  • Beräkna den 8-bitars binära ekvivalenten av ASCII-värdena
  • Konvertera 8-bitars teckenbiten till bitar om 6 bitar genom att gruppera om siffrorna
  • Konvertera de 6-bitars binära grupperna till deras respektive decimalvärden.
  • Använd Base64-kodningstabellen för att justera respektive Base64-värden för varje decimalvärde.

Bilden nedan ger oss en Base64-kodningstabell.

Bildkälla: Wikipedia

Använda python för att koda strängar:
I Python används base64-modulen för att koda och avkoda data. Först konverteras strängarna till byteliknande objekt och kodas sedan med base64-modulen. Exemplet nedan visar att implementeringen av kodningssträngar inte är base64-tecken.

Exempel:




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}'>)>

>

>

Produktion:

Encoded string: R2Vla3NGb3JHZWVrcyBpcyB0aGUgYmVzdA==>

Använda Python för att avkoda strängar:
Avkodning Base64-strängen är precis motsatt den för kodning. Först konverterar vi Base64-strängarna till okodade databytes följt av konvertering till byteliknande objekt till en sträng. Exemplet nedan visar avkodningen av ovanstående exempel på kodsträngsutdata.

Exempel:




uppdaterar java
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}'>)>

>

>

Produktion:

Decoded string: GeeksForGeeks is the best>