[VS2008] 코드 난독화 (Dotfuscator Community Edition 사용)

개발을 해보다/TIP 2013.01.23 16:53 |

코드 난독화란 어떠한 사용자가 리버스 엔지니어링 기술(디컴파일러 등)을 사용하여 프로그램의 정보를 훔칠 수 있는데 난독화는

 

해당 프로그램의 소스 파일을 특정한 방법으로 변경하여 리버스 엔지니어링 기술을 적용하지 못하게 하는 기술을 말합니다.

 

이러한 코드 난독화 기술 중 .Net에서 제공하는 Dotfuscator Community Edition를 처음 사용해보시는 분들을 위한 기본 사용법

 

에 관해 간략히 설명 드리겠습니다.

 

우선 난독화를 할 프로젝트를 생성한 후

 

상단 메뉴의 도구 > Dotfuscator Community Edition (기본, 라이센스마다 이름이 다름) 클릭합니다.

 

1. '아니요. 등록하지 않습니다.' 를 클릭합니다. (뭐..등록하셔도 상관없습니다. 본인의 의사이니까요ㅎ)

 

 

 

2. '새 프로젝트 만들기' 를 선택 후 확인을 클릭합니다.

 

 

3. '입력' 탭에서 빨간 표시의 아이콘을 클릭하여 난독화 하고자하는 파일(exe, dll)을 선택합니다.

  

 

4. '이름 바꾸기' 탭에서 특정 항목의 난독화를 제외 할 수 있습니다. 제외하고자 또는 공개하고자 하는 부분의 체크 박스를 선택 합니다.

 

※ 참고: 프로젝트 리소스에 이미지 등이 들어가게되는 경우 아래 이미지의 빨간 부분의 프로퍼티 부분은 난독화를 제외시켜야 오류가 안납니다. (저같은 경우에는 한참을 고생하며 찾았다는...ㄷㄷ)

 

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

 

5. '빌드' 탭에서 경로를 설정 한 후 '빌드'를 클릭합니다.

 

 

6. 프로젝트가 변경되었다며, 프로젝트 저장 경로를 지정하라며 메세지가 나오며, 해당 경로 설정 후 다음과 같이 빌드가 완료되며, 지정 경로에 난독화가 된 파일들을 확인 할 수 있다.

 

 

7.  '출력' 탭에서는 각 항목별 난독화가 이루어진 결과를 확인 할 수 있습니다.

 

 

8. 다음  .Net Reflector 이라는 디컴파일러를 이용하여 결과를 확인해 보았습니다.

 

해당 변수 명, 함수 명이 a,b,c 등등 으로 변경 되어있는 것을 확인 할 수 있습니다.

 

해당 디컴파일러는 http://shop.reflector.net/download 에서 받으 실 수 있습니다. 유료구요..저는 14일 계정으로 받아서 테스트 해

 

았습니다.

 

 

 

※참고: 포트란, c++, c# 의 세가지 dll로 이루어진 프로젝트에서 c# 으로 이루어진 dll 만 난독화하여 실행해 본 결과 아무 이상없이 잘 실행되었습니다. 참고하세요 ^^

 

 

 

[출처] http://colyfafa.tistory.com/entry/VS2008-%EC%BD%94%EB%93%9C-%EB%82%9C%EB%8F%85%ED%99%94-Dotfuscator-Community-Edition-%EC%82%AC%EC%9A%A9

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED