blogこの広告は、90日以上更新していないブログに表示しています。アプリの署名について調べてみた最近スマートフォン向けの開発をしているのですが、アプリの配布などを行う際のセキュリティの仕組みがよくわからなくてモヤモヤしていました。方はプロビショニングプロファイルやら証明書やらが大量にあり、何をどう管理すればいいのかがよくわかりにくいです。いうわけで、アプリケーションを配布する際の署名やその他のセキュリティの基本的な仕組みを調べたので、それを整理してみました。配布方法までを段階的に書いています。対策なしまずはもっとも簡単な配布方法。署名などの難しいことは一切何もしない方法です。向けのアプリの配布方法です。考察この方法での配布は、USBメモリで直接渡すならともかく、インターネット経由で不特定多数に配布する場合等だとあまり安全とは言えないでしょう。メール配布などであればなりすまし放題です。フィッシング詐欺なども簡単に起こってしまいそうです。基本できないと思います。開発者による署名より安全にアプリを配布する方法として、アプリのファイルに公開鍵/秘密鍵のペアを使って署名を行う事が行われています。開発者自身による署名が無いアプリは受け入れてくれません。アプリに開発者による署名を付加する事により、アップグレードが安全になります。新しいアプリが同じ署名で行われていれば同じ開発者による開発である事が保証できるためです(もちろん秘密鍵はきちんと管理されている必要があります)。何もしないよりはだいぶ安全ですが、開発者による署名だけでは十分ではなさそうです。オリジナルの開発者自身に悪意があった場合、安全を保障する事はできません。マルウェアやスパイウェアを防ぐ助けにはならなそうです。署名だけでは基本的には実行できません。「提供元不明のアプリ」のインスールを許可する設定をする事で実行できるようになります。しない限り実行できません。