Xxencode 및 Xxdecode

텍스트, 16진수 바이트, 파일을 xxencode로 인코딩하거나 xxencode 블록을 원래 데이터로 디코딩합니다. 알파벳은 영문자, 숫자, 더하기, 빼기 기호만 사용합니다.

브라우저에서만 실행되며 어떤 데이터도 업로드되지 않습니다.

사용 방법

  1. xxencode 블록을 만들려면 ‘인코딩’을, 블록을 원래 데이터로 되돌리려면 ‘디코딩’을 선택합니다.
  2. 완전한 블록을 만들려면 ‘begin / end 줄’을 켠 상태로 두고 ‘파일 이름’을 설정합니다. 데이터 줄만 필요하면 이 옵션을 끕니다.
  3. 내용을 입력하거나 붙여넣거나, ‘파일 열기’로 파일을 불러옵니다. 결과는 입력하는 즉시 갱신됩니다.
  4. 결과를 복사하거나 다운로드합니다. 디코딩한 데이터가 텍스트가 아니라면 ‘출력 형식’을 ‘16진수’로 선택하거나 파일로 다운로드합니다.

xxencode란?

xxencode는 uuencode의 구조를 그대로 유지하고 문자만 바꾼 형식입니다. 3바이트를 6비트 값 4개로 나누는 방식, 데이터 줄 하나에 길이 문자와 최대 45바이트를 담는 방식, 블록을 begin 644 name 줄과 end 줄 사이에 두는 방식은 모두 같습니다.

64개의 값은 +, -, 숫자 0-9, 대문자 A-Z, 소문자 a-z 순서로 대응합니다. 길이 문자도 같은 표를 사용하므로 45바이트가 꽉 찬 줄은 h로 시작하고, end 앞의 빈 줄은 + 하나입니다. 구조가 같으므로 출력 크기도 uuencode와 같아서, 길이 문자와 줄 바꿈을 포함하면 입력보다 약 38% 커집니다.

xxencode가 만들어진 이유

uuencode 출력에는 [, ], \, ^, ! 같은 문장 부호가 가득합니다. IBM 메인프레임은 ASCII가 아닌 EBCDIC을 사용하는데, 이 문자들은 EBCDIC 코드 페이지마다 위치가 다릅니다. ASCII 네트워크와 EBCDIC 네트워크 사이의 게이트웨이를 메일이 통과할 때 이런 문자가 잘못 변환되어 파일이 손상될 수 있었습니다.

영문자, 숫자, 더하기, 빼기 기호는 모든 EBCDIC 코드 페이지에서 같으므로 xxencode 텍스트는 양방향 모두 깨끗하게 변환됩니다. 나중에 MIME도 같은 목표를 달성했습니다. Base64 역시 영문자, 숫자, 그리고 ASCII와 EBCDIC에서 동일한 몇 가지 기호만 사용합니다. xxencode는 uuencode만큼 널리 쓰이지 못했고, 결국 Base64가 둘 다 대체했습니다.

uuencode와 xxencode 비교

UuencodeXxencode
사용 문자ASCII 32~95, 0 값은 백틱+ - 0-9 A-Z a-z
45바이트가 꽉 찬 줄의 첫 문자Mh
end 앞의 마지막 줄`+
EBCDIC 게이트웨이 통과 시 안전아니요예

사양

알파벳+ - 0-9 A-Z a-z
출력 크기약 137%(줄 앞 길이 문자 포함)
패딩줄당 최대 45바이트
표준xxencode
대소문자 구분예

예시

입력 (UTF-8)출력
Hello, World!begin 644 data.bin BG4JgP4wg63RjQalY6E++ + end
Base64.isbegin 644 data.bin 7Ea3nNHMo9aZn + end
你好begin 644 data.bin 4t9qUtOKx + end

자주 묻는 질문

uuencode와 xxencode는 어떻게 구별합니까?
데이터 줄을 살펴보십시오. xxencode 줄에는 영문자, 숫자, 더하기, 빼기 기호만 들어 있고 꽉 찬 줄은 h로 시작합니다. uuencode 줄에는 문장 부호가 들어 있고 꽉 찬 줄은 M으로 시작합니다. 여기서 디코딩할 때 잘못된 문자 오류가 발생하면 uuencode 페이지에서 시도해 보십시오.
도구가 begin 줄과 end 줄을 작성합니까?
예. 기본적으로 입력한 파일 이름과 함께 begin 644 줄과 닫는 줄들을 작성합니다. 인코딩된 데이터 줄만 필요하다면 ‘begin / end 줄’ 옵션을 끄십시오.
begin 줄이 없는 블록도 디코딩할 수 있습니까?

예. begin 줄이 없으면 비어 있지 않은 모든 줄을 데이터로 디코딩합니다. begin 줄이 있으면 그다음 줄부터 디코딩을 시작해 end 줄에서 멈추므로 주변 텍스트는 무시됩니다.

xxencode는 지금도 사용됩니까?
거의 사용되지 않습니다. 주로 오래된 메일과 뉴스 아카이브에서 볼 수 있습니다. 새 데이터에는 거의 모든 곳에서 지원되고 텍스트 전용 채널에서도 똑같이 안전한 Base64를 사용하십시오.