logo

JavaScript의 Base64 디코딩

Base64 바이너리를 텍스트로 이진 데이터를 데이터로 변환하는 인코딩 시스템 기수-64 표현한 다음 이를 다음과 같이 인코딩합니다. ASCII 문자열 . 데이터를 파일에 저장하고 인터넷을 통해 데이터를 보내는 데 자주 사용됩니다. 기본 JavaScript 기능 및 모듈을 사용하면 Base64 데이터를 쉽게 인코딩하고 디코딩할 수 있습니다.

이 기사에서는 다음 주제를 다루면서 JavaScript에서 Base64 데이터를 디코딩하는 방법에 대해 설명합니다.

  1. Base64란 무엇입니까?
  2. 내장 함수를 사용하여 JavaScript에서 Base64 데이터를 디코딩하는 방법
  3. 타사 라이브러리를 사용하여 JavaScript에서 Base64 데이터를 디코딩하는 방법
  4. JavaScript에서 Base64 사용에 대한 모범 사례

1. Base64란 무엇입니까?

바이너리를 텍스트로 인코딩 시스템이라고 함 Base64 이진 데이터를 다음과 같이 표시합니다. ASCII 문자열 . 이는 이진 데이터를 다음과 같은 표현으로 변환하여 수행됩니다. 기수-64 , 이는 다음 세트를 사용합니다. 64자 이진 데이터를 표현합니다. 그만큼 26 대문자 그리고 소문자 의 편지 영어 알파벳 , 10개의 숫자 , 구현에 따라 달라지는 두 개의 추가 문자가 이러한 문자에 포함됩니다. 최종 데이터 블록이 6비트 미만인 경우 0으로 채워져 전체 6비트가 됩니다.

Base64 인코딩은 문자당 6비트를 사용하여 원본 이진 데이터를 나타냅니다. 데이터는 다음과 같이 구분됩니다. 6비트 청크 Base64로 인코딩되며 각 청크는 Base64 문자 세트의 문자로 표시됩니다. 데이터의 마지막 청크가 6비트 미만인 경우 전체 6비트가 되도록 0으로 채워집니다.

Base64는 일반적으로 인터넷을 통해 데이터를 전송하고 파일에 데이터를 저장하는 데 사용됩니다. 예를 들어 이메일 첨부 파일, HTML 이미지, JWT(JSON 웹 토큰)에 사용됩니다.

2. 내장 함수를 사용하여 JavaScript에서 Base64 데이터를 디코딩하는 방법

JavaScript에서는 다음과 같은 내장 함수를 사용하여 Base64 데이터를 쉽게 디코딩할 수 있습니다. 아토브() . 그만큼 atob() 함수 Base64로 인코딩된 문자열을 입력으로 사용하고 디코딩된 이진 데이터를 문자열로 반환합니다.

다음은 사용 방법의 예입니다. 아토브() Base64 데이터를 디코딩하려면:

유닉스 디렉토리 생성
 const base64String = 'SGVsbG8gV29ybGQh'; // Base64-encoded string constdecodedString = atob(base64String); // Decoded string console.log(decodedString); // Output: 'Hello World!' 

이 예에서는 다음으로 시작합니다. Base64로 인코딩됨 SGVsbG8gV29ybGQh , 이는 문자열을 나타냅니다. '안녕하세요!' . 우리는 이 문자열을 atob() 함수 , 디코딩된 이진 데이터를 문자열로 반환합니다. 그런 다음 디코딩된 문자열을 콘솔에 기록합니다.

참고 atob() 함수 에서만 작동합니다 ASCII 문자열 . Base64로 인코딩된 데이터에 ASCII가 아닌 문자가 포함되어 있는 경우 타사 라이브러리를 사용해야 할 수도 있습니다.

3. 타사 라이브러리를 사용하여 JavaScript에서 Base64 데이터를 디코딩하는 방법

JavaScript에서 Base64 데이터를 디코딩하는 데 사용할 수 있는 타사 라이브러리가 많이 있습니다. 인기 있는 도서관 중 하나는 js-base64 , 유니코드 및 기타 인코딩을 지원하는 포괄적인 Base64 API를 제공합니다.

사용 js-base64 , 먼저 다음과 같은 패키지 관리자를 사용하여 설치해야 합니다. npm :

 npm install js-base64 

일단 설치되면 라이브러리를 사용하여 다음과 같이 Base64 데이터를 디코딩할 수 있습니다.

 const base64 = require('js-base64'); const base64String = 'SGVsbG8gV29ybGQh'; // Base64-encoded string constdecodedString = base64.decode(base64String); // Decoded string console.log(decodedString); // Output: 'Hello World!' 

이 예에서는 먼저 js-base64 사용하는 도서관 필요하다() 기능.

4. JavaScript에서 Base64 사용에 대한 모범 사례:

다음을 포함하여 JavaScript에서 Base64를 사용하는 몇 가지 방법이 있습니다.

1. 바이너리 데이터 인코딩에 Base64 사용

Base64 이미지, 오디오 및 비디오와 같은 이진 데이터를 인코딩하도록 설계되었습니다. 다음과 같은 텍스트 데이터를 인코딩하기 위한 것이 아닙니다. JSON 또는 HTML .

2. 고급 기능을 위해 타사 라이브러리 사용

함께 작업해야 하는 경우 유니코드 또는 기타 문자 인코딩을 사용하거나, 대량의 데이터를 처리해야 하는 경우 타사 라이브러리 . JavaScript용으로 널리 사용되는 Base64 라이브러리 중 일부는 다음과 같습니다. js-base64 그리고 base64-js .

3. 보안 위험에 주의하세요

Base64 인코딩은 자체적으로 보안을 제공하지 않습니다. 따라서 Base64를 사용하여 민감한 데이터를 인코딩하는 것을 피해야 하며 항상 암호화 및 기타 보안 조치를 사용하여 데이터를 보호해야 합니다.

4. 철저한 테스트

Base64 데이터로 작업할 때는 코드가 올바르게 작동하는지 철저하게 테스트하는 것이 중요합니다. 당신은 테스트해야 극단적인 경우 대규모 데이터 세트, 비ASCII 문자, 예상치 못한 입력 등을 방지하여 코드의 견고성과 신뢰성을 보장합니다.