IETF104
TEEPおよびハッカソンの報告
National Institute of Advanced Industrial Science and Technology(AIST)

Akira Tsukamoto, Kuniyasu Suzaki
1

目次
• 総括
• TEEP概要図• TEEP Hackathon• TEEP/OTrP セッション– TEEPとOTrPの関係の今後の流れ– 他の WG の活動との関連性• その他、SUIT, cbore WG について
• 技術面以外にIETF 104 に参加してみての印象• まとめ2

総括• TEEP(TEE Provisioning)やSUITなどIETFのいくつかのWorking GroupではTEEをベースとしたセキュリティーのライフサイクル管理に直結する研究開発の議論が行われている。産総研では、NEDOプロジェクトでTEEの研究開発を行っている。初参加であったことから、産総研の意図を紹介し関係者とネットワークを築くことと現在のTEEPやSUITなどのWGの議論の把握に注力した。
• TEEP ではマイクロソフトのDave ThalerのチームはIntel SGX, ARM TrustZoneeの両方で動作するTEE環境であるOpenEnclave を開発していることがわかり、RISC-VのKeystoneとならんで産総研のTEEと直接関係しそうなプロジェクトであることがわかった。また、Hannes(ARM)が我々の研究開発分野に関係するWGに横断的にかかわっていることがわかった。
• 今回の議論にてTEEP WGではIntel SGX, ARM TrustZonee, と並んで RISC-Vも含めた を実現する方針となった。
3

TEEP 概要図
TAM-1

TAM-2

Untrusted World
TEEP/OTrPBroker

App-2(TA-client)App-1(TA-client)

Service Providers (SP)Device Administrators

Trusted WorldTA2
TA1

TEE supported HW, OS,bootloader
4ｈ

TEEP Hackathon• 参加者4人、前回の参加者2人から倍にTeam members:• Dave Thaler• Akira Tsukamoto• Kuniyasu Suzaki• Hannes Tschofenig(co-author)
First timers @ IETF/Hackathon: 25

TEEP Hackathon 成果• Across 3 types of TEEs (Intel SGX, ARM TrustZone, RISC-V Keystone)• Participants used Open Enclave SDK branch that supports both SGX and TrustZone• SGX+TrustZone implementation of OTrP client & server in progress:• Ported to run over Open Enclave SDK• Added more of OTrP implementation (more use of JWS & JWE)
• Updated to match latest HTTP transport spec (changes based on MNot feedback),straightforward• Implemented Trusted Application request mechanism designed (but not implemented) athackathon 103 but only doc’ed in a github issue

6

TEEP Hackathon 今後の課題• Filed Issues: https://github.com/ietf-teep/OTrP–5 new draft issues filed–3 existing issues updated with more info
• Summary of new issues:• Relationship between OTrP and attestation (EAT/RATS/etc) needs work(on agenda for this week)• Some OTrP fields look redundant with others, opportunity for mismatch• OTrP spec uses two slightly different cert chain encoding mechanisms(JWS and custom), complicating code
• Some OTrP fields (TEE name, TEE version) are underspecified and areinterpreted differently by different people
7

TEEP Hackathon 動作した OpenEnclave• https://github.com/microsoft/openenclave/tree/feature.new_platforms• 統合開発環境であるVisual Studio で TEE 開発環境を実現（現在IntelSGXとOP-TEE両対応）

8

TEEP Hackathon 動作した OpenEnclave
Untrusted APP からの出力

TA からの出力

9TEEP/OTrP セッション での流れ
• TEEP WG では IoT/エッジデバイスで活用可能はセキュリティーアプリのライフサイクル管理をTEEにてセキュリティーを確保する規格の策定を行っている。
• TEEP では TAM, OTrP broker, SP-App, TAなどのコンポーネントがあり、相互を JSONベースのOTrP のフォーマットでやり取りを行う。
• ハッカソンの時にOTrPにおける各フォーマットの各パラメーターの記述に対して、読む人により解釈が違うことが判明。
– ユースケースの記述があれば人による解釈が違ってしまうことを防止できる– 各フォーマットのユースケースについては本会議では明確化できず

10

TEEP/OTrP セッション での議論と課題• TAM<->OTrP brokerや、SP<->TA/Enclaveなどは、相互に信頼を担保するために Attestation を行っているが、Attestation の方式はRATS WGの議論を活用してはどうか？
• OTrPにて TA のライフサイクル管理を行う。Install, Update, DeleteにTA のバイナリーのバージョン情報などが必要で、SUIT WG のmanifest が使えるのでは？
• TEEP WG では、SUIT WG と RATS WG と連携することが提案される• OTrP のドラフトに関しては今後詳細を明確化していくことに11その他、SUIT, cbor WG について
• SUIT WG– Firmware の情報などを記述する manifest のフォーマットを策定しており、TEEP WG であつかうTAバイナリーの情報記述フォーマットに活用できると個人的にも感じられる– OTrP のフォーマットと比較すると SUIT のフォーマットは詳細定義の策定が進んでおりほぼ完成形に近い印象。

• cbor WG– SUIT もOTrPも JSONをベースにしており、SUITは JSON記述を cbor方式にてバイナリーとテキスト情報を相互変換している。
– cbor WG 自体は cbor のパーサーを実装する時にあいまいさが残っている部分をつぶしていく活動を行っていた。議論にされていた内容はニッチな条件の時にどうするかという点が多く、SUIT で使われている定義では問題にならないとおもわれ、現状の cbor で SUIT や OTrPにおける活用では現状のcborで十分とおもわれる。
12

IETF 104 に参加してみての印象• 技術面以外で感じたこと– イベントの規模と運営
– 参加者
– プラハ
– 2001年2002年ごろの IETF RFC との比較
– TEEP/OTrPやSUITを日本でうまく普及させるための課題

13

まとめ
• TEEP/OTrP関係者と相談でき、TEEP WGでは Intel SGX, ARM TrustZone,RISC-Vすべてを対応することに。TEEPが特定のCPUに依存しない形になることは、産総研のTEEの研究開発の成功に必須事項である。
• TEEP WGの方向性が理解できたことで、産総研の研究開発においてTEEP WGと協業するため課題が明確化した。
• IETF に参加して直接キーマンと顔を合わせた議論による進捗は大きなメリット。
•

この成果は、国立研究開発法人新エネルギー・産業技術総合開発機構（ＮＥＤＯ）の委託業務「⾼効率・⾼速処理を可能とするAIチップ・次世代コンピューティングの技術開発/⾰新的AIエッジコンピューティング技術の開発/セキュアオープンアーキテクチャ基盤技術とそのAIエッジ応⽤研究開発」の結果得られたものです。
14