SAN証明書のDNS名としてIPを指定できますか?
SAN証明書のDNS名としてIPを指定できますか?
まず、ドット付きクワッド(IPv4)または16オクテット(IPv6)を保持するように設計された特定のiPAddress代替名形式があることを理解する必要があります。証明書にIPアドレスを平準化したい場合は、おそらくそれが正しい方法です。 RFC 5280セクション4.2.1.6 を参照してください。ブラウザ/クライアントの互換性は異なります。
2番目に、はい、SANのdNSNameフィールドでドット付きクワッドを指定することは正当です。 RFC 5280を引用すると、
RFC1034のセクション3.5 で指定され、 RFC112 のセクション2.1で変更されているように、名前は「優先名構文」に含まれている必要があります。
後者は、ソフトウェアが「ホスト名」フィールドでIPアドレスを検出することを許容する必要があることを示唆しています。
ユーザーがインターネットホストのIDを入力するときは常に、(1)ホストドメイン名または(2)IPアドレスをドット付き10進数( "#。#。#。#")形式で入力できるようにする必要があります。ホストは、ドメインネームシステムで検索する前に、ドットで区切られた10進数の文字列を構文的にチェックする必要があります(SHOULD)。
繰り返しますが、これらは単なるRFCなので、マイレージはクライアントによって異なります。
RFC 5280によると、次の点にも注意してください。
サブジェクトの別名は確実に公開鍵にバインドされていると見なされるため、サブジェクトの別名のすべての部分はCAによって検証される必要があります。
したがって、たとえばプライベートRFC 1918 IPアドレス(10.1.2.3)を使用してリクエストをパブリックCAに送信する場合、そのリクエストへの署名は拒否する必要があります。また、CAがIPアドレスの所有権を検証する場合-IPアドレスの「所有権」が通常割り当てられたユーザーと異なる場合-興味深いことが起こります。
SAN証明書のDNS名としてIPを指定できますか?
RFC 528 によると、dNSNameはIA5Stringであり、理論的にはIPv4またはIPv6アドレスの文字列を文字列としてその中に置くことができます。また、SANでのIPアドレスの適切なタイプがiPAddressであるため、次の理由で必要になる場合もあります。
したがって、実際には、IPアドレスをiPAddressとdNSNameの両方として指定することで、最高の互換性を実現できます。
はい、技術的には、ドメイン名と共にサブジェクトの別名(SAN)に含めることができます。証明書を使用するシステムは、情報を正しく利用する場合としない場合があります(アプリケーションによって異なります)。
したがって、はい、あなたが望むことをすることは合法ですが、それはうまくいかないかもしれません。
はい、それはそのように使用できますが、それは一般的にプライベート秘密鍵インフラストラクチャに対してのみ意味があります。その場合、そのIPアドレスで直接使用されるプライベートサーバーを使用できるため、SANフィールドで使用するのが理にかなっています。
ただし、AFAIKは、パブリックPKIおよびパブリックサーバーではほとんど使用されません(使用される場合)。