多くの注目が.NETコアに集まる中,本来の.NETフレームワークも開発が続けられている。先日プレビュー版がリリースされたバージョン4.6.2での主な注目点は,セキュリティとWinForms/WPF関連の機能にある。
ClickOnce
Windows FormsあるいはWPFベースのアプリケーションを配布する場合,多くの企業がまず採用を検討するのはClickOnceだ。app store登場よりはるか前に設計されたClickOnceは,URLを通じてアプリケーションを簡単に配布することができる。app store経由で配布されるプログラムとは違い,ClickOnceアプリケーションは新たなバージョンのリリースに合わせて,自分自身でアップデートを行なうことが可能だ。サーバ側で簡単な対応作業をすれば,提供するバージョンを個人ベースで正確にコントロールすることもできる。
ClickOnceアプリケーションは企業ユーザにとって不可欠であるため,当然のことながらセキュリティは主要な関心事である。MicrosoftによるTLS標準の採用が遅々として進まないことに,運用チームがフラストレーションを感じている理由もここにある。TLS 1.1は2006年に,TLS 1.2は2008年にリリースされたが,これらの標準を.NETのClickOnceがサポートするのは,今回が最初のバージョンになる。
暗号化
まず最初に上げられるのは,新規格のサポートだ。発表資料によると:
.NET Framework 4.6.2には,FIPS 186-2の1024bitという制限を越えるキーを持つ,DSA(Digital Signature Algorithm) X.509証明書のサポートが追加されています。
より大きなFIPS 186-3のキーサイズのサポートに加えて,.NET Framework 4.6.2では,SHA-2ファミリのハッシュアルゴリズム(SHA256, SHA384, SHA512)によるシグネチャ計算も可能です。FIPS 186-3のサポートは,新しいDSACngクラスによって提供されます。
“永続化された共通鍵をソフトウェアないしハードウェアデバイス上に”格納するため,MicrosoftではCNG(Cryptgraphy API: Next Generation)をWindows 7から提供している。ここでも.NETは遅れを取っていて,今回のアップデートがそれをサポートする最初のバージョンになる。
次に上げるのはSignatedXmlだ。その名前が示すようにSignedXmlは,W3CのXML Digital Signature標準を実装したものである。.NET 4.6.2では新たに,“RSA-SHA256, RSA-SHA384, RSA-SHA512 PKCS#1シグネチャメソッド,およびSHA256, SHA384, SHA512リファレンスダイジェストアルゴリズム”がSignedXmlでサポートされる。
WPF
Windows 10上で動作する場合,WPFスタイラス/タッチサポートを無効にすると,ソフトキーボード(あるいはオンスクリーンキーボード)が必要に応じて自動的に表示ないし非表示されるようになった。これまで完成度の低かったWindowsのスタイラスサポートを改善する上で,これは大きな一歩だ。(歴史メモ: Windowsは2002年のWindows XP Tablet PC Edtionの時代から,基本的なスタイラスのサポートを用意していた。)
この数年間でMicrosoftが実現した前進としてはもうひとつ,高DPI問題を認識したことがある。この問題は,これまで一般的に使用されてきたものに比較して,極端にDPIの高いモニタ上でアプリケーションを実施する時に発生する。他の問題とも相まって,イメージが収縮したり,あるいはぼやけたりする場合があるのだ。
これに関連して,マルチモニタサポートの問題もある。アプリケーションがひとつのモニタに対して高DPIの問題を解決したとしても,ユーザがDPI設定の異なる複数のモニタを所有している場合があり得る。これまではネイティブコードで対応してきたが,Microsoftは今回,モニタ毎のDPIをサポート可能なアプリケーションを.NETで直接サポートするようにした。
詳しい情報やプレビュー版のダウロードは,.NETフレームワーク4.6.2プレビューの発表記事を見てほしい。
この記事を評価
- 編集者評
- 編集長対応