連載:wolfの仲間たち 第七回:UDPを安全に

IoTの世界で軽量かつ高いスループットを実現するインターネットの標準プロトコルとして、UDP(User Datagram Protocol)が現在でも広く利用されています。UDPは1回に送信できるパケットサイズに制限があったり、パケットの喪失や送受信の順序関係が保証されないなどの不安定さがある反面、TCPのような「接続」を必要とせず、単純にパケットごとに宛先を指定して送受信することができるので、アプリケーションからの利用方法が単純で利便性の高いプロトコルとして重宝されてきました。ただし、UDPはセキュリティに関して配慮がされていないことが最近の課題となっています。

このUDPに対してTLSとほぼ同様の安全な通信を実現するのがDTLS(Datagram Transport Layer Security) です。DTLSでは、通信の秘匿性はもちろん、通信の相手方の認証やメッセージの改ざんに関してもTLSとほぼ同等の安全性を実現します。このため、TLSと同様のハンドシェークを安全、確実に行うためにやや重たい作りとなってしまう欠点はありますが、UDPと同様にコネクションをほぼ意識せずに利用することができる利点があります。

wolfSSLではオプション製品として、最新のDTLS1.2に準拠した機能を提供しています。wolfSSLのDTLSでは単なるパケットの安全な送受信だけではなく、同時に複数の相手方との通信を実現するパケットのマルチキャスト機能、セッションのエクスポート、インポート機能といった周辺機能を含めて充実した機能を提供しています。

wolfSSLのDTLS機能はオープンソース版で簡単に評価することができます(商用版の場合、オプションライセンスが必要となりますのでご了承ください)。ビルドの際に”–enable-dtls” もしくは”#define WOLFSSL_DTLS” を指定してDTLS機能を有効化します。

wolfSSLのDTLSサポートについてさらに詳しい情報は info@wolfssl.jp 宛お問い合わせください。

連載:wolfの仲間たち
第一回:全員集合
第二回:安全なファームウェア更新を支えるwolfBoot
第三回:安全なリモートコンソールwolfSSH
第四回:ハードウェアレベルのセキュリティを支えるwolfTPMとセキュアエレメント
第五回:最強のペア誕生 – cURLとwolfSSL
第六回:最近のwolfMQTT