Base 64 인 코딩 의 깊 은 인식 과 이해

2454 단어 Base64부호화
Base 64 인 코딩 의 깊 은 인식 과 이해
  이전에 많은 업무 에서 Base 64 인 코딩 을 본 적 이 있 거나 사용 한 적 이 있 지만 수박 겉 핥 기 식 으로 그것 에 대해 깊이 있 는 인식 과 이 해 를 가지 지 못 했다.오늘 은 Base 64 인 코딩 에 대해 이야기 하 겠 습 니 다.
       먼저 명확 한 것 은 Base 64 는 역 동적 인 인 코딩 방식 이다.인 코딩 방식 을 언급 하면 우리 가 먼저 생각 한 것 은 Ascii,GBK,Unicode 등 자주 사용 하 는 인 코딩 방법 이다.그러면 Base 64 는 이런 인 코딩 방식 과 어떤 차이 가 있 습 니까?
       간단하게 말하자면,Base 64 는 임의의 바 이 너 리 데 이 터 를 64 개의 Ascii 문자 로 표시 하 는 방법 이다.인쇄 할 수 없 는 문 자 를 인쇄 가능 한 문자 로 바 꾸 거나 바 이 너 리 데 이 터 를 Ascii 문자 로 간단하게 인 코딩 하 는 데 사 용 됩 니 다.Base 64 는 네트워크 에서 가장 자주 사용 하 는 8bit 바이트 데 이 터 를 전송 하 는 인 코딩 방식 중 하나 이다.
       Base 64 의 원 리 는 매우 간단 하 다.우선 64 자 를 포함 하 는 표(아래 표)를 준비 해 야 한다.0~63 은 각각 유일한 문자 에 대응 했다.예 를 들 어 18 은 S 에 대응 하 는 것 이다.

       그 다음 에 이 진 데 이 터 를 처리 합 니 다.3 바이트 마다 한 그룹 씩 모두 3x8=24 bit 입 니 다.이 24bit 를 4 조로 나 누 면 각 조 에 딱 6 bit 이 고 6bit 의 데 이 터 는 0~63 의 범 위 를 나 타 낼 수 있 으 며 상기 표 의 64 글자 에 대응 할 수 있 습 니 다.이렇게 해서 우 리 는 4 개의 숫자 를 색인 으로 얻 은 후에 표를 찾 아 해당 하 는 4 개의 문 자 를 얻 으 면 인 코딩 된 문자열 을 얻 을 수 있다.다음 표 는 전체 처리 과정 을 분명하게 묘사 하 였 다.
텍스트
M
a
n
ASCII 인 코딩
77
97
110
이 진 비트
0
1
0
0
1
1
0
1
0
1
1
0
0
0
0
1
0
1
1
0
1
1
1
0
인덱스
19
22
5
46
Base 64 인 코딩
T
W
F
u
        따라서 Base 64 인 코딩 은 3 바이트 의 바 이 너 리 데 이 터 를 4 바이트 의 텍스트 데이터 로 인 코딩 하고 길 이 는 원래 의 4/3 으로 증가 합 니 다.인 코딩 할 바 이 너 리 데이터 가 3 의 배수 가 아니라면 마지막 에 1 개 또는 2 개의 바이트 가 남 으 면 어떻게 합 니까?이때 원 데이터 뒤에 0 바이트 1 개 또는 2 개 를 추가 하여 바이트 수 를 3 의 배수 로 해 야 한다.그리고 인 코딩 된 문자열 뒤에 1 개 또는 2 개의 등호'='을 추가 하여 추 가 된 0 값 바이트 수 를 표시 합 니 다.디 코딩 할 때 자동 으로 지 워 집 니 다.
       Base 64 인 코딩 의 장단 점 을 살 펴 보 겠 습 니 다.
        장점:바 이 너 리 데 이 터 를 인쇄 가능 한 문자 로 변환 하여 데 이 터 를 전송 할 수 있 습 니 다.데 이 터 를 간단하게 암호 화하 여 육안 으로 안전 하 다.
        단점:내용 인 코딩 후의 부피 가 커지 고 인 코딩 과 디 코딩 은 추가 작업량 이 필요 합 니 다.
       그것 의 사용 장면 은 매우 많다.예 를 들 어 그림 등 자원 파일 을 Base 64 인 코딩 형식 으로 코드 에 직접 넣 고 사용 할 때 Base 64 를 반대 한 후에 Image 대상 으로 변환 해서 사용한다.일부 텍스트 프로 토 콜 은 보이 지 않 는 문자 의 전달 을 지원 하지 않 고 보 이 는 문자 로 만 정 보 를 전달 할 수 있 습 니 다.어떤 때 는 특수 한 상황 에서 대부분의 메 시 지 는 순수한 텍스트 이 고 가끔 은 이 순수한 텍스트 채널 로 그림 한 장 을 전송 해 야 하 는 상황 이 발생 할 때 Base 64 를 사용한다.예 를 들 어 다기 능 인터넷 메 일 확장 서비스(MIME)는 Base 64 로 메 일의 첨부 파일 을 인 코딩 하 는 것 이다.
      읽 어 주 셔 서 감사합니다. 여러분 에 게 도움 이 되 기 를 바 랍 니 다.본 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!

좋은 웹페이지 즐겨찾기