나는 Android/iOS 용 phonegap-app에서 작업하고 있습니다.
내가 올바르게 이해하면 누군가가 phonegap-app 패키지를 열면 html/js/css를 자신의 phonegap-app에 복사 할 수 있습니다. 그게 내가 더 어렵게 만들고 싶습니다.
내 앱은 인터넷에 연결되어 있지 않아도 작동하므로 계속 사용하고 싶습니다.
제가 생각할 수있는 최선의 해결책은 원시 Java/ObjectiveC 변수에 (40) HTML 파일을 저장하고 javascript와 사용자 지정 Phonegap 플러그인을 사용하여 검색하는 것입니다. 이렇게하면 앱을 만들 때 HTML도 암호화됩니다.
이것이 가능한 솔루션입니까 아니면 시간 낭비입니까?전화 갭 복사 방지
답변
사람들의 액세스를 보호 할만한 가치가있는 것 (예 : 인증 세부 정보)이 있으면 컴파일 된 코드에 넣는 것이 안전하지 않습니다.
그렇지 않으면 HTML, Javascript 및 CSS에 무엇이 있습니까? 코드 자체가 될 수는 없습니다. 코드를 복사 할 수 없다면 그냥 볼 수 있습니다. "오, 좋은 생각입니다."코드를 보지 않고 아이디어를 복사하기 때문입니다. 좋은 아이디어는 코드 라인보다 더 가치가 있으며, 이런 식으로 숨길 수는 없습니다. 이 경우, 당신은 인생을 더 힘들게 만들었습니다.
Kerri Shotts가 PhoneGap Google 그룹에서 가장 좋아하는 답변 중 하나입니다. 나는 그녀가 내 생각을 캡슐화했기 때문에 그것을 좋아하지만, 내가 할 수있는 것보다 더 설득력있게 행동한다 :
정말로. 예, 당신은 그것을 난처하게 할 수는 있지만 그것을 해독 할 수 있습니다. 으로 암호화 할 수는 있지만 키가 어딘가에 코드에 있음을 의미합니다. 은 암호를 해독 할 수 있음을 의미합니다. 내가 장치와 당신의 작은 조각을 가지고 있으면, 나는 그들과 함께 내가 원하는 것을 할 수 있습니다.
기억 : 기기와 OS가 사용자의 사용자로부터 앱을 보호 할 수 없습니다. 앱에서 사용자를 보호 할 수 있습니다. 완전히 보안 측면이 다릅니다.
기본 앱에 주로 해당됩니다. 나에게 Java 또는 ObjC 프로그램을 제공하면 쉽게 수행 할 수 있습니다. 또한 대부분의 플랫폼에서 모든 그래픽 자산은 정규 파일이므로 쉽게 복사 할 수 있습니다.
그래서 많은 해적판/복제 응용 프로그램이 있습니다. 그리고 궁극적으로 소프트웨어에 대한 비트가있는 한 당신이 할 수있는 일이 없습니다. 당신이 할 수있는 일은 사용자에게 "힘들게"하는 것입니다. 그리고 그 "경도"의 레벨은 사용자에게 "힘들게"만들기 위해 필요한 노력에 비례합니다 ( 지수가 아닌 경우). 즉, 사용자의 90 %가 시스템을 크랙 할 수 없도록 만드는 경우 은 앱을 강화하는 데 한 가지 어려움이 있습니다. 그 다음에 을 만들면 99 %가 깨질 수 없으므로 프로그래밍에서 상당한 도약이 필요합니다. 어려움.
물론 암호화 된 www/폴더를 읽는 코드 코드로 직접 암호 해독 루틴을 만들 수 있습니다. 그렇게하려면 앞으로 가십시오. (해커가 여전히 주위를 돌아 다닐 수 있습니다./항상/방법이 있습니다.) Am 나는 그렇게까지 갈 의향이 있습니까? 아니.내 시간이나 노력, 특히 나를 놀라게하는 데 관심이있는 사람으로부터 나를 보호하지 못할 때, 가치가 없습니다. [또 다른 문제 : PG가이 작업을 수행해야합니까? 아니. 보안 전문가와 대부분의 개발자 만 그렇지 않습니다.]
보안에 대한 비관적 인 견해를 취하고 있습니까? 예. 비트를 배포하면 보안 상 손실됩니다. 따라서 앱이 매우 안전해야하는 경우 해당 작업은 매우 안전한 서버 어딘가에서 꺼져 있어야합니다. 을 가진 매우 안전한 방화벽 어딘가에 선이 있는지 확인하십시오. 도 앱이이 서버에 인증하는 방법을 추측 할 수 있습니다.
대부분의 응용 프로그램은 www/폴더가 으로 표시되고 노출된다는 사실을 걱정하지 않으려 고 노력할 가치가 있다고 생각하지 않기 때문에이 모든 것을 간단히 말합니다. 99.99 %의 앱에 대해서는 입니다. 건강 관리 (및 민감한 로그인 정보) 또는 정부 또는 은행 (실제 은행 포함)에서 일하는 경우가 아니면 에 대해 걱정할 필요가 없습니다. PG를 사용해야합니까? 또한 모바일 장치를 사용해야 할 필요가 있습니까? 더 나은 내 의견은 아주 작은 클라이언트 코드가 있으며, 본질적으로 블랙 박스입니다 webapp 수 있습니다.
감사합니다. Simon. 나는 걱정을 멈추는 법을 배워야한다고 생각한다 (그리고 폭탄을 좋아한다). – Kanarie
이 응용 프로그램에서, 나는 html이 가장 중요한 부분이라고 생각합니다. 질문, 정답 및 피드백이 HTML 내부에 저장되는 일련의 언어 연습으로, 기능이 매우 간단합니다. 그리고 당신 말이 맞아요. 제 인생을 더 열심히 만들고 싶지 않을 것입니다. 이런 종류의 문제에 익숙하지 않으므로 번거로운 번거 로움없이 무엇인가 할 수 있을지 궁금합니다. 당신은 내 솔루션에서 '번거 로움'이 자본 H로 쓰여질 것이라고 제안하는 것 같습니다 .... 걱정하지 마시고, 저는 궁극적 인 보안 솔루션을 찾고 있지 않습니다. – Kanarie
"ABC"대신 ""\ u0041 \ u0042 \ u0043 "또는 \"A B C "'으로 자바에서 정답을 갖고있는 것처럼 보일 수도 있습니다. 이는 코드에 정통한 사람을 1 분 내에 만 속도를 늦추지 만 코드에 익숙하지 않은 어린이가 "책 뒤쪽에"몰래 들어가려고하는 것을 막을 수 있습니다. –
감사합니다 존, 누군가가 올바른 답을 얻지 못하게하는 데 관심이 있다면 좋을 것 같습니다. 그러나 나의 주요 관심사는 다른 누군가가 단지 html/js/css-content를 다른 phonegap-app에 복사하는 것을 어렵게하는 방법을 찾는 것이다. 내가 읽었을수록, 최선의 해결책은 아무것도하지 않거나 모두 나가서 데이터베이스를 설정하고 거기에서 암호화 된 데이터를로드하는 것입니다. – Kanarie