일단 스크립트를 하나 추가 한다음에
아래 처럼 암호화 하고 싶은 클래스를 하나 추가 합니다.
(Unity3D용이기 때문에 MonoBehaviour를 상속 하는 형식으로 제작해도 됩니다.)
그 다음 Openssl을 이용해서 암호화 해 줍니다.
Mac에서 Openssl 설치 하는 방법은 아래 주소로 가면 있습니다.
http://lhh3520.tistory.com/19
아까 만든 클래스 파일(.cs)을 적당한 곳에 옮긴다음
터미널로 들어가서 아래 명령어를 입력 합니다.
명령어를 입력하면
bash: mcs: command not found
에러가 날때가 있는데 이부분 해결방법은 아래 주소에..
http://lhh3520.tistory.com/20
참조
http://docs.unity3d.com/Manual/UsingDLL.html
그다음 폴더로 가보면 아래처럼 .dll 파일이 생깁니다.
그 다음
아래 명령어를 입력해서 Rc2 암호화를 진행 합니다.
입력하면 아래 처럼
1번에 암호를 입력하라고 합니다.
(적당한 암호로 입력합니다)
입력을 하면
2번에 key 값과 iv 값을 알려 주는데
정상적으로 처리 된다면
폴더에 .bin 파일이 생깁니다.
그다음
아래 명령어를 입력해서 Base64 방식으로 한번 더 암호화 해줍니다.
.txt 파일이 생기고
그다음 위에서 생성된 .txt 파일과 .dll 파일을 같이 유니티 프로젝트에 넣어 줍니다.
(.dll 파일을 같이 넣지 않으면 iOS 에서는 AOT 때문에 실행이 안됩니다..)
그다음 유니티로 돌아가서 아까 제작한 파일에 정보들을 지워 줍니다.
(그냥 아예 .cs 파일을 지워도 상관 없습니다.)
그 다음 유니티상에서
복호화 하는 코드를 아래처럼 추가해 줍니다.
string 값을 읽어 올 수 있습니다.
테스트 해본 결과 위에서 mcs로 만든 dll 파일 하나를 가지고
iOS, Android 모두 정상적으로 동작하는걸 확인 했습니다.
출저 & 참조
http://unitystudy.net/bbs/board.php?bo_table=newwriting&wr_id=356&page=0
'Programming > Unity3D' 카테고리의 다른 글
[Unity3D] 2DToolkit 스프라이트 애니메이션 추가하는 방법 (0) | 2015.03.29 |
---|---|
[Unity3D] 2DToolkit 이미지를 콜렉션으로 묶는 방법 (0) | 2015.03.29 |
[Unity3D] Mac에서 에셋번들 암호화, 복호화 하는 방법 (0) | 2015.03.27 |
[Unity3D] iOS 푸시 등록하고 토큰 얻어오는 방법 (0) | 2015.03.27 |
[Unity3D] Mac에서 안드로이드 Plugin 만들기 # 1 (0) | 2015.03.27 |