BASH BASETOP 10 ECODE

BASH BASETOP 10 ECODE
Para codificar ou decodificar entrada/saída padrão ou qualquer conteúdo de arquivo, o Linux usa o sistema de codificação e decodificação BASE64. Os dados são codificados e decodificados para facilitar o processo de transmissão e armazenamento de dados. A codificação e decodificação não são semelhantes à criptografia e descriptografia. Os dados codificados podem ser facilmente revelados pela decodificação. Portanto, esta ferramenta de utilitário de linha de comando não pode ser usada para segurança de dados. Alfabeto, número e símbolo '=' são usados ​​para codificar quaisquer dados.

Sintaxe:

base64 [Opção] [Infile] [Outfile]

Você pode usar diferentes tipos de opções com o comando base64. Os dados podem ser retirados de qualquer arquivo ou entrada padrão durante a codificação ou decodificação. Após codificar ou decodificar, você pode enviar a saída em um arquivo ou imprimir a saída no terminal.

Opções:

-e ou -ncode

Esta opção é usada para codificar quaisquer dados da entrada padrão ou de qualquer arquivo. É a opção padrão.

-d ou -decode
Esta opção é usada para decodificar quaisquer dados codificados de entrada padrão ou de qualquer arquivo.

-n ou -noerrcheck
Por padrão, Base64 verifica o erro ao decodificar todos os dados. Você pode usar a opção -n ou -noerrcheck para ignorar a verificação no momento da decodificação.

-u ou -help
Esta opção é usada para obter informações sobre o uso deste comando.

-Eu, -Ignore -Garbage
Esta opção é usada para ignorar o caráter não alfabet.

-direito autoral
É usado para obter informações de direitos autorais.

-versão
É usado para obter as informações da versão.

Como você usa o comando base64 no linux é mostrado neste tutorial usando alguns exemplos.

Exemplo#1: codificando dados de texto

Você pode codificar qualquer dados de texto usando base64 na linha de comando. Quando você deseja codificar quaisquer dados usando base64, o uso de opção -e ou -encode é opcional. Então, se você não mencionar nenhuma opção com base64, ele funcionará para codificar. O comando a seguir codificará os dados 'Linuxhint.com ' e imprima os dados codificados como saída.

eco linuxhint.com '| base64

Saída:

Exemplo#2: Decodificação de dados de texto

O comando a seguir decodificará o texto codificado, 'BGLUDXHOAW50LMNVBQ ==e imprima o texto original como saída.

eco 'bgludxhoaw50lmnvbqo =' | base64 -Decodo

Saída:

Exemplo#3: codificando arquivo de texto

Crie um arquivo de texto chamado, 'amostra.TXT'Com o texto a seguir que será codificado usando base64.

PHP usa base64_encode e base64_decode para codificação e decodificação de dados

Você pode imprimir o texto codificado na linha de comando ou armazenar o texto codificado em outro arquivo. O comando a seguir codificará o conteúdo do Samplo.TXT Arquive e imprima o texto codificado no terminal.

Base64 amostra.TXT

Saída:

Os seguintes comandos codificarão o conteúdo do Samplo.TXT Arquive e salve o texto codificado no codedData.TXT arquivo.

$ base64 amostra.txt> codedData.TXT
$ CAT EncodedData.TXT

Saída:

Exemplo#4: Arquivo de texto de decodificação

O seguinte comando decodificará o conteúdo do codedData.TXT Arquive e imprima a saída no terminal

base64 -d codedData.TXT

Saída:

Os seguintes comandos decodificarão o conteúdo do codedData.TXT arquivar e armazenar o conteúdo decodificado no arquivo, OriginalData.TXT.

$ base64 -Decode codedData.txt> originaldata.TXT
$ cat originaldata.TXT

Saída:

Exemplo#5: codificando qualquer texto definido pelo usuário

Crie um arquivo bash chamado Encode_User_Data.sh Com o seguinte código. O script a seguir tomará qualquer dados de texto como entrada, codificará o texto usando base64 e imprimirá o texto codificado como saída.

#!/BIN/BASH
eco "Digite algum texto para codificar"
Leia o texto
eText = 'ECHO -N $ Texto | base64 '
eco "O texto codificado é: $ etext"

Execute o script.

Bash Encode_User_Data.sh

Saída:

Validar que o texto é codificado corretamente, tubulando o texto codificado retornado da sua execução do script para Base64 -Decode para confirmar que o texto original é retornado. Abaixo você pode ver como validar assumindo Meu texto secretoA corda foi codificada.

echo txkgc2vjcmv0ihrlehq = | base64 -Decodo

Exemplo#6: Verificando a validade do usuário decodificando o texto

Crie um arquivo bash chamado CheckValidity.sh e adicione o seguinte código. Neste exemplo, um texto secreto é retirado do usuário. Um texto codificado predefinido é decodificado por Base64 e comparado com a entrada do usuário. Se ambos os valores forem iguais, a saída será 'Você é autenticado'Caso contrário, a saída será'Você não é autenticado'. Usando este código de decodificação simples, a validação normal pode ser feita com muita facilidade. Neste exemplo, o texto secreto que resultará em sucesso é 777799. Provavelmente isso não seria codificado no script, mas mais dinâmico em um aplicativo do mundo real.

#!/BIN/BASH
eco "digite seu código secreto"
Leia segredo
otext = 'echo' nzc3nzk5cg == '| base64 -Decodo '
se [$ secret == $ otext]; então
eco "você é autenticado"
outro
eco "você não é autenticado"
fi

Execute o script.

Bash CheckValidity.sh

Saída:

Conclusão:

Para dados confidenciais como senha ou dados confidenciais, o sistema de codificação e decodificação não é adequado. Você deve usar o sistema de criptografia e descriptografia para proteger esse tipo de dados.

Referências:

  • [RFC] As codificações Base16, Base32 e Base64
  • Base64 Manpage