JavaScript 난독화기
소스 코드를 보호하기 위해 JavaScript 코드를 난독화
입력
난독화된 출력
JavaScript 난독화기란?
JavaScript 난독화기는 JavaScript를 읽기 어렵고 역분석하기 어렵게 변환합니다. 변수 이름이 변형되고, 문자열이 인코딩되며, 제어 흐름이 난독화됩니다. 클라이언트 측 코드를 보호하는 데 사용합니다. ECMAScript 사양이 언어를 정의합니다.
이 도구는 브라우저에서 완전히 실행됩니다. 서버로 전송되는 데이터가 없습니다. JS를 붙여넣거나 파일을 업로드하면 난독화된 출력을 얻을 수 있습니다. 난독화 해제에는 JavaScript 난독화 해제기를, 축소만 하려면 JavaScript 축소기를, 포맷팅에는 JavaScript 포매터를 사용하세요.
이 도구 사용 방법
붙여넣기 또는 업로드
왼쪽 패널에 JavaScript를 붙여넣거나 .js 또는 .txt 파일을 업로드하세요. 샘플을 사용하면 예제 코드를 불러올 수 있습니다. 지우기를 사용하면 초기화됩니다.
난독화된 출력 확인
오른쪽 패널에 난독화된 코드가 표시됩니다. 로직은 유지되지만 코드를 읽고 역분석하기 어려워집니다.
복사 또는 다운로드
복사 또는 다운로드를 사용하여 난독화된 코드를 가져오세요. 배포 전에 테스트하세요. 난독화는 성능에 영향을 줄 수 있습니다.
JavaScript 난독화기 예제
JavaScript 난독화 예제입니다 (변수 이름이 변형됩니다).
예제: MSISDN 유효성 검사
입력 (읽기 가능):
난독화된 출력 (이름 변형):
JavaScript 난독화기가 도움이 되는 경우
클라이언트 측 로직을 보호하거나, 알고리즘을 숨기거나, 무분별한 복사를 방지해야 할 때 난독화가 어려움을 한 층 더합니다. 보안은 아닙니다; 결심한 사용자는 여전히 역분석할 수 있습니다. 크기 축소에는 JavaScript 축소기를 사용하세요. webpack과 rollup 같은 빌드 도구는 난독화된 코드를 번들링할 수 있습니다. 디버깅에는 소스 맵을 참조하세요.
자주 묻는 질문
제 데이터는 안전한가요?
네. 난독화는 브라우저에서 완전히 실행됩니다. 서버로 전송되는 데이터가 없습니다.
난독화로 코드가 망가지나요?
올바른 난독화는 동작을 유지합니다. 출력을 테스트하세요. 일부 엣지 케이스나 eval 기반 코드는 영향을 받을 수 있습니다.
난독화된 코드를 되돌릴 수 있나요?
네. 난독화는 어렵게 만들 뿐, 불가능하게 하지는 않습니다. JavaScript 난독화 해제기를 사용하여 얼마나 복원할 수 있는지 확인하세요.
난독화기 vs 축소기?
축소기는 코드를 줄입니다. 난독화기는 읽기 어렵게 만듭니다. 난독화는 파일 크기를 늘리는 경우가 많습니다.
성능은 어떻게 되나요?
강한 난독화는 실행 속도를 느리게 할 수 있습니다. 프로덕션에는 적당한 설정을 사용하고 배포 전에 테스트하세요.