自作アプリを配布するにあたって、SmartScreenの警告画面が鬱陶しくなったので、コードサイン証明書を個人でも取得できるところを探してみました。その結果、他のブログで紹介されていたCertumを選ぶことにしました。
Certumの証明書は、カードリーダを接続して使うタイプと、クラウド型のタイプがあるようです。私はポーランドからカードリーダが届くまで待てなかったので、クラウド型を選択しました。Open Source Code Signing in the Cloudという商品です。
まずは購入します。このとき使ったメールアドレスを後々使っていくことになるので気をつけます。
購入するとメールが届きます。リンクを開いて証明書の作成を開始します。SHA256しか対応していませんでした。LocalityはTokyoでOKでした。
さらにメールが来ます。次の項目が必要と書いてありました。
- 身分証明書の両面スキャン(パスポートの顔写真のページと表紙で通した)
- 公共料金の明細のスキャン(要、英文住所記載。ゆうちょ銀行の残高明細で通した)
- OSSプロジェクトのURL(著作権のところにフルネームが入っている必要がある)
以上を用意したら、ccp@certum.plにZIPファイルで送りつけます。営業時間内なら数十分で処理されます。
さらにメールが届きます。ここから先は24時間以内にやらないといけないそうです。まず1通目、証明書のダウンロードページへのリンクがありますので、ダウンロードします。次の1通のメールに書かれている6桁のシークレットを控えたら、さらにもう1通のメールのリンクを開きます。すると、QRコードが出てきます。
ここで、SimplySignという名前のコードジェネレータをスマホにインストールするのですが、iPhoneかiPadが必要になります。なぜなら、Android版は日本向けに配信していないからです。SimplySignのiOS版をインストールして、先ほどのQRコードを読み込みます。すると、コードジェネレータとして機能するようになります。
さらに、Windows上でもWindows版のSimplySign (proCertum SmartSign)というソフトをインストールします。インストール後、メールアドレスと、コードジェネレータの吐き出すコードを入力すると、セットアップが完了となります。
signtool sign /n "Open Source Developer, Keiichi Tabata" /tr http://time.certum.pl/ /fd sha256 suika.exe
Windows上でSimplySign (proCertum SmartSign)にログインしている間だけ、秘密鍵を所有していて、サインできるという仕組みのようです。
コードジェネレータの端末が壊れたら、オペレータと英語でやりとりしないと復旧できないと思います。つらつらと書いてきましたが、結構オペレータと英語でやりとりしました。
さて、自作アプリがどれくらいダウンロードされたらSmartScreenの警告が消えるか、後日追記しようと思います。