アフィリエイト広告を利用しています

2018年10月29日

zipファイルへの開発者IDの署名

アプリケーションを配布するときは

アプリケーション(.app)ファイルへの署名だけでなく

配布するdmgファイルへの署名も必要。


だが、dmgではなく zipファイルで配布したいので、署名してみた。


$ codesign -f -vvvv -s "Developer ID Application: Tarou Yamada (8BK3Q29QX3)" Test.zip
Test.zip: signed generic [Test]


dmgは


$ codesign -f -vvvv -s "Developer ID Application: Tarou Yamada (Developer ID)" Test.dmg
Test.dmg: signed []


反応が違っている。次に署名結果を確認してみる。


$ spctl -a -vv /Users/myname/Desktop/Test.zip
/Users/myname/Desktop/Test.zip: rejected (the code is valid but does not seem to be an app)
origin=Developer ID Application: Tarou Yamada (Developer ID)

$ spctl -a -vv /Users/myname/Desktop/Test.dmg
/Users/myname/Desktop/Test.dmg: rejected (the code is valid but does not seem to be an app)
origin=Developer ID Application: Tarou Yamada (Developer ID)


spectlコマンドでは違いはない。別のコマンドでも試す。

zipファイル

$ codesign -d -vvv /Users/ myname/Desktop/Test/Runtime_mac3.zip
Executable=/Users/myname/Desktop/Test.zip
Identifier=Test
Format=generic
CodeDirectory v=20200 size=172 flags=0x0(none) hashes=1+2 location=embedded
Hash type=sha256 size=32
CandidateCDHash sha1=yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy
CandidateCDHash sha256=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Hash choices=sha1,sha256
CDHash=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Signature size=8919
Authority=Developer ID Application: Tarou Yamada (Developer ID)
Authority=Developer ID Certification Authority
Authority=Apple Root CA
Timestamp=2018/10/27 11:52:41
Info.plist=not bound
TeamIdentifier=Developer ID
Sealed Resources=none
Internal requirements count=1 size=172


Dmgファイル

$ codesign -d -vvv /Users/myname/Desktop/Test.dmg
Executable=/Users/myname/Desktop/Test.dmg
Identifier=Test
Format=disk image
CodeDirectory v=20200 size=300 flags=0x0(none) hashes=1+6 location=embedded
Hash type=sha256 size=32
CandidateCDHash sha256=zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
Hash choices=sha256
CDHash=zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
Signature size=8868
Authority=Developer ID Application: Tarou Yamada (Developer ID)
Authority=Developer ID Certification Authority
Authority=Apple Root CA
Timestamp=2018/10/27 12:00:53
Info.plist=not bound
TeamIdentifier=Developer ID
Sealed Resources=none
Internal requirements count=1 size=172


Formatをはじめ、何カ所か異なっている。


zipファイルをWebにアップロードして、

ダウンロードして解凍し、実行すると、

開発者IDが署名されていない場合に表示されるエラーメッセージが表示される。

dmgファイルの場合は、ダウンロードして実行した後、

このエラーメッセージは表示されない。


理由は分からないが、Zipファイルの署名は無理なようだ。









posted by db-engineer at 00:00 | Comment(0) | Mac

この記事へのコメント
コメントを書く

お名前:

メールアドレス:


ホームページアドレス:

コメント:

※ブログオーナーが承認したコメントのみ表示されます。

検索
最新記事
カテゴリーアーカイブ
プロフィール
db-engineerさんの画像
db-engineer
プロフィール
タグクラウド