본문 바로가기

JavaScript

[#. Base64 ] atob(), btoa() Base64 인코딩과 디코딩

반응형

 

 

 

 

베이스64

 

Base 64 (베이스 육십사)란 64진법 데이터로 8비트 이진 데이터(예를 들어 실행 파일이나, ZIP 파일 등)를 문자 코드에 영향을 받지 않는 공통 ASCII 영역의 문자들로만 이루어진 일련의 문자열로 바꾸는 인코딩 방식을 가리킨다

Base64는 데이터가 전송 중에 수정되지 않고 그대로 전송되는 것을 보장한다

자바스크립트에서 문자열을 base64로 인코드하려면 window 객체(전역 객체) 의 btoa 메소드를 사용하면 되고,

base64 로 인코드된 문자열을 디코드하려면 window 객체의 atob 메소드를 이용하면 된다

 

 

  • btoa => 인코딩
  • atob => 디코딩

 

 

 

var str = "Javascript is Language";
 
var encodingStr = window.btoa(str);
console.log(encodingStr);	// SmF2YXNjcmlwdCBpcyBMYW5ndWFnZQ==
 
var decodingStr = window.atob(encodingStr);
console.log(decodingStr);	// Javascript is Language

 

 

 

* accessToken을 디코딩할 때 사용하는 경우

 

let accessToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyaWQiOiJIU2JZbkFDY0N2U2doNndNIiwiaWF0IjoxNjQ3NDk3OTkzLCJleHAiOjE2NDgxMDI3OTN9.FylLJwKcA5aRIB6HRd5tWMkSI7_zeVsbJjUiM2mmiCo";
console.log(atob(a.split(".")[1]));

// {"userid":"HSbYnACcCvSgh6wM","iat":1647497993,"exp":1648102793}

 

 

 

 

 

 

 

 

 

 

반응형