В блоге:

2010-01-10

HTC Hero (Android 1.5): Security

Продолжаю сравнить HTC Hero со знакомыми мне Нокиями S60.
Поговорим на тему безопасности. Одна из причин, по которой я решил уйти с S60.

В принципе, безопасность в S60 и Android организована очень похоже. Требуется подпись приложения и явное указание прав доступа в нем. Но на практике разница есть, и она стала решающей для меня.

В S60 меня постоянно раздражали фокусы вокруг подписей/сертификатов приложений. Как не крутись, но постоянно при установке приходилось сталкиваться в лучшем случае с таким:




Или даже с таким ужасом, увидев который, хотелось бросить телефон в окно:




Форумы наполнены советами по подписям приложений, подмене корневых сертификатов и прочими хакерствами. Я не знаю, почему такая паранойя, но в Андроиде правила подписи, видимо, более демократичные

===
The Android system requires that all installed applications be digitally signed with a certificate whose private key is held by the application's developer. The Android system uses the certificate as a means of identifying the author of an application and establishing trust relationships between applications. The certificate is not used to control which applications the user can install. The certificate does not need to be signed by a certificate authority: it is perfectly allowable, and typical, for Android applications to use self-signed certificates.
...
* If you plan to support upgrades for a single application, you should ensure that your key has a validity period that exceeds the expected lifespan of that application. A validity period of 25 years or more is recommended. When your key's validity period expires, users will no longer be able to seamlessly upgrade to new versions of your application.
...
* If you plan to publish your application(s) on Android Market, the key you use to sign the application(s) must have a validity period ending after 22 October 2033. The Market server enforces this requirement to ensure that users can seamlessly upgrade Market applications when new versions are available.

// Android Dev. Guide. Signing Your Applications
===

Теперь про Capability based security. В этом плане два отличия.

Во-первых, в Андроиде диалог с предупреждением о правах доступа показывается всегда при установке, тогда как в Нокии S60 в зависимости от сертификата. При "белых" сертификатах диалог не показывается (а зря).

Во-вторых, в Андроиде используются более человечные описания прав. Вот типичное описание в S60 (конечно право в этом приложении одно, но жутко расплывчатое, да и другие примерно в таком же стиле):




И другое дело в Андроиде. По крайне мере можно понять о чем речь:



Изображения из альбомов:

0 comments:

Post a Comment

Blog Archive