コード署名 【code signing】 コードサイニング
概要
コード署名(code signing)とは、コンピュータプログラムを配布・販売する際に、利用者が発行元の確認や改竄検知ができるように付与されるデジタル署名(電子署名)。「コードサイニング証明書」(code signing certificate)と呼ばれるデジタル証明書を添付する。インターネットでのソフトウェアの流通が盛んになるに連れ、有名なソフトウェアや開発元になりすます偽物や、人気のソフトウェアに悪意のあるプログラム(マルウェア)を同梱して感染・侵入を試みるサイバー攻撃手法などが現れるようになった。
このような脅威に対抗するため、開発者が作成した実行プログラムからデジタル署名を作成し、配布パッケージに同梱するコード署名の仕組みが考案された。利用者は入手したプログラムの署名を検証することで、プログラムが本物であることや、改竄が起きていないことを確認することができる。
署名を検証するには発行者が署名に用いた秘密鍵と対になる公開鍵を安全に入手する必要がある。その配送手段として、実績ある「認証局」(CA:Certificate Authority)などの第三者機関が発行したデジタル証明書(公開鍵証明書)が添付される。コード署名に用いられる証明書のことを「コードサイニング証明書」あるいは「コード署名証明書」という。
(2022.12.21更新)