>일반적인 문제 >base64 인코딩의 용도는 무엇입니까?

base64 인코딩의 용도는 무엇입니까?

coldplay.xixi
coldplay.xixi원래의
2020-07-01 15:07:077199검색

base64 인코딩의 용도: 1. 비ASCII 문자 데이터를 ASCII 문자로 변환합니다. 2. 특히 http 및 MIME 프로토콜에서 빠른 데이터 전송에 적합합니다. 3. 데이터 콘텐츠는 전송을 위해 인코딩되어 안전하고 간단합니다.

base64 인코딩의 용도는 무엇입니까?

base64 인코딩의 용도:

1 Base64의 역할

  • 일부 시스템에서는 ASCII 문자만 사용할 수 있기 때문입니다. Base64는 ASCII가 아닌 문자 데이터를 ASCII 문자로 변환하는 데 사용되는 방법입니다.

  • base64는 특히 http, MIME 프로토콜에서 빠른 데이터 전송에 적합합니다.

  • base64는 실제로 보안 분야의 암호화 및 복호화 알고리즘이 아닙니다. 때때로 우리는 소위 base64 암호화 및 암호 해독을 자주 봅니다. 실제로 base64는 전송에 맞게 데이터 콘텐츠를 인코딩하는 인코딩 알고리즘으로만 간주될 수 있습니다. base64 인코딩 후에는 원본 텍스트가 보이지 않는 문자 형식이 되지만 이 방법은 매우 초보적이고 간단합니다.

2. Base64 인코딩 응용

Base64 인코딩은 HTTP 환경에서 더 긴 식별 정보를 전송하는 데 사용할 수 있습니다. 예를 들어, Java Persistence 시스템 Hibernate에서 Base64는 긴 고유 식별자(일반적으로 128비트 UUID)를 문자열로 인코딩하는 데 사용되며, HTTP 양식 및 HTTP GET URL. 다른 애플리케이션에서는 바이너리 데이터를 URL 배치에 적합한 형식(숨겨진 양식 필드 포함)으로 인코딩해야 하는 경우가 많습니다. 이때 Base64 인코딩을 사용하면 길이가 더 짧을 뿐만 아니라 읽을 수도 없습니다. 즉, 인코딩된 데이터가 육안으로 직접 표시되지 않습니다. HTTP环境下传递较长的标识信息。例如,在Java Persistence系统Hibernate中,就采用了Base64来将一个较长的唯一标识符(一般为128-bit的UUID)编码为一个字符串,用作HTTP表单和HTTP GET URL中的参数。在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式。此时,采用Base64编码不仅比较简短,同时也具有不可读性,即所编码的数据不会被人用肉眼所直接看到。

  然而,标准的Base64并不适合直接放在URL里传输,因为URL编码器会把标准Base64中的“/”和“+”字符变为形如“%XX”的形式,而这些“%”号在存入数据库时还需要再进行转换,因为ANSI SQL

그러나 표준 Base64는 URL에서 직접 전송하는 데 적합하지 않습니다. 왜냐하면 URL 인코더는 표준 Base64의 "/" 및 "+" 문자를 "%XX" 형식으로 변경하고 이러한 "%" 기호가 필요하기 때문입니다. ANSI SQL에서 "%" 기호가 와일드카드 문자로 사용되었기 때문에 데이터베이스에 저장될 때 변환됩니다.

 이 문제를 해결하려면 URL에 대한 향상된 Base64 인코딩을 사용할 수 있습니다. 끝 부분에 패딩된 '=' 기호를 제거할 뿐만 아니라 표준 Base64의 "+" 및 "/"를 각각 "-"로 변경합니다. " 및 "_"를 사용하면 URL 인코딩, 디코딩 및 데이터베이스 저장 중에 변환이 필요하지 않으며 프로세스에서 인코딩된 정보의 길이가 늘어나는 것을 방지하고 데이터베이스, 양식 등의 개체 식별자 형식을 통합합니다.

"+", "*" 및 이전에 IRCu에서 사용된 "+" 및 "/"를 "!" 및 "-"로 변경하는 정규식에 대한 향상된 Base64 변형도 있습니다. 둘 다 "[" 및 "]"는 정규식에서 특별한 의미를 가질 수 있습니다.

 "+/"를 "_-" 또는 "._"(프로그래밍 언어에서 식별자 이름으로 사용됨), ".-"(XML에서 Nmtoken에 사용됨) 또는 "_:"으로 변경하는 변형도 있습니다. (XML의 이름용).

3. 기타 애플리케이션

 1) Mozilla Thunderbird 및 Evolution은 이메일 비밀번호를 비밀로 유지하기 위해 Base64를 사용합니다.

 2) Base64는 특정 데이터를 보호하기 위한 간단한 "암호화"로도 자주 사용되며 실제 암호화는 일반적으로 모두입니다. 상대적으로 번거롭다.

 3) 스팸 발송자는 스팸 방지 도구를 피하기 위해 Base64를 사용합니다. 왜냐하면 이러한 도구는 일반적으로 Base64 메시지를 번역하지 않기 때문입니다.

 4) LDIF 파일에서는 문자열을 인코딩하는 데 Base64가 사용됩니다. 🎜

위 내용은 base64 인코딩의 용도는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.