Ich arbeite in einer Firma, die mehrere Apps produziert, nicht alle diese Anwendungen haben die gleiche Signatur oder mehr wie wir haben mindestens 5-6 Apps Zertifikate vorläufig. Wir haben versucht, einen Mechanismus zu erstellen, bei dem alle Apps des Unternehmens auf dem gleichen Gerät den gleichen Namen haben. Wenn der Benutzer beispielsweise vom Markt App A installiert hat und keine App installiert ist, wird jetzt eine neue ID generiert Er installiert App A, App B sollte die gleiche ID wie App A haben (ID ist nur ein generierter UUID-Typ Nr. 4) usw.Android: validieren Sie die Identität des Absenders Absicht
Wir verwenden derzeit Broadcast und nur Apps mit unserer Erlaubnis können das empfangen Senden und senden Sie die ID mit einer anderen Übertragung (diesmal explizit). Die Übertragung und die Antworten sind mit unserer Erlaubnis mit Signaturstufe geschützt, das ist natürlich nicht hilfreich, da wir mehr als eine Signatur haben.
Ich habe versucht, eine Absicht Broadcast zu schreiben und zu erholen, die eigenen Schutzmechanismus haben kann, der nicht auf nur eine Signatur begrenzt ist, aber mehrere, das Problem ist, dass Dinge wie Binder.getSenderUID() für Broadcasts nicht funktioniert und ich bekomme meine eigene UID. es sieht so aus, als hätte ich keine Möglichkeit, die Identität meines Snders zu bekommen, es sei denn, er selbst schreibt seine ID in die Absicht, was NICHT etwas ist, dem ich vertrauen kann, da es leicht gefälscht werden kann. Die Verwendung von Verschlüsselung erfordert, dass die Apps mit einem Schlüssel auf sie kommen, der nicht noch einmal gesichert ist. Die Überprüfung auf einen Server dauert zu lange und auf dem Handy ist kein Erfolg garantiert, da nicht 100% sicher sind.
Jeder hat eine Idee, wie man eine validate \ sichere Nachricht von einer App zur anderen bekommen kann (alle meine Apps können aber unterschiedliche Signaturen haben).
dies ist ein Hack, bnut das ist verdammt gut, ich nehme auch der Service vor Ort sein muss, aber soweit ich weiß, BR sollten Nachrichten aus dem Dienst bekommen und senden Sie es zurück oder senden Sie es zu einer Aktivität mit einer Absicht, es ist nicht dazu bestimmt, an einen Service zu binden ... so bricht diese Methode wirklich die Idee eines BR ... – codeScriber