Introduction

忘備録。
mTLS の検証をしている際、Windows からの Chrome では正しく https で通信できたのに、Safari から閲覧したら

証明書は標準に準拠していません (英語:certificate is not standards compliant))

というエラーが証明書の詳細に表示されてしまった。

certification)

How to resolve?

iOS 13 および macOS 10.15 における信頼済み証明書の要件 に答えがある。

  • RSA 鍵を利用する TLS サーバ証明書および発行元の CA は、鍵長 2048 ビット以上の鍵を用いること
  • TLS サーバ証明書および発行元の CA は、SHA-2 ファミリーのハッシュアルゴリズムを署名アルゴリズムを用いること
  • TLS サーバ証明書は、証明書の SAN (Subject Alternative Name) 拡張領域にサーバの DNS 名を記述すること
  • TLS サーバ証明書には ExtendedKeyUsage (EKU) 拡張領域を必ず含め、ここに id-kp-serverAuth OID を指定すること
  • TLS サーバ証明書の有効期間は 825 日以下であること

自分の場合は、ExtendedKeyUsage が存在しなかったことと有効期限が10年だったことが原因だった。