System

로컬에서 Base64 인코딩, 디코딩 하기 (MacOS, Linux, Windows)

RyanGomdoriPooh 2019. 9. 9. 22:29

개요

CLI에 대해서 익숙하시지 않은 분들은 보통 인터넷에서 인코딩 디코딩 웹툴을 이용하게 됩니다.

 

그런데 인코딩이나 디코딩 해야하는 파일이 웹에 올리면 안되는 경우에, 결국 로컬에서 인코딩을 진행해야합니다.

 

그래서 로컬 CLI로 Base64 인코딩, 디코딩을 하는 방법에 대해서 설명하겠습니다.

 

ex)

  • 인코딩 A.jpeg파일 => output.b64파일
  • 디코딩 output.b64파일 => A.jpeg파일


Linux 환경에서

Base64인코딩
1) 파일인코딩: A.jpeg파일 => output.b64파일

$ base64 A.jpeg > output.b64
2) 문자열인코딩: 문자열 => Base64문자
$ echo 'hello world' | base64
ex) aGVsbG8gd29ybGQK

Base64디코딩
1) 파일인코딩: output.b64파일 => A.jpeg파일
$ base64 -d output.b64 > A.jpeg
2) 문자열디코딩: Base64문자 => 문자열
$ echo aGVsbG8gd29ybGQK | base64 --decode

Windows 환경에서

Base64인코딩
1) 파일인코딩: A.jpeg파일 => output.b64파일
$ certutil -encode A.jpeg output.b64

Base64디코딩
1) 파일인코딩: output.b64파일 => A.jpeg파일
$ certutil -decode output.b64 A.jpeg

MacOS 환경에서

Base64인코딩
1) 파일인코딩: A.jpeg파일 => output.b64파일
$ base64 -i A.jpeg -o output.b64
2) 문자열디코딩: Base64문자 => 문자열
$ echo -n 'hello world' | base64
ex) aGVsbG8gd29ybGQ=

Base64디코딩
1) 파일인코딩: output.b64파일 => A.jpeg파일
$ base64 -D -i output.b64 -o A.jpeg
2) 문자열디코딩: Base64문자 => 문자열
$ echo 'aGVsbG8gd29ybGQ=' | base64 -D
ex) hello world

이상입니다.