2014-01-27 4 views
0

나는 약간의 지불 작업을 수행하는 웹 서비스를 가지고 있으므로 매우 중요합니다. 물론 그것은없이 호출 할 수없는 비밀 키가 있습니다.안드로이드에서 보안 키 설정하기

조만간 .apk 파일이 디 컴파일되며 코드를 읽을 수 있다고 가정합니다. 이제 다른 서비스를 호출하여 해당 키를 받기로 결정한 경우 해당 서비스의 URL은 내 코드에 저장되지만 방금 안전하지 않으며 숨길 수 없다고 말했습니다.

그런 상황에서 가장 좋은 방법은 무엇입니까?

+2

비밀 키를 응용 프로그램에 넣는 이유는 무엇입니까? 아마도 서버 구성 요소가있을 것입니다. 그곳에서 비밀을 사용하고 앱에 공개 키를 놓습니다. –

+0

@Mike W : 내가 너를 이해할 수 있다면 내 앱에 공개 키를 두는 것이 위험하지 않니? 가능한 해커가 내 서비스를 호출하고 내 콘텐츠를 훔치는 것을 허용하지 않아도됩니다. –

+1

나는 당신의 용어 사용에 대한 질문을 오해했습니다. 이것이 문제라면 사용자가 어떻게 든 인증하도록해야합니다. 어쩌면 한 번 로그인을 강제하고 그 당시에는 각 사용자에게 고유 한 키를 제공 할 수도 있습니다. 고유 키가 발행되고 장치에 저장되면 로그인 할 필요가 없습니다. 주기적으로 프로세스를 반복하고 키를 장치 고유 ID (IMEI 번호, 아마도?) –

답변

1

저는 보안 전문가가 아니지만, oAuth이 좋은 선택 일 것이라고 생각합니다. Google과 같은 사이트에서는 인증을 위해 사이트를 사용하므로 안전합니다. 사용자는 자신의 자격 증명을 사용하여 로그인해야하며 응용 프로그램은 oAuth 토큰과 비밀을 받아 API 호출을합니다.

그런 경우 응용 프로그램을 디 컴파일하면 해커가 도움이되지 않습니다. 사용자의 자격 증명이 필요하기 때문입니다.

서버 측과 클라이언트 측 모두에서 변경해야하지만,이 경우 보안이 중요하기 때문에 문제는 아니라고 생각합니다.

+0

감사합니다. 내 응용 프로그램에 로그인이 없으면 어떻게해야합니까? –

+1

그럴 경우 안전하지 않습니다. 누구나 [http://www.wireshark.org/download.html] (Wireshark)를 사용하여 URL 호출을 추적하고 똑같은 전화를 걸 수 있습니다. 알고리즘을 사용하여 요청에 값을 추가하는 것은 몇 초 만 유효하지만 좀 더 어렵게 만들 수는 있지만 '안전'과는 거리가 .니 다. – fifarunnerr

관련 문제