Bash base64 인코딩 및 디코딩

표준 입력 / 출력 또는 모든 파일 콘텐츠를 인코딩 또는 디코딩하기 위해 Linux는 base64 인코딩 및 디코딩 시스템을 사용합니다. 데이터는 데이터 전송 및 저장 프로세스를보다 쉽게하기 위해 인코딩 및 디코딩됩니다. 인코딩 및 디코딩은 암호화 및 암호 해독과 유사하지 않습니다. 인코딩 된 데이터는 디코딩을 통해 쉽게 공개 할 수 있습니다. 따라서이 명령 줄 유틸리티 도구는 데이터 보안에 사용할 수 없습니다. 알파벳, 숫자 및‘=’기호는 모든 데이터를 인코딩하는 데 사용됩니다.

base64

base64 명령으로 다양한 유형의 옵션을 사용할 수 있습니다. 인코딩 또는 디코딩하는 동안 모든 파일 또는 표준 입력에서 데이터를 가져올 수 있습니다. 인코딩 또는 디코딩 후 출력을 파일로 보내거나 터미널에서 출력을 인쇄 할 수 있습니다.

옵션 :

-e 또는 –encode

이 옵션은 표준 입력 또는 모든 파일의 데이터를 인코딩하는 데 사용됩니다. 기본 옵션입니다.

-d 또는 –decode

이 옵션은 표준 입력 또는 모든 파일에서 인코딩 된 데이터를 디코딩하는 데 사용됩니다.

– n 또는 –noerrcheck

기본적으로 base64는 데이터를 디코딩하는 동안 오류를 확인합니다. –n 또는 –noerrcheck 옵션을 사용하여 디코딩시 검사를 무시할 수 있습니다.

-u 또는 –help

이 옵션은이 명령의 사용법에 대한 정보를 가져 오는 데 사용됩니다. .

-i, –ignore-garbage

이 옵션은 디코딩하는 동안 알파벳이 아닌 문자를 무시하는 데 사용됩니다.

–copyright

저작권 정보를 얻는 데 사용됩니다.

–version

버전 정보를 가져 오는 데 사용됩니다.

Linux에서 base64 명령을 사용하는 방법은 몇 가지 예제를 사용하여이 자습서에 표시됩니다.

예제 # 1 : 텍스트 데이터 인코딩

명령 줄에서 base64를 사용하여 모든 텍스트 데이터를 인코딩 할 수 있습니다. base64를 사용하여 데이터를 인코딩하려는 경우 -e 또는 –encode 옵션을 사용하는 것은 선택 사항입니다. 따라서 base64에 대한 옵션을 언급하지 않으면 인코딩에 적합합니다. 다음 명령은 데이터 linuxhint.com을 인코딩하고 인코딩 된 데이터를 출력으로 인쇄합니다.

$ echo “linuxhint.com”| base64

출력 :

예제 # 2 : 텍스트 데이터 디코딩

다음 명령은 인코딩 된 텍스트 bGludXhoaW50LmNvbQ ==를 디코딩하고 원본 텍스트를 출력으로 인쇄합니다.

$ echo “bGludXhoaW50LmNvbQo = “| base64 –decode

출력 :

예제 # 3 : 텍스트 파일 인코딩

base64를 사용하여 인코딩 할 다음 텍스트가 포함 된 sample.txt라는 텍스트 파일을 만듭니다.

Sample .txt
PHP는 데이터 인코딩 및 디코딩에 base64_encode 및 base64_decode를 사용합니다.

명령 줄에서 인코딩 된 텍스트를 인쇄하거나 인코딩 된 텍스트를 다른 파일에 저장할 수 있습니다. 다음 명령은 sample.txt 파일의 내용을 인코딩하고 인코딩 된 텍스트를 터미널에 인쇄합니다.

$ base64 sample.txt

출력 :

다음 명령은 sample.txt 파일의 내용을 인코딩하고 저장합니다. 인코딩 된 텍스트를 encodingData.txt 파일에 저장합니다.

$ base64 sample.txt > encodeData.txt
$ cat encodeData.txt

출력 :

예제 # 4 : 텍스트 파일 디코딩

다음 명령은 encodingData.txt 파일의 내용을 디코딩하고 출력을 터미널에 인쇄합니다.

$ base64 -d encodingData.txt

출력 :

다음 명령이 디코딩됩니다. encodingData.txt 파일의 내용을 저장하고 디코딩 된 내용을 originalData.txt 파일에 저장합니다.

$ base64 –decode encodingData.txt > originalData.txt
$ cat originalData.txt

출력 :

예제 # 5 : 사용자 정의 텍스트 인코딩

다음을 사용하여 encode_user_data.sh라는 bash 파일을 만듭니다. 암호. 다음 스크립트는 모든 텍스트 데이터를 입력으로 사용하고 base64를 사용하여 텍스트를 인코딩하고 인코딩 된 텍스트를 출력으로 인쇄합니다.

#! / bin / bash
echo “인코딩 할 텍스트 입력”
텍스트 읽기
etext =`echo -n $ text | base64`
echo “인코딩 된 텍스트 : $ etext”

스크립트를 실행합니다.

$ base encode_user_data.sh

출력 :

예제 # 6 : 사용자 유효성 확인 텍스트 디코딩

checkValidity.sh라는 bash 파일을 만들고 다음 코드를 추가합니다. 이 예에서는 사용자로부터 비밀 텍스트를 가져옵니다. 미리 정의 된 인코딩 된 텍스트는 base64로 디코딩되고 사용자 입력과 비교됩니다. 두 값이 모두 같으면 출력은 인증 됨이되고 그렇지 않으면 출력은 인증되지 않음이됩니다.이 간단한 디코딩 코드를 사용하면 일반적인 유효성 검사를 매우 쉽게 수행 할 수 있습니다.

스크립트를 실행합니다.

$ bash checkValidity.sh

출력 :

결론 :

민감한 암호 또는 기밀 데이터, 인코딩 및 디코딩 시스템과 같은 데이터는 전혀 적합하지 않습니다. 이러한 유형의 데이터를 보호하려면 암호화 및 복호화 시스템을 사용해야합니다.

답글 남기기

이메일 주소를 발행하지 않을 것입니다. 필수 항목은 *(으)로 표시합니다