アプリの署名に用いる証明書について

621 views
Skip to first unread message

yos-mas

unread,
Feb 13, 2012, 8:48:07 AM2/13/12
to 日本Androidの会
はじめまして、yos-masと申します。

アプリの署名に関して質問があります。

Androidアプリは自己証明書で署名して公開できますが、
理想的には公的機関が発行した証明書のほうがいいのかなと考えています。

しかし、証明書を発行する機関をいくつか調べてみたのですが、
Androidアプリの署名に使えるような証明書を
発行しているところが見つかりませんでした。

マーケットに公開するには2033年10月22日以降に
有効期限が切れる証明書が必要になりますが、
だいたい公的機関が発行するものは
期限が1年ぐらいのものばかりでした。

そこで質問なのですが、
Androidアプリに使える証明書を発行しているような機関は存在するのでしょうか?
また、もしないとしたら、マーケットのアプリは
みんな自己証明書で署名していることになるのでしょうか?

どなたか、ご存じの方がいらっしゃいましたら、ご教授願います。

Makoto Yamazaki

unread,
Feb 13, 2012, 4:11:32 PM2/13/12
to android-g...@googlegroups.com
zaki です。

> Androidアプリに使える証明書を発行しているような機関は存在するのでしょうか?

ないと思います。現状ではあっても意味が無いからです。
なぜなら端末やマーケット側で、信頼できる機関が発行した証明書で署名されていることを
チェックするということが行われていないからです。

http://developer.android.com/guide/publishing/app-signing.html

の最初に以下のように書かれています。
The Android system uses the certificate as a means of identifying the
author of an application
and establishing trust relationships between applications.
簡単に訳すと「Androidシステムはアプリケーションの作者の識別とアプリケーション間の
信頼関係の確立のために署名を使います」です。
CAによる署名のほうが記述内容を信頼できますが、現状のAndroidマーケットではアプリの作者の
情報として証明書の内容が表示されているわけではなく信頼できる情報が書かれていることに
意味がありません。
証明書による署名はアプリのバージョンアップの際に同一の作者からのものであることの確認や、
特定のアプリに特権を与えるためにしか利用されていないので同じ秘密鍵で署名されている
ことさえ確認できれば十分なのです。

その先に以下のように書かれています。
「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.」
「証明書はCAによって署名されている必要はありません。Androidアプリケーションが自己署名の
証明書を使うことは問題ないし普通そうする」


> また、もしないとしたら、マーケットのアプリは
> みんな自己証明書で署名していることになるのでしょうか?

というわけで自己署名の証明書で署名します。
--
YAMAZAKI Makoto

Nikolay Elenkov

unread,
Feb 13, 2012, 10:28:10 PM2/13/12
to android-g...@googlegroups.com
2012/2/14 Makoto Yamazaki <makot...@gmail.com>:

> zaki です。
>
>> Androidアプリに使える証明書を発行しているような機関は存在するのでしょうか?
>
> ないと思います。現状ではあっても意味が無いからです。
> なぜなら端末やマーケット側で、信頼できる機関が発行した証明書で署名されていることを
> チェックするということが行われていないからです。
>

あとは、 有効期間が25年以上の証明書を発行してくれる
CAは存在しないからです。現在のCA証明書は25-30年
程度の有効期間で発行されていて、それを上回る期間
のエンド・エンティティ(ユーザ)証明書の発行は基本的に
しません。

yos-mas

unread,
Feb 13, 2012, 10:49:18 PM2/13/12
to 日本Androidの会
zaki様、Nikolay Elenkov様

ご教授ありがとうございました。
やっぱり自己署名の証明書を使っているのですね。

企業の名義で公開されているアプリの署名が
どうなっているのか気になっていたのですが、
すっきりしました。

ありがとうございました。

yos-mas
Reply all
Reply to author
Forward
0 new messages