Co To jest plik keystore Androida i do czego jest używany?

To jest ogólne pytanie, ale szczególnie interesuje mnie jego użycie dla Androida. Co to jest plik keystore i do czego służy?

Czy wiele aplikacji na Androida może używać tego samego klucza do podpisywania swojej aplikacji (co dokładnie oznacza "podpisywanie" an .apk?), a jakie są tego konsekwencje (jeśli w ogóle)?

Author: jww, 2011-07-27

4 answers

Odpowiedź jest taka, że plik keystore ma uwierzytelnić się przed każdym, kto pyta. Nie ogranicza się tylko do podpisywania .pliki apk, można go używać do przechowywania osobistych certyfikatów, podpisywać dane do przesłania i całą gamę uwierzytelniania.

Jeśli chodzi o to, co robisz z nim dla Androida i prawdopodobnie to, czego szukasz, ponieważ wspomniałeś o podpisywaniu apk, Jest to twój certyfikat. Znakujesz swoją aplikację swoimi poświadczeniami. Możesz znakować wiele aplikacji z tym samym kluczem w rzeczywistości zaleca się używanie jednego certyfikatu do oznaczania wielu aplikacji, które piszesz. Łatwiej jest śledzić, jakie aplikacje należą do ciebie.

Nie jestem pewien, co masz na myśli przez implikacje. Przypuszczam, że oznacza to, że nikt oprócz posiadacza certyfikatu nie może zaktualizować aplikacji. Oznacza to, że jeśli zwolnisz go do dziczy, utracisz cert użyty do podpisania aplikacji, nie możesz zwolnić aktualizacji, więc zachowaj to cert bezpieczny i zabezpieczony w razie potrzeby.

Ale oprócz podpisywania APK, aby zwolnić do dziczy, można go użyć do uwierzytelnienia urządzenia do serwera przez SSL, jeśli chcesz, (również związane z Androidem) wśród innych funkcji.

 113
Author: Otra,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-06-06 18:26:32

Android Market wymaga podpisywania wszystkich aplikacji publikowanych za pomocą certyfikatu przy użyciu mechanizmu klucza publicznego/prywatnego(certyfikat jest podpisany kluczem prywatnym). Zapewnia to warstwę zabezpieczeń, która uniemożliwia między innymi zdalnym atakującym wysyłanie złośliwych aktualizacji do aplikacji na rynek (wszystkie aktualizacje muszą być podpisane tym samym kluczem).

W tym celu należy skontaktować się z Inspektorem Ochrony Danych Osobowych.]}

Ogólnie rzecz biorąc, zalecane strategia dla wszystkich programistów polega na podpisywaniu wszystkich aplikacji tym samym certyfikatem przez cały oczekiwany okres eksploatacji aplikacji. Istnieje kilka powodów, dla których powinieneś to zrobić...

Używanie tego samego klucza ma kilka zalet - jedną z nich jest to, że łatwiej jest współdzielić dane między aplikacjami podpisanymi tym samym kluczem. Innym jest to, że pozwala wielu aplikacjom podpisanym tym samym kluczem uruchamiać się w tym samym procesie, dzięki czemu programista może budować bardziej" modułowe " aplikacje.

 17
Author: Alexander Lucas,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-07-27 19:12:58

Więcej informacji na temat procesu podpisywania można znaleźć w oficjalnej dokumentacji Androida tutaj: http://developer.android.com/guide/publishing/app-signing.html

Tak, możesz podpisać kilka aplikacji za pomocą tego samego klucza. Ale musisz pamiętać o jednej ważnej rzeczy : jeśli publikujesz aplikację w Sklepie Play, musisz podpisać ją certyfikatem non debug. A jeśli pewnego dnia chcesz opublikować aktualizację dla tej aplikacji, klucz używany do podpisywania apk musi być to samo. W przeciwnym razie nie będziesz mógł opublikować swojej aktualizacji.

 10
Author: Raphaël Titol,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-12-28 08:53:40

Cała idea keytool polega na podpisaniu twojego apk unikalnym identyfikatorem wskazującym źródło tego apk. Plik keystore (z tego, co rozumiem) jest używany do debugowania, więc twój apk ma funkcjonalność keytool bez podpisywania apk do produkcji. Tak więc tak, do celów debugowania powinieneś być w stanie podpisać wiele apk za pomocą jednego klucza. Ale zrozum, że po przejściu do produkcji będziesz potrzebował unikalnych keytools jako identyfikatorów dla każdego utworzonego pliku apk.

 -1
Author: Adam Storm,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-06-20 09:01:55