2017-01-19 2 views
3

Angular JS 코드를 공개하지 않고 누군가가 해독하려고 시도한 다음 장애물로 만들려면 Obfuscate + Minify하고 싶습니다. 코드가 서버를 실행 중입니다.Angular JS 컨트롤러 코드를 난독 화하는 가장 좋은 해결책은 무엇입니까

참고 : 향후 우리는 httphttps으로 변경할 계획입니다.

내가 꿀꺽, 구글 폐쇄 컴파일러, UglifyJS 등과 jsob 같은 코드를 다운로드하고 혼미 수있는 사용자 많은 도구와 같은 옵션을 많이 보았다

는, 자바 스크립트 등

내가 제안을 필요 당황 몇 가지 질문이 있습니다.

  1. 암호화 이외의 가장 좋은 방법은 무엇입니까?
  2. https로 전환하면 여전히 난독 화가 필요합니다.
  3. 장점과 단점이있는 더 쉽고 편리한 방법은 무엇입니까?
  4. JavaScript obfuscator와 같은 도구를 다운로드하여 사용하는 경우 장단점은 무엇입니까? 우리는 그것을 다시 얻을 수 있습니까, 나는 해독을 의미합니까?
  5. 누군가가 꿀꺽 마심 파일을 조사 할 수 있다면 내 코드를 쉽게 얻을 수 있습니까?
+0

정확하게 코드를보고있는 사람이 분별력을 잃게하려고합니까? 암호 나 개인 키와 같은 중요한 보안 정보가 있습니까? 또는 비즈니스 논리를 숨기려는 것입니까? – haxxxton

+0

그냥 비즈니스 로직을 숨기고 코드를보고있는 사람을 막으려 고합니다. –

답변

7

1 - 실제로 달성하려는 대상에 따라 다릅니다. 비즈니스 로직을 숨기기 위해 코드를 실제로 보호하려면 패배시키기가 너무나 쉬운 축소 또는 난독 화 도구 자체에 의존하는 대신 탄력적 인 솔루션을 찾아야합니다.

2 - Https는 단순히 브라우저와 웹 사이트 간의 통신이 암호화됨을 의미합니다. Https도 해독 할 수 있으므로 다른 보호 메커니즘을 적용하는 것이 타당합니다.

4 - JavaScript Obfuscator 및 다른 여러 도구는 코드를 보호하지 못하기 때문에 간단한 obfuscator이므로 분만에 쉽게 되돌릴 수 있으며 그 이유는 무엇입니까? 어떤 사람들은 클라이언트 측에서 코드를 보호할만한 가치가 없다고 생각합니다. 실제로 간단한 JS 최적화 프로그램을 사용하여 대부분의 원본 코드를 얻을 수 있습니다. ClosureCompiler와 UglifyJS는 정확하게이 다른 접근 방식을 사용합니다. 코드 크기를 줄이고 최적화합니다. 코드 보호 기능을 제공하지 않습니다.

3 - 5 - this blog post from js13kGames competition creator이 제 경우에 매우 유용합니다. 그는 더 적절한 해결책을 제시합니다 - Jscrambler. IMO는 디버깅 방지 및 변조 방지 기능이있는 코드 변환을 결합하여 시도해야합니다. 미리 정의 된 도메인 목록에 코드를 잠 그거나 예를 들어 만료 데모를 제공하도록 만료일을 설정할 수도 있습니다. 어쩌면 Angular를 지원하기 때문에 귀하의 경우에도 적합 할 수 있습니다.

+1

나는 Javascript Obfuscator가 obfuscator 이상인 Jscrambler와 달리 반대로하기 쉽다는 것을 확인합니다. 여러 코드 보호 기술을 사용합니다. – Alex

+0

AngularJS 프로젝트의 난독 화 및 축소를위한 YUI Compressor에 대해 어떻게 생각하세요? –

+2

YUI Compressor는 minifier이며 다른 minifier (closure, uglifyjs 등)와 마찬가지로 파일 크기를 줄이고 코드를 최적화합니다. 그것은 당신이 전혀 보호하는 데 도움이되지 않습니다. 그러나 이것들은 쉽게 알 수 있습니다.그들이 일반적이라면 일반적으로 이해하기 어려운 사람들은 인코딩/cripto를 사용하는 난독 화자입니다. 그들 대부분은 jsfuck, whak.ca 또는 javascript2img를 쉽게 뒤집을 수 있습니다 (http://ooze.ninja/javascript/poisonjs/# 참조). 그들은 더 레크 리 에이션입니다. 결론 : 당신은 항상 자신의 수표를해야합니다. – Alex

관련 문제