Basic Auth 디코더

username:password와 Base64 인코딩 Authorization 헤더 간의 변환을 즉시 수행하세요. 100% 클라이언트 사이드 — 자격 증명이 기기를 떠나지 않습니다.

100% 클라이언트 사이드 — 데이터가 기기를 떠나지 않습니다

Paste a Basic Auth header or Base64 token to decode

이 도구가 안전한 이유

데이터는 기기를 떠나지 않습니다 — 모든 처리가 브라우저에서 실행됩니다.

서버 업로드 없음. 다른 도구들은 파일을 서버로 전송합니다. 저희는 그렇지 않습니다.
콘텐츠 추적 없음. 변환하는 어떤 내용도 확인, 저장 또는 기록하지 않습니다.
오프라인에서도 작동. 한 번 로드되면 인터넷 연결 없이도 도구가 작동합니다.

코드 예제

프로젝트에 바로 사용할 수 있는 코드 스니펫입니다.

JavaScript
// Encode credentials to Basic Auth header
function encodeBasicAuth(username: string, password: string): string {
  const token = btoa(`${username}:${password}`);
  return `Basic ${token}`;
}

// Decode Basic Auth header
function decodeBasicAuth(header: string) {
  // Strip "Basic " prefix
  const b64 = header.replace(/^Basic\s+/i, "");
  const decoded = atob(b64);
  const [username, ...passwordParts] = decoded.split(":");
  return {
    username,
    password: passwordParts.join(":")
  };
}

console.log(encodeBasicAuth("admin", "pass123"));
// Basic YWRtaW46cGFzczEyMw==

// Use with fetch API
const headers = new Headers();
headers.set("Authorization",
  encodeBasicAuth("admin", "pass123"));
const res = await fetch("https://api.example.com", { headers });

자주 묻는 질문

아래에서 검색하거나 가장 일반적인 질문을 둘러보세요.

HTTP Basic Auth는 `username:password` 형식의 자격 증명을 Base64 문자열로 인코딩하고 Authorization 헤더에 'Basic ' 접두사를 붙여 전송합니다. 예를 들어, 'Aladdin:OpenSesame'은 'QWxhZGRpbjpPcGVuU2VzYW1l'이 됩니다. 이 도구는 해당 헤더 값을 디코딩하고 인코딩합니다.
HTTPS를 사용할 때만 안전합니다. Base64 인코딩은 암호화가 아니며 즉시 되돌릴 수 있는 텍스트 표현일 뿐입니다. 헤더를 가로채는 사람은 누구나 디코딩할 수 있습니다. Basic Auth 자격 증명을 전송할 때는 항상 HTTPS를 사용하고, 프로덕션 애플리케이션에는 OAuth나 API 키와 같은 더 안전한 대안을 고려하세요.
일반적으로 브라우저 개발자 도구(네트워크 탭), 웹 서버 로그, API 문서 또는 curl 명령 예제에서 Basic Auth 헤더를 볼 수 있습니다. 이 도구를 역방향으로 사용할 수도 있습니다: 사용자 이름과 비밀번호를 입력하면 API 호출에 필요한 헤더 문자열을 얻을 수 있습니다.
아니요. 모든 인코딩과 디코딩은 브라우저에서 클라이언트 사이드로 처리됩니다. 입력한 자격 증명은 어떤 서버에도 전송되지 않으므로 실제 자격 증명에 안전하게 사용할 수 있습니다. 그렇긴 하지만, 아무 사이트에 민감한 자격 증명을 붙여넣지 마세요. 이 도구는 모든 것을 로컬에서 처리합니다.
물론입니다. Authorization 헤더의 'Basic ' 뒤에 있는 값을 붙여넣으면 디코딩된 사용자 이름과 비밀번호를 볼 수 있습니다. 결과가 예상과 일치하지 않으면 헤더가 생성되거나 전송된 방식에 문제가 있는 것입니다.