- 전체
- Native Apps
- WinJS App
- C# Apps
- XAML
- VB.net
- VisualC.net
- C++
- MFC
- visual studio mobile app dev
- Azure ms cloud service
- Asp.net
- 인공지능 (AI)
- wpf
- UWP
- MAUI
- asp.net
Native Apps [VS2008] 코드 난독화 (Dotfuscator Community Edition 사용)
2017.07.01 19:15
[VS2008] 코드 난독화 (Dotfuscator Community Edition 사용)
개발을 해보다/TIP 2013.01.23 16:53 |
코드 난독화란 어떠한 사용자가 리버스 엔지니어링 기술(디컴파일러 등)을 사용하여 프로그램의 정보를 훔칠 수 있는데 난독화는
해당 프로그램의 소스 파일을 특정한 방법으로 변경하여 리버스 엔지니어링 기술을 적용하지 못하게 하는 기술을 말합니다.
이러한 코드 난독화 기술 중 .Net에서 제공하는 Dotfuscator Community Edition를 처음 사용해보시는 분들을 위한 기본 사용법
에 관해 간략히 설명 드리겠습니다.
우선 난독화를 할 프로젝트를 생성한 후
상단 메뉴의 도구 > Dotfuscator Community Edition (기본, 라이센스마다 이름이 다름) 클릭합니다.
1. '아니요. 등록하지 않습니다.' 를 클릭합니다. (뭐..등록하셔도 상관없습니다. 본인의 의사이니까요ㅎ)

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

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

4. '이름 바꾸기' 탭에서 특정 항목의 난독화를 제외 할 수 있습니다. 제외하고자 또는 공개하고자 하는 부분의 체크 박스를 선택 합니다.
※ 참고: 프로젝트 리소스에 이미지 등이 들어가게되는 경우 아래 이미지의 빨간 부분의 프로퍼티 부분은 난독화를 제외시켜야 오류가 안납니다. (저같은 경우에는 한참을 고생하며 찾았다는...ㄷㄷ)

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
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
댓글 0
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
|---|---|---|---|---|
| 2 | [VisualBasic] Windows 화면 보호기/절전 모드 방지 방법 | 졸리운_곰 | 2020.09.10 | 649 |
| 1 |
C++로 hello world 앱 만들기(Windows 10)
| 가을의곰 | 2017.06.18 | 432 |

