Base64 정리
무료 온라인 Base64 정리 도구. Base64 문자열에서 줄바꿈, 공백, 보이지 않는 문자 등 무효 내용을 제거합니다. 공백 제거, 특수 문자 제거, 패딩 자동 완성의 세 가지 독립 옵션을 지원하며, RFC 4648을 엄격히 준수하는 Base64를 출력합니다.
관련 추천
Base64 정리란 무엇인가요?
Base64 정리는 Base64 문자열에서 모든 무효 문자와 잉여 문자를 제거하는 작업입니다. 목표는 RFC 4648 표준을 엄격히 준수하는 순수 Base64를 출력하여 서로 다른 시스템 간 전송, 저장, 디코딩을 용이하게 하는 것입니다.
정리가 필요한 이유:Base64는 여러 출처에서 종종 무효 문자가 섞여 들어옵니다. ①줄바꿈 문자(\n, \r\n)—— 이메일 첨부파일, 데이터베이스 필드, 로그 출력;②공백과 탭 문자 —— 수동 붙여넣기, Excel 복사;③UTF-8 BOM(EF BB BF)—— Windows 시스템에서 저장한 텍스트 파일;④전각 기호, 한중일 문장 부호 —— 복사 붙여넣기 오류. 이 모든 것이 디코더 오류를 유발합니다.
세 가지 정리 옵션:①공백 제거(\s \n \r \t)—— 줄바꿈과 공백 처리;②특수 문자 제거 —— Base64 알파벳 A-Z a-z 0-9 + / = - _ 만 유지;③패딩 자동 완성 —— 결과 길이를 4의 배수로 만듭니다. 세 옵션은 독립적으로 선택할 수 있으며 필요에 따라 조합할 수 있습니다.
주요 용도:①API 디버깅 —— 타사 인터페이스에서 반환된 Base64를 붙여넣었을 때 오류가 발생할 때 정리;②데이터베이스 가져오기 —— Excel에서 복사할 때 따라온 불필요한 공백 제거;③디코딩 전 전처리 —— atob()의 InvalidCharacterError 방지;④JWT ・ Data URL 정규화 —— 크로스 시스템 전송 차이 처리.
사용 사례
- 디코딩 전 전처리:타사 인터페이스, JWT, 로그에서 가져온 줄바꿈이나 공백이 포함된 Base64를 직접 디코딩 가능한 형태로 정리하여 InvalidCharacterError를 방지합니다.
- Excel / 이메일 붙여넣기 복구:Excel 셀이나 이메일 본문에서 Base64를 복사할 때 섞여 들어온 불필요한 공백, 탭, 줄바꿈 문자를 제거합니다.
- JWT 토큰 정리:줄바꿈이 포함된 JWT 3단 형식 문자열(header.payload.signature)을 한 줄로 정규화하고 불필요한 공백을 제거합니다.
- MIME 첨부파일 처리:이메일 첨부파일 Base64의 76자마다 자동 줄바꿈 형식을 정리하여 후속 디코딩을 편리하게 합니다.
- URL Safe 호환:-와 _ 문자를 유지하여 JWT, URL 경로, 파일명의 Base64가 잘못 삭제되지 않도록 합니다.
- 일괄 정리 전 전처리:base64-format / base64-padding과 함께 사용하여 정리 후 포맷팅하거나 패딩을 완성합니다.
이용 방법
- 노이즈가 포함된 Base64 문자열을 붙여넣거나 입력합니다(줄바꿈, 공백 등 무효 문자 포함 가능).
- 필요에 따라 정리 옵션을 선택합니다:공백 제거, 특수 문자 제거, 패딩 자동 완성(기본적으로 세 항목 모두 켜짐).
- 오른쪽 출력을 확인합니다:정리된 Base64, 문자 카운트, 제거된 문자 수, 디코딩 적법성이 실시간으로 표시됩니다.
- 결과를 클립보드에 복사하거나 후속 처리를 위해 .txt 파일로 다운로드합니다.
주요 기능
- 공백 제거 옵션:\n, \r, \t와 공백을 자동으로 제거하여 이메일 첨부파일, Excel 붙여넣기 등의 시나리오를 처리합니다.
- 특수 문자 제거 옵션:A-Z a-z 0-9 + / = - _ 총 66개의 합법적인 Base64 문자만 유지합니다.
- 패딩 자동 완성:선택 시 결과 길이를 4의 배수로 만들어 길이 오류를 복구합니다.
- 세 가지 옵션은 독립적이며 중복 가능:필요에 따라 선택하여 다양한 오염 상황에 유연하게 대응합니다.
- URL Safe 문자 유지:-와 _를 잘못 삭제하지 않아 JWT / URL 시나리오에서 문자 손실을 방지합니다.
- 실시간 출력 검증:브라우저 atob()로 출력이 디코딩 가능한지 감지하고 상태를 실시간으로 표시합니다.
- 문자 카운트 및 제거 알림:입력/출력 문자 수, 제거된 문자 수, 디코딩 가능 여부를 실시간으로 표시합니다.
- 로컬 브라우저 처리:모든 정리 작업이 로컬에서 완료되며 원본 Base64는 어떤 서버에도 업로드되지 않습니다.
Best Practices
먼저 정리한 후 패딩 도구로 완성하세요
정리는 무효 문자 제거와 선택적 패딩 완성만 수행합니다. Base64에 줄바꿈과 패딩 누락이 동시에 존재하는 경우, 먼저 세 항목 모두를 선택하여 정리한 후 출력 길이가 여전히 4의 배수가 아닌지 관찰하세요. 여전히 패딩 이상이 있으면 전용 패딩 도구를 사용할 수 있습니다.
JWT 토큰 3단 형식은 개별적으로 처리하세요
JWT는 header.payload.signature 세 부분의 Base64URL이 .으로 연결된 전체입니다. 정리 시 세 부분 모두 공백을 제거해야 하지만, 부분 사이에 추가 문자를 삽입하면 서명 검증이 실패합니다. 붙여넣기 전에 .으로 분할하여 부분별로 정리한 후 다시 연결하는 것을 권장합니다.
URL Safe 입력에는 「특수 문자 제거」를 선택하지 마세요
URL Safe Base64는 -와 _로 +와 /를 대체합니다. 이 도구는 기본적으로 이 4개 문자를 유지하지만, 수동으로 더 엄격한 문자 화이트리스트(+/만 허용)를 설정하면 URL Safe 입력이 손상됩니다. 문자 집합이 불확실한 경우 「특수 문자 제거」를 끄고 「공백 제거」만 유지하세요.
정리 후에도 오류가 발생하면 → 인코딩과 BOM을 확인하세요
정리 후에도 atob()가 여전히 InvalidCharacterError를 발생시키면 UTF-8 BOM(EF BB BF)이나 UTF-16 바이트 순서 잔류일 수 있습니다. 이 도구의 「공백 제거」 옵션은 BOM을 대상으로 하지 않으므로, 브라우저 콘솔에서 TextDecoder로 UTF-8로 다시 디코딩한 후 재정리하는 것을 권장합니다.
BOM 출처 식별:Windows에서 저장한 txt
Base64가 Windows의 「메모장」에서 UTF-8로 저장된 것이라면 처음 3바이트(EF BB BF)가 BOM입니다. 공백과 줄바꿈을 정리해도 atob가 여전히 인식에 실패할 수 있습니다. 처리 방법:VS Code나 PowerShell로 BOM 없는 UTF-8 형식으로 다시 저장하세요.
교육과 문서 시연 시 정리 전후 비교를 보여주세요
Base64 정리는 교육에서 흔한 어려운 점입니다. 문서 작성 시 정리 전과 정리 후의 Base64를 함께 첨부하고 문자 수와 디코딩 가능 상태 비교를 추가하여 독자가 각 옵션의 역할을 직관적으로 이해하도록 하는 것을 권장합니다.
자주 묻는 질문
Base64 정리가 원본 바이트를 변경하나요?
아닙니다. 정리는 무효 문자(공백, 줄바꿈, 비Base64 문자)만 제거할 뿐 중간의 합법적인 문자를 수정하지 않습니다. 공백과 불법 문자만 제거한다면 정리 전후의 바이트 내용은 완전히 동일합니다. 「패딩 자동 완성」을 선택한 경우에도 끝에 =만 추가할 뿐 원본 바이트에 영향을 주지 않습니다.
세 가지 정리 옵션의 차이점은 무엇인가요?
공백 제거:\s \n \r \t(공백, 줄바꿈, 캐리지 리턴, 탭)를 제거합니다. 특수 문자 제거:A-Z a-z 0-9 + / = - _ 총 66개의 Base64 합법 문자만 유지합니다. 패딩 자동 완성:끝에 =를 추가하여 길이를 4의 배수로 만듭니다. 세 옵션은 독립적이며 조합 가능합니다.
왜 atob()가 InvalidCharacterError를 발생시키나요?
흔한 원인:①한글, 유니코드 이모지 또는 기타 비ASCII 문자 포함;②줄바꿈이나 공백 포함(Excel 복사, 이메일 붙여넣기의 흔한 경우);③Base64URL 문자(- / _)혼용;④길이가 4의 배수가 아님. 이 도구의 정리는 처음 3개 문제를 해결할 수 있으며, 패딩 완성 도구는 4번째 문제를 해결할 수 있습니다.
정리가 패딩을 삭제하나요?
아닙니다. =는 Base64의 합법적인 문자이며, 이 도구의 「특수 문자 제거」 옵션은 =를 명시적으로 유지합니다. 패딩을 삭제하려면 전용 패딩 도구(base64-padding)에서 「패딩 제거」 모드로 전환하여 사용하세요.
줄바꿈이 포함된 경우 어떻게 정리하나요?
기본적으로 「공백 제거」를 선택하면 처리됩니다. 줄바꿈 문자(\n / \r\n)와 탭, 공백이 모두 제거됩니다. 줄바꿈을 유지해야 하는 경우(MIME 이메일 첨부파일 형식)에는 「공백 제거」 옵션을 끄세요.
이 도구는 UTF-8 BOM을 처리할 수 있나요?
BOM(EF BB BF)은 유니코드 문자 U+FEFF입니다. 이 도구의 「공백 제거」는 정규식 \s \n \r \t를 사용하며 U+FEFF를 포함하지 않으므로 BOM이 잔류할 수 있습니다. BOM으로 인한 InvalidCharacterError가 발생하면 코드나 브라우저 콘솔에서 TextDecoder로 BOM을 먼저 제거하는 것을 권장합니다.
URL Safe와 표준 Base64 문자가 서로 변환되나요?
아닙니다. 이 도구의 「특수 문자 제거」 옵션은 + / - _ 네 가지 문자를 모두 유지하며, 노이즈 제거만 수행하고 능동적으로 변환하지 않습니다. URL Safe ↔ 표준 문자 변환이 필요한 경우 전용 Base64URL 도구(base64-url-safe)를 사용하세요.
내용이 서버에 업로드되나요?
아닙니다. 모든 정리 로직은 브라우저 로컬에서 실행되며, 원본 Base64 문자열은 기기를 떠나지 않습니다. 민감한 데이터(자격 증명, 비밀 키, 토큰)를 처리해도 안심하고 사용할 수 있습니다.
여러 단의 Base64를 한 번에 정리할 수 있나요?
이 도구는 단일 단 정리 인터페이스입니다. 여러 단의 Base64를 정리해야 하는 경우 이 도구의 로직을 순환 호출하거나 해당하는 명령줄 도구(예: base64 명령)를 사용하는 것을 권장합니다. 일괄 인코딩/디코딩이 필요한 경우 base64-batch-encode / base64-batch-decode를 사용하세요.
문제 해결
정리 후에도 atob가 여전히 오류를 발생시킵니다
길이 문제(4의 배수가 아님)이거나 BOM / 인코딩 잔류일 수 있습니다. 먼저 「패딩 자동 완성」이 선택되었는지 확인하고, 여전히 오류가 발생하면 브라우저 콘솔에서 TextDecoder로 UTF-8로 다시 디코딩하여 BOM을 제거한 후 재정리하세요.
정리 후 길이가 변경되었지만 디코딩이 여전히 실패합니다
원본 내용이 표준 Base64가 아니라 Base32 / Base58 / Base85일 수 있습니다. 원본 데이터의 인코딩 형식을 확인하고 해당 도구로 전환하세요. 또한 atob 전에 btoa로 원래 문자열을 다시 인코딩할 수 있는지 테스트해 볼 수도 있습니다.
정리 후 문자가 매우 적어졌습니다
「특수 문자 제거」 옵션이 너무 엄격하여 + / - _까지 제거했을 가능성이 높습니다. 문자 화이트리스트를 잘못 껐는지 확인하세요; 이 도구는 기본적으로 66개의 Base64 합법 문자를 모두 유지합니다. 입력이 URL Safe인 경우 「특수 문자 제거」를 끄면 됩니다.
붙여넣기 후 아무 출력도 없습니다
입력이 완전히 공백 문자(공백 / 줄바꿈 / 탭만 포함)일 수 있습니다. 이 도구의 「공백 제거」 옵션은 모두 제거한 후 빈 문자열을 남깁니다. 원본 입력에 Base64 문자(A-Z a-z 0-9 + / =)가 하나 이상 포함되어 있는지 확인하세요.
용어집
- UTF-8 BOM
- 바이트 순서 표시. Windows 시스템이 UTF-8 텍스트를 저장할 때 추가하는 3바이트 접두사(0xEF 0xBB 0xBF)로, Base64 디코더가 첫 문자를 잘못된 바이트로 인식하게 만듭니다.
- URL Safe Base64
- RFC 4648 §5에서 정의한 Base64 URL 안전 변형으로, +와 /를 -와 _로 대체합니다. 이 도구의 「특수 문자 제거」 옵션은 이 4개 문자를 유지하여 잘못된 삭제를 방지합니다.
- 줄바꿈 문자
- \r\n(Windows)과 \n(Unix / macOS). 이메일 첨부파일의 MIME Base64는 보통 76자마다 줄바꿈되므로 정리 시 제거해야 합니다.
- 유효 Base64 문자
- 표준 Base64 문자 집합은 A-Z, a-z, 0-9, +, /, =(패딩)에 URL Safe 변형의 -, _를 더한 총 66개의 합법적인 문자입니다.
- InvalidCharacterError
- 브라우저 atob()가 발생시키는 디코딩 오류. Base64 문자열이 합법적인 문자표 외의 문자(한글, 공백, 특수 기호 등)를 포함할 때 트리거됩니다.
Base64 문자 집합과 유지 규칙
이 도구의 「특수 문자 제거」 옵션이 유지하는 합법적인 문자표입니다.
| 문자 유형 | 문자 | 유지 규칙 |
|---|---|---|
문자 | A-Z, a-z | 52 문자, 반드시 유지 |
숫자 | 0-9 | 10 문자, 반드시 유지 |
표준 Base64 기호 | + / | 2 문자, 반드시 유지 |
URL Safe 기호 | - _ | 2 문자, URLSafe 시나리오에서 반드시 유지 |
패딩 | = | 끝 패딩, 반드시 유지 |
공백 | 공백, \n, \r, \t | 「공백 제거」 옵션으로 제거 |
기타 | 한글 / 이모지 / BOM 등 | 「특수 문자 제거」 옵션으로 제거 |
5가지 Base64 흔한 오염 출처
Base64 문자열에 무효 내용이 어떻게 섞여 들어오는지 파악합니다.
| 오염 출처 | 섞여 들어오는 내용 | 권장 옵션 |
|---|---|---|
이메일 첨부파일 | \r\n 매 76자마다 | 공백 제거 |
Excel / 데이터베이스 붙여넣기 | 앞뒤 공백 / 탭 | 공백 제거 |
Windows txt 파일 | UTF-8 BOM (EF BB BF) | 특수 문자 제거 + 수동 BOM 제거 |
URL / 파일명 | + / 문자 충돌 | URLSafe 유지(base64-url-safe로 변환) |
로그 / trace 출력 | 디버깅 접두사 / 접미사 | 특수 문자 제거 |
3가지 정리 옵션 비교
세 옵션은 독립적이며 중복 가능하고, 필요에 따라 조합하여 사용합니다.
| 옵션 | 동작 | 주요 시나리오 |
|---|---|---|
공백 제거 | \s \n \r \t 제거 | 이메일 / Excel / 로그 |
특수 문자 제거 | Base64 알파벳만 유지 | 한글 / 이모지 / BOM 혼입 |
패딩 자동 완성 | 끝에 =를 추가하여 4배수로 | 길이가 4의 배수가 아님 |
Authoritative References
- 텍스트 비교
- 바이너리 변환
- 시저 암호
- 모스 부호
- 16진수 변환
- 비디오를 Base64로 변환
- Base64를 동영상으로 변환
- 이미지를 Base64로 변환
- Base64 이미지 변환
- 텍스트를 Base64로 변환
- Base64 텍스트로 변환
- 파일 해시 검증
- File to Base64
- Base64 파일로 변환
- 오디오 → Base64
- Base64를 오디오로 변환
- AES 암호화 및 복호화
- DES 암호화/복호화
- Base32 인코더 디코더
- Base58 인코딩 및 디코딩
- Base64 인코딩
- Base64 디코드
- Base64 비교
- Base64 분할
- Base64 여러 줄 병합
- Base64 형식화
- Base64 형식 검사
- Base64 일괄 인코딩
- Base64 일괄 디코딩
- Base64 정리
- Base64 패딩 처리
- Base64 길이 통계
- Base64 16진수로 변환
- Base64 DataURL 변환
- Base64-Hex 양방향 변환
- Base85 인코딩/디코딩
- HMAC 생성 및 검증
- PBKDF2 키 파생
- MD5 해시값
- SHA-256 해시
- SHA1 해시
- SHA512 해시
- JWT 도구
- HTML 엔티티 인코딩/디코딩
- Unicode 이스케이프
- URL 인코딩
- URL Safe Base64
- MIME Base64
- Java 난독화
- JS 난독화
- PHP 난독화
- Python 난독화