안드로이드 디컴파일로 소스 확인이 가능하면 보안은 어떻게하죠?
안드로이드 디컴파일로 소스를 확인 가능하다고한다면
API 에 사용되는 인증키에 대해서는 사용할 수 없는건가요?
아니면 이를 노출하지 못하도록 할 수 있는 방안이 있나요?
API 키를 절대 찾을 수 없게 하는 방법은 없습니다.
코드를 볼 수 없더라도 그냥 메모리 덤프만 떠 봐도 쉽게 알 수도 있고...
디컴파일로 얻은 소스코드도 원본 소스코드와는 많은 차이가 있을 수 있습니다.
컴파일이 항상 가역적 연산인 건 아니니까요. 컴파일 시점에 이루어지는 최적화라거나...보안 관련된 부분은 (실제로는 오픈소스가 아니더라도) 오픈소스라고 생각하고 개발해야 한다는 말이 있습니다.
아무리 난독화 하고 변형하고 암호화 해도, 어차피 실행은 될 수 있어야 하고, 언젠가는 해커가 알 수 있습니다.
절대 못 찾게는 못 하고, 최대한 해커가 빨리 포기하게 만드는 방법을 씁니다. 난독화만 돼 있어도 읽기 힘들죠.
그리고, 해커가 알아내도 쓸 수 없게 만들 수 있다면 더 좋고요! (알아도 뭘 어떻게 할 수가 없는 시스템을!)알아내기 어렵게 만들고(난독화), 알아내도 쓸 데 없게 하는 게(예: OTP) 최선입니다.
안녕하세요
말씀하신데로 안드로이드에서 동작되는 앱들은
디컴파일로 소스를 확인할 수 있는데요,
이걸 막을수있는 방법은 없습니다
물론 안드로이드라고 해서 소스를 확인할수 있는게 아니라
윈도우,리눅스,안드로이드로 개발된 많은 프로그램들은 디버깅하거나 또는 소스로 디컴파일하는것들이
워낙 많이 나와서, 공개된다고 가정을 하고 프로그램을 작성을 하셔야 합니다
그래서 웹서버 또는 서버단과 통신되는 부분이 있다면
서버단에서 클라이언트가 전달해주는 정보가 정상적인지 비정상적인지 여부를 어떻게 판단할지
내부 지침을 만들어 방어전략을 구축하는수밖에 없습니다
만약에 만약에 방어할수있는 방법을 만든다고 가정을 하면?
아마도 마이크로소프트사보다도 돈을 더 많이 버실거라 생각이 됩니다^^