かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

pfx を作って appx に署名するまで

いつも忘れてしまうのでメモ。

makecert -r -pe -n "CN=XXXX" -eku 1.3.6.1.5.5.7.3.3 -pe -sv my.pvk my.cer
pvk2pfx -pvk my.pvk -spc my.cer -pfx my.pfx
makeappx.exe pack /d .\dirpath /p appxpath.appx /l
signtool sign /fd SHA256 /a /f .\my.pfx .\appxpath.appx

もしくは makecert を使わずに pfx を作る方法としては以下のような方法があるみたい。

$thumbprint = (New-SelfSignedCertificate -Type Custom -Subject "CN=xxx" -KeyUsage DigitalSignature -FriendlyName xxx -CertStoreLocation "Cert:\LocalMachine\My").Thumbprint
$cert = "Cert:\LocalMachine\My\" + $thumbprint
$pwd = ConvertTo-SecureString -String 12345 -Force -AsPlainText 
Export-PfxCertificate -cert $cert -FilePath c:\my.pfx -Password $pwd

上記 PowerShell でパスワード 12345 の my.pfx が C ドライブ直下に作られる。 これは管理者権限で実行された PowerShell で実行が必要