UNiDで解決しようとしている課題とは?
セキュアなIoTサービスの実現には、開発段階からエッジからクラウドに跨る複数のセキュリティ要素を考慮する必要があります。例えば、開発段階ではセキュリティ機能を備えたチップやデバイスを選定し、製品ごとに組込みソフトウェアを開発する必要があります。さらに、製造段階におけるキーインジェクションや証明書管理を行うためのインフラ構築、運用段階における現場のデバイス群のセキュリティアップデートやファームウェア更新方法、破棄段階での鍵や証明書の無効化や機密情報の削除方法などをあらかじめ検討しておく必要があります。
このIoTセキュリティの複雑性を、これまでのマニュアルな手法で解決するにはたくさんの専門人材と膨大なリソースが必要となります。UNiDはこの複雑さをテクノロジーで解決することを目指しています。
UNiDの特徴の一つに「Fully Automated Provisioning」があります。これまでマニュアルで行われていたデバイス・プロビジョニングを完全に自動化することができます。分散型アイデンティティとハードウェアのルートオブトラスト技術を活用することで、デバイスはハードウェアのセキュア領域で自律的に鍵生成を行います。デバイスは、署名用公開鍵を分散型PKIネットワークに登録することで、クラウドとE2E暗号化通信することが可能になります。最後に、デバイスはデバイス管理システムに自身のインスタンスを登録することで、デバイス・プロビジョニングを完了します。
UNiDを活用した自動化プロセスでは、キーインジェクションや個別にPKIを構築する必要がありません。一般的にキーインジェクションには $0.5 ~ $2.0 USD per deviceのコストが発生すると言われています。これはキーインジェクションを行うためのオペレーションコストに加えて、セキュアな実行環境や従業員のバックグラウンドチェックなどのコストが含まれています。仮に1M台のデバイスを製造する場合、キーインジェクションだけで$2M USDの運用コストが発生します。UNiDではキーインジェクションのプロセスを不要にすることで、このコストを圧縮することができます。
さらに、従来の手法では、あなたはProvisionerやIntermediate CAなどの仲介者を信頼するしかありません。仲介者から鍵や漏れるリスクや不正を働くリスクなどを管理する必要があります。UNiDでは、この仲介者を完全に排除することで、脆弱性が生まれるリスクを低減することができます。
現在、私たちはルネサスエレクトロニクス製RA6M5(Cortex-M33)に対応するRustで書かれたオープンソースライブラリの開発を進めているところです。ソースコードはこちらからご覧いただけます。
IoT開発者は、UNiDのEDGE SDKをデバイスに組み込むことで、エッジからクラウドまでのセキュリティスタックの複雑性を抽象化し、専門人材や予算を必要とせずに素早く製品を市場に投入することができます。
現在では、ほとんどのWebサービスが暗号化通信を採用しているように、IoTデバイスもデバイスやクラウド間で暗号化通信することが当たり前になっていきます。私たちは、この新しいセキュリティスタックをオープンソースで開発することで、すべての開発者が広く利用できるようにしたいと考えています。
GitHubにあるUNiDコミュニティに参加しませんか?もし良ければ、 Star🌟 を押していただけるとうれしいです。
*本ブログ記事は、2021年9月26日付け「What we want to solve with UNiD」の日本語訳です。
この記事が気に入ったらサポートをしてみませんか?