MF Blogs 便利ツール
緑色に光る南京錠のアイコンと、セキュリティを表す回路パターンのイラスト

記事

GitHub、HTTPSでのSHA-1を完全無効化——予告から5カ月、予定通り2026年9月15日にサンセット完了

GitHub公式Changelogによれば、github.comおよびパートナーCDNのHTTPS/TLS通信でSHA-1アルゴリズムのサポートが完全に無効化されました。古いブラウザやGitクライアントを使っている場合は接続エラーが起きる可能性があります。

0:00 0:00

GitHubは公式Changelogで、予告していた通り2026年9月15日をもってHTTPS/TLS通信におけるSHA-1のサポートを完全に無効化したと発表しました。対象はgithub.com本体に加え、GitHub Enterprise CloudおよびGitHub Enterprise Cloud with Data Residencyを含むパートナーCDN群です。GitHub Enterprise Serverはこの変更の影響を受けないとしています。

何が変わったのか

今回の変更は、2026年4月20日に公開された予告記事で示されていたスケジュール通りに実施されました。GitHubはまず2026年7月14日の00:00〜18:00 UTCにかけて「ブラウンアウト」と呼ばれる一時的なSHA-1無効化を実施し、影響を受ける利用者に対応を促す期間を設けていました。そして今回、9月15日付でSHA-1が完全に無効化されたことで、ブラウザ、GitHub APIを利用するソフトウェア、そしてHTTPS経由でpush/pullを行うGitクライアントのすべてが、より新しいTLSアルゴリズムのサポートを前提とすることになります。

SHA-1のHTTPS廃止スケジュールを示すタイムライン。2026年7月14日のブラウンアウトと2026年9月15日の完全無効化を、開始点の2026年4月20日の予告から緑色の南京錠アイコンまでの流れで表した図解

影響を受ける範囲とエラーの見分け方

影響が及ぶのはgithub.com、GitHub Enterprise Cloud、GitHub Enterprise Cloud with Data Residencyの3つで、これらへのHTTPS/TLS接続すべてが対象です。古いバージョンのブラウザやOS、更新されていないTLSバックエンドを使ったGitクライアントでは、これまで通っていた接続が失敗するようになる可能性があります。一方でGitHub Enterprise Server(オンプレミス版)は今回のポリシー変更の対象外で、これまで通り利用を続けられます。自社の開発環境がクラウド版かオンプレミス版かを確認しておくことが、影響範囲を見極める第一歩になります。

開発者が今すぐ確認すべきこと

GitHubは接続エラーを未然に防ぐための具体的な確認手順を案内しています。まずブラウザについては、最新版にアップデートしておけば新しいTLSアルゴリズムに対応できるとしています。実際に対応状況を確認したい場合は、SHA-1がすでに無効化されているgithub.devにアクセスし、接続エラーなく表示されるかどうかをチェックする方法が紹介されています。API連携を行っている場合は、利用しているフレームワークやライブラリが最新であることを確認する必要があります。

  • ブラウザ: 最新版へのアップデート、github.devへのアクセスで動作確認
  • API連携: 利用中のHTTPクライアントライブラリ・フレームワークを最新化
  • Gitクライアント: 最新版のgitと、OpenSSLなど最新のTLSバックエンドを利用
  • 対象範囲: github.com、GitHub Enterprise Cloud、Data Residency版が対象。Enterprise Serverは対象外

Gitクライアントについては、特にLinux環境でOpenSSLなどのTLSバックエンドを利用している場合、OSとgit本体の両方を最新の状態に保つ必要があるとGitHubは注意を促しています。

セキュリティ強化としての位置づけ

SHA-1は衝突耐性の弱さが以前から指摘されてきたハッシュアルゴリズムで、TLSやHTTPSの世界では既により安全な代替アルゴリズムへの移行が業界全体で進んでいます。GitHubが半年近い予告期間とブラウンアウトによる段階的な移行プロセスを経て今回の完全無効化に踏み切ったことは、大規模なプラットフォームが後方互換性とセキュリティ強化のバランスを取りながら古い暗号方式を排除していく典型的な進め方だといえます。

社内のCI/CDパイプラインや自動化スクリプトが古いHTTPSライブラリ経由でGitHub APIやgit操作を行っている場合、今回の変更で気づかないうちに接続エラーが発生している可能性があります。心当たりがあるチームは、ログを確認しつつ早めにクライアント側のアップデートを済ませておくのが得策です。