2018年6月30日の期限が過ぎたため、各サイトは「TLS 1.0/1.1」を無効化しました。この影響で、一部のアプリでエラーが発生する状況となっています。
しかし.NET Frameworkで作成されていれば再び動作させられる可能性があります。
何故?「TLS 1.0/1.1」の無効化
セキュリティを伴う通信を行うための「https://」は一般的には「SSL」と言われていますが、実際には「SSL」プロトコルの後継バージョンである「TLS」プロトコルで通信が行われているようです。
- Transport Layer Security(Wikipedia)
どのようなプロトコルが使われているかは、IEの場合はメニューの「ファイル」「プロパティ」を見ると「接続」という項目で見ることができます。
その「TLS」ですが、各サイトが「TLS 1.0/1.1」を無効化する対応をはじめています。何故、このようなことをやっているのかというと、PCI SSCというクレジットカード取り引き情報を保護するための管理団体が、2018年6月30日までに「TLS 1.1」以上でサービスを提供するように通達しているためです。
- SSL/TLS 1.0 はいつまでに無効化しなければならないか?(NTT DATA)
- Date Change for Migrating from SSL and Early TLS(PCI SSC)
また、こちらの情報では「SSL 3.0」の脆弱性の文書(CVE-2014-3566)で「TLS 1.0/1.1」の利用は非推奨とされているとのことです。
- SSL/TLSが抱える脆弱性の問題(GlobalSign)
そのため「TLS 1.0」に合わせて「TLS 1.1」も無効化しているようです。
「TLS 1.0/1.1」無効化の影響
各サイトでは「TLS 1.2」に対応したソフトを使うように案内していますが、最近のパソコンに搭載されているインターネットブラウザーは、どれも「TLS 1.2」に対応しているので問題は無いと思っていました。
ところが、Windows 10 バージョン1803がリリースされたことでクリーンインストールを行い、各ソフトを設定していたところWindows Live Writerでエラーが発生しました。記事をアップするための認証が通らないのです。
XSERVERは問題無いのですが、wpXだけが通りませんのでパソコン側の問題ではありません。wpXで最近変わったことと言えば「TLS 1.0/1.1」の無効化です。
そこで検索してみたところ、こちらの情報が見つかりました。
記事によるとWindows Live Writerは.NET Framework 3.5で作られているそうでフレームワークが使うプロトコルを「TLS 1.2」に指定すれば動作するとのことです。
.NET Frameworkを使ったソフトをTLS 1.2対応にする方法
元の情報はTechNetで公開されています。
- .NET Framework で TLS1.1 および 1.2 を有効化する方法(Microsoft)
.NET Framework 4.5以上
TechNetの記事によると、更新プログラムを適用していれば、既定値が「SSL 3.0/TLS 1.0」から「TLS 1.0/1.1/1.2」に変更になるそうです。
また、サーバー側で使える最も暗号化強度の高いものが使われるため「TLS 1.0/1.1」が無効化されていれば「TLS 1.2」が使われるとのことです。
そのため.NET Framework 4.5以上の場合は、最新の更新プログラムを適用していれば問題になることは無いはずです。
.NET Framework 3.5
.NET Framework 3.5は「TLS 1.1/1.2」に対応していなかったそうですが、現状のバージョンは対応しているそうです。
Windows 10では.NET Framework 3.5は無効化されていますが、有効化することでインストールされる.NET Framework 3.5が「TLS 1.2」に対応していることは確認しています。
ただし、デフォルトは「SSL 3.0/TLS 1.0」のままですので、レジストリの追加が必要です。
「SEの雑記」で紹介されていた方法はPwerShellを使ってコマンドでレジストリーに書き込む方法ですが、こちらではレジストリーファイルを使用します。
まず、こちらをダウンロードしてください。
.NET Framework 3.5の既定のTLSバージョンを1.2に変更するレジストリーファイル
ダウンロードした「dot-NET-Framework35-TLS12.zip」のプロパティでブロックを解除した後、展開します。
展開された「dot-NET-Framework35-TLS12.reg」をダブルクリックします。
「ユーザーアカウント制御」が表示されますので「はい」をクリックして進めます。
レジストリーに登録するかを確認するダイアログが表示されるので「はい」をクリックします。
登録されたので「OK」をクリックして閉じます。
既定で使用する暗号化を「SSL 3.0/TLS 1.0」から「TLS 1.2」に変更するレジストリー値を書き込んだだけですので、何も変化はありません。
もしも使えなくなったソフトがあれば、起動し直すことで使えるようになるはずです。
Windows Live Writer
Windows Live Writerは既に配布が終了しています。
Open Live Writerに引き継がれたためなのですが、このOpen Live Writerはバグが多く、ハッキリ言って使い物になりません。
特にプロトコルを記さない「url="//abc.net/abc.jpg"」などの記述を使うとタイムアウトまで操作できなくなります。これはAmazonの広告などで用いられる表記なので困ります。
この記述のメリットはページがhttpでアクセスされていればhttpとして、httpsでアクセスされていればhttpsとして処理されることです。
この問題に気付いた時には配布が終了しておりオフラインインストーラーというパッケージの存在も知りませんでした。
諦めていたのですが、インターネットアーカイブに残されていることを知りました。
こちらから日本語版をダウンロードできます。
利用するには「コントロールパネル」の「プログラム」「Windowsの機能の有効化または無効化」の「.NET Framework 3.5」を有効化してから、上記レジストリーの登録を行ってください。
内部的にIEを使っていますのでIEは無効化しないようにしてください。
まとめ
新しいソフトは.NET Framework 4.5以上を使っているので問題無いはずですが、古いソフトを使っているようなら試してみてください。
この設定をしても悪影響はありませんので、念のために実施しておけば問題に遭遇することも無いでしょう。
コメント