Armが開催した年次イベント「Arm DevSummit 2020」の発表内容をピックアップする形で同社の最新動向について報告する本連載。今回は、「PARSEC」と「PSA Certified」を中心としたセキュリティ周りのアップデートについて紹介する。
Armが開催した年次イベント「Arm DevSummit 2020」の発表内容をピックアップする形で同社の最新動向について報告する本連載。ここまで「Neoverse」や、「Project Cassini」「SystemReady」について解説してきたが、セキュリティ周りのアップデートを後回しにしてきたので、今回はそのあたりをまとめてご紹介しよう。テーマは「PARSEC」と「PSA Certified」だ。
まずは「PARSEC」から。PARSECも「Project Cassini」と同様に、2019年の「Arm TechCon」で明らかにされたものである。もっとも、PARSECがPlatform Abstraction foR SECurityの略である通り、テクノロジーというよりは実装そのものである。
このあたりを説明するスライドで手頃なものがないかと探したら、2020年に行われた「Edge X Foundry」のライトニングトークの中にちょうどいいものがあったので、これをベースにご紹介したい。
さて、Armのセキュリティの基本は「PSA」である。PSAについては、連載第8回で説明したが、こちらで紹介したものは主にMCU向けであった。
ただし、例えば「Trusted Firmware」にしても、先行したのはCortex-A向けの「TF-A(Trusted Firmware for A-profile systems)」だったように、別にPSAはMCU向けだけのものではない。LinuxなどのリッチOSが稼働する組み込みデバイスあるいはサーバなどもやはりPSAがカバーする対象になる。
こうした組み込みデバイスやサーバの場合、「直接ハードウェアをアプリケーションからさわることはまずない」という点でMCUと大きく異なる。もちろん、MCUであってもRTOSなりハイパーバイザーなりを経由する関係で、直接ハードウェアを触らずに済むことはあり得る。しかし、RTOSを使っていても一部デバイスは直接アプリケーションから操作する、なんてことはごく一般的である。対してリッチOSではこうしたケースは基本的に考えられない。
問題は、リッチOSにPSAを持ち込んだ場合、そのための適切なAPIが存在しないことである(図1)。そこで、PSAとの間を埋めるものとしてPARSECが制定された格好になる(図2)。
面白いのはこの実装なのだが、言ってみればマイクロサービス的に提供されることを選び、そのパートナーとしてはDockerを選ぶ。現在はこれにMirantis(ミランティス)も加わった3者の共同プロジェクトとなっている。共同、といってもオープンソースベースなのでGitHubで公開されている。
なぜDockerか? というと、2019年4月にArmとDockerは共同開発を行う発表をしており、この枠組みを利用してセキュリティに関しても提供していくのが便利だと判断したからだそうだ。
Copyright © ITmedia, Inc. All Rights Reserved.