본문 바로가기
Q&A2023년 12월 7일1분 읽기

코드 난독화(Obfuscation)하는 방법

조
조은서
조회 574댓글 1

JavaScript 코드를 난독화하여 보호하는 방법이 있나요?

댓글 1

김김영삼2년 전

JavaScript 난독화 도구:

# 1. javascript-obfuscator (가장 인기)
npm install javascript-obfuscator
npx javascript-obfuscator input.js --output output.js \n --compact true \n --control-flow-flattening true \n --string-array true

# 2. Webpack 플러그인
// webpack.config.js
const ObfuscatorPlugin = require("webpack-obfuscator");
plugins: [new ObfuscatorPlugin({ rotateStringArray: true })]

주의:

  • 난독화는 리버싱을 어렵게 할 뿐, 불가능하게 만들지는 않음
  • 성능 저하 가능 (control flow flattening 사용 시)
  • 디버깅이 불가능해지므로 프로덕션 빌드에만 적용
  • 핵심 로직은 서버에 두는 것이 최선
Ctrl+Enter로 등록