httpsの証明書について 第01回 19年12月 / 最終更新:2019.12.12

初めまして、の方も多いかと思いますので、簡単にまずは自己紹介をしていきたいと思います。
古庄道明、ともうします。Web上ですと gallu というハンドルを使う事が多いです。

普段は、実際に現場でエンジニアをやったりPMをやったり専門学校で教鞭をとったりしている事が多いのですが。
このたび、ご縁がありましてこちらに記事を書かせて頂くことになりました。よろしくお願いいたします。

ここでは、どちらかというと「技術そのものを学ぶ」というよりは「その技術をどうやって使っていくか」に少し焦点をあてつつ、ただそれだけだと片手落ちになりやすそうなので、所々「難しくない程度の技術的な基礎のお話」を差し込みながら、お話を展開していければ、と思います。

さて早速ですが。
2019年の10月に、Google Chromeチームが些か気になる発表をしてきました。
端的には「Chromeにおいて、1Pageの中にhttpとhttpsが混在しているページは、デフォルトで"ブロックする"ように挙動を変えていく」とのお話でした。
2018年から「httpのサイトは警告を表示する」といった動きがあるなど、全体的に「httpを段階的に無くしていって、出来るだけhttpsに統一させていきたい」という雰囲気が、より強く見て取れる流れなのではないかなぁ、と思っています。
また、GoogleのSEO対策的にも「優遇される」事が、これは大分と前に発表をされています。

こういった事から、コンテンツをhttpsにする事は、現状「極めて重要」な問題であろう、と思われます。
そこで、今回はhttpsにかかせない「証明書」について、少し書いていければ、と思います。

まず。証明書ですが、通常どこからか「有償で購入する」ことが多いか、と思うのですが。
実は無料で手に入れる手段が、ないわけでもないです。

1つは、自己署名証明書(通称:オレオレ証明書)というものがありまして。
主に開発現場など「とりあえずhttpsであればよい」程度のところで使われます。
ただ、これを使うと、最近のブラウザでは「大きく警告が出る」などの状態になるので、実質的なセキュリティを含めて、「よくわかっている人たちだけが使う開発環境」以外での使用は、全くおすすめできません。

もう一つ、Let's Encryptというものがありまして、こちらがやはり「無料で証明書を作成する」ことができます。
こちらは、少しだけ技術力が必要になりますが「ちゃんと使える証明書」が手に入るので、初期コストやランニングコストを「技術力でどうにかできる」状態であれば、選択肢としては十分にアリかと思われます。
ただ、有効期限が「三ヶ月(通常は一年が多い)」ので、運用設計をしっかりと意識しておく必要があります。

上述以外ですと、やはり「有償の証明書」になってくることが多いでしょう。
有償の証明書ですが、値段の違いの要因の一つに「認証方式」というものがある、ことを知っておくとよいでしょう。

一番廉価なのが「DV」になります。ドメイン認証、と書かれることが多いかと思います。
これは「emailなどで連絡がつけばOK」といった簡単な認証方式で、そのために「証明書の即日発行」などをやっているところもあるようです。
「お手軽に廉価に」であれば、これがよいでしょう。
上述のLet's EncryptもDVになります。

もう少し堅くなると「OV」というものがあります。実在認証/企業認証、などと書かれていたりします。
証明書には「企業名」を書くところがあるのですが、その企業が「実際に存在していること」を保証する証明書になります。
「企業が法的に存在している事」が保証されるので、ECサイトなどは、最低でもこれくらいの証明書があったほうが「ユーザが安心する」事も多いでしょう。

最後に「EV」というものがあります。そのまま「EV認証」と呼称している事が多いようです。
こちらは、OVの「企業の実在」に加えて、さらに実在証明(証明書に記載されている住所にちゃんとその企業が存在している事)などの厳格な審査の後に発行されます。
このタイプの証明書だと、例えば「ブラウザのアドレスバーが緑になる」など視覚的に「安心感のある」状態になる事もあり、安心安全をアピールする事ができる、という謳い文句で推されている事も多いようです。

このように、必須といわれているhttpsの「証明書」1つをとっても、実はわりといろいろな知識が必要になる事があります。
この辺りを知っていると「妥当、あるいは適切な証明書」を選択したり、提案したりする事が可能になると思うので。その辺りを、頭の片隅にでも入れて置くと、ちょっとした時に便利か、と思います。

それでは、また次回、よろしくお願いいたします。