2023-02-19

人類の大発明、一度も会わずに安全な通信ができる、公開鍵暗号。ネット通販ができるのも公開鍵暗号技術のおかげです。常時SSL(AOSSL)が広まり、ウェブの安全性は徐々に高まってきています。

SSL(TLS)でアクセスするウェブサイトですが、そのウェブサイトが偽装されたものでは困るので、証明書(アクセス先の公開鍵に信頼できる人が電子署名したもの)が必要となります。とはいえ、ドメイン所有者であれば誰でも無料で気軽に取得できる「Let's Encrypt」があるので、ドメイン所有者が自分のアクセスしたい組織のものかの確認は必須です。

ウェブアプリを開発する上で困るのは、SSLでアクセスしないと使えないAPI(位置情報取得や、カメラやマイクの使用など)があること。自己署名証明書、通商オレオレ証明書を作成して、登録することで、localhostをSSL化しましょう。


「tls-test on GitHub」

自己署名証明書を作る方法をまとめました。makeすれば証明書(server.crt)ができます!


Macでは、server.crtをダブルクリック、キーチェインアクセスで証明書タブのlocalhostを開き、信頼で、常に信頼と変更。


Windowsでは証明書管理画面(certmgr.msc)の信頼されたルート証明書にインポート。


無事、localhostにSSLでアクセスできました!開発の幅、広がりますね!

san.txt に、IPアドレスを記述し、作成した証明書を配ることで、外部からのアクセスにも対応できます。公開鍵暗号に基づき偽装不可能なIPアドレスを使うInternet3であれば、別途証明局が必要ないので便利です。

ふくいITエンジニア養成スクールの成果発表会を見学。ITを使った未来とその作り方を紹介してきました。プログラミングが楽しいと言ってくれた福井好きの受講生のみなさん、Code for FUKUIでそのスキル、じゃんじゃん活かしましょう!(→ Code for FUKUI の Slack

links
- Code for FUKUI
- Code for FUKUI の GitHub リポジトリ、現在556コ Code for 最多かも!?

Tweet
クリエイティブ・コモンズ・ライセンス
本ブログの記事や写真は「Creative Commons — CC BY 4.0」の下に提供します。記事内で紹介するプログラムや作品は、それぞれに記載されたライセンスを参照ください。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / 「一日一創」画像 / RSS