Upgrade to Pro — share decks privately, control downloads, hide ads and more …

情報家電とネットワーク

rpaka
January 04, 2021

 情報家電とネットワーク

rpaka

January 04, 2021
Tweet

More Decks by rpaka

Other Decks in Technology

Transcript

  1. 2021/1/4 情報家電とネットワーク 2 情報家電 情報家電 ライト, ドア, エアコン等 情報端末 スマホ,

    スマートスピーカ等 ネットワーク通信 操作されるだけで無く、状態の変化≪情報≫を⾃ら発信する 情報のやり取りは双⽅向的に⾏われる
  2. 2021/1/4 情報家電とネットワーク 3 情報家電ネットワーク 情報家電 ネットワーク 家電同⼠の も重要 つの で操作

    その為に・・・ の および が必要 Ex. ドアの開閉 → 電気を付ける Ex. 室温 → エアコン, 空気清浄機ON メーカに依らず連携できるべき
  3. 2021/1/4 情報家電とネットワーク 6 Google Home Google Home 家電メーカのサーバ (オンプレ/クラウド) Google

    Assistant サーバ (Googleのサーバ) インターネット 家庭内ネットワーク 従来 Local Home SDK[6] の場合
  4. 2021/1/4 情報家電とネットワーク 8 Amazon / Google / Apple ⽐較 Amazon

    Alexa Google Home Apple HomeKit 家の中でも クラウド経由 クラウド側の APIのみ規定 家の中では 直接通信 データ取得が容易 プライバシー重視 実装の⾃由度:⾼ 情報家電側の 実装要件を規定 実装の⾃由度:低
  5. 2021/1/4 情報家電とネットワーク 9 Apple HomeKit Accessory Protocol (HAP)[2][3] 情報家電 情報端末

    OS アプリ HomeKit Accessory Protocol HomeKit Framework HomeKit Accessory Development Kit HAP HAPは情報家電と情報端末の 通信プロトコルを規定する 今回はこれに注⽬
  6. 2021/1/4 情報家電とネットワーク 11 情報家電のモデル化 Accessory Service Characteristic Characteristic Service Characteristic

    Characteristic 情報端末 例) エアコン 冷暖房 設定温度 電源 空気清浄 モード 有効/無効 Accessory ・・・ 情報家電 Service ・・・ 情報家電が提供する機能(複数可) Characteristic ・・・ 各機能の持つ情報, 状態 情報端末は“Characteristic”を操作する aid iid iid iid iid 8 1 2 3 4 aid ・・・ Accessoryの識別⼦ iid ・・・ Characteristicの識別⼦ Accessory Server
  7. 2021/1/4 情報家電とネットワーク 12 TLV8:やり取りするデータの形式 Byte 1 1 1 2 L-1

    L Type Length (L) Value ・・・ 内容 Type ・・・ この情報が何であるかの注釈付け(型+何のデータか) Length ・・・ データ本体の⻑さ(byte単位) Value ・・・ データ本体 Type kTLVType_Error 0x07 0x02 kTLVError_Authentication ⽂字表記 対応する値 TVLデータ 0x070102 例) メッセージ形式をBinaryで規定:通信⼿段に依らない
  8. 2021/1/4 情報家電とネットワーク 13 情報家電操作までの⼿順 [セットアップコード] [セットアップコード] SRP†により[共有鍵①]⽣成・共有:[セットアップコード]利⽤ [端末側⻑期公開鍵][端末識別⼦]:[共有鍵①]で暗号化 [家電側⻑期公開鍵][家電識別⼦]:[共有鍵①]で暗号化 SRP†により[共有鍵②]⽣成・共有

    セットアップ完了通知 操作要求 (1)ペア構成 (2)ペア検証 [家電識別⼦]:[家電⻑期秘密鍵]で署名:[共有鍵②]で暗号化 [端末識別⼦]:[端末⻑期秘密鍵]で署名:[共有鍵②]で暗号化 (3)情報家電の操作 [aid][iid][更新後のCharacteristic]:[共有鍵②]で暗号化 操作完了通知 セッション毎に 共有秘密鍵を使って暗号化 操作毎に事前に共有した⻑期公開鍵・ 識別⼦を使って通信相⼿を互いに検証 HTTPS通信を必須とせず 無線通信規格にも規定はないが 左記の⼿順を踏むことを規定 セキュリティ重視 通信⼿段の安全性に頼らない †Secure Remote Password Protocol[4][5]:詳細は割愛
  9. 2021/1/4 情報家電とネットワーク 15 その他規定されている機能の紹介 1 追加の情報端末のペアリング §5.10 Add Paring ほか

    2 情報家電からの通知 §6.8 Notifications 3 操作要求予告 §6.7.2.4 Timed Write Procedure 4 ビデオ等のストリーミング §6.10 HomeKit Data Stream 2台⽬以上のペアリングも可能だが1台⽬ を経由して登録する 情報家電は最低16台以上のペアリングを サポートすることを規定 [⽅法1] 情報家電が内部に持つことが規定 されている「状態変更カウンタ」を参照 する(ポーリング型) [⽅法2] 特定のCharacteristicの通知送信 を情報家電に指⽰し、変更の度に情報端 末に対しHTTPリクエスト送信(購読型) 特定の時間までにあるCharacteristicの 操作要求が発⽣することを情報家電に 予告する ガレージのドアなど操作に時間がかか るものに対し使うのか? ビデオなどのストリーミングについて も規定されている UDPではなくTCPを使い、さらにフ レーム毎にペア検証を⾏う ≪速度よりセキュリティ重視≫
  10. 2021/1/4 情報家電とネットワーク 16 Apple HAP 仕様書を読んで重要と思われた点 • 採⽤する通信⼿段の提供するセキュリティ機能に依存しない • デバイス⾃らが暗号化・復号化を⾏う事によって下位層の安全性に関わらず安全性を担保

    • 旧式の無線通信規格にしか対応していないハードウェアでも良いため家電製造コストが安く済む • ローカルでやり取りできる • プライバシーセーフ:家電の操作情報の流通が家庭内に閉じているため安⼼感がある • クラウドが⽌まっていても使える:可⽤性が⾼くなる • ファームウェアのアップデート機能を持つことが規定されている • Apple HAPでは具体的な暗号化などに使うアルゴリズムを具体的に規定している:安全性担保 • しかしより良いアルゴリズムが現れるかもしれず、それを使うようにしたい場合古いデバイスが Apple HAPを満たさなくなってしまう → ファームウェアアップデート機能が必須 • 情報端末以外からの操作が想定されておらず、またデータの取得も完全に不可能なのはどうなのか • 家電操作が基本的にローカルのみであり、クラウド経由の場合にはiCloudを使うがこの部分の仕様 は公開されておらず端末のアプリ以外(例えばクラウド上のプログラム)からアクセスする事は出 来ない:Webサービスとの連携や家電の使⽤状況収集などは⾏えない
  11. 2021/1/4 情報家電とネットワーク 18 Project Connected Home over IP (CHIP)[8][9][10] Apple,

    Google, Amazon, ZigBee Alliance共同のワーキンググループ メーカ共通の情報家電の通信仕様策定を⽬指している • ワーキンググループの名称にもあるようにIPネットワーク を基本としているが、通信⼿段は特に規定していない • 2020年後半に仕様の草案とオープンソース資料を公開と のこと[8]で、既にリポジトリ[11]が公開されている • リポジトリを⾒た所、ローカルでの通信を基本として いる模様(ハッキリとは書かれていなかったが・・・) • もしくは、まだクラウド側の仕様が固まっていないか • ⽇本のメーカはProject CHIPに参加しておらず・・・ • ⽇本でも同様のワーキンググループが存在し88社が参加し ているが、具体的な成果はない[9] [8] [10]
  12. 2021/1/4 情報家電とネットワーク 22 参考⽂献 [1] “Using the HomeKit Accessory Protocol

    Specification (Non-Commercial Version),” https://developer.apple.com /jp/support/homekit-accessory-protocol/. [2] “HomeKit Accessory Protocol Specification Non-C ommercial Version Release R2”. [3] “HomeKit 2020,” https://speakerdeck.com/tokorom/h omekit-2020. [4] “Secure Remote Password (SRP) プロトコル,” https:// sehermitage.web.fc2.com/crypto/SRP.html. [5] “Secure Remote Password protocol,” https://en.wikip edia.org/wiki/Secure_Remote_Password_protocol. [6] “Local Home SDK デベロッパー プレビュー,” https:// developers-jp.googleblog.com/2019/07/local-home-sdk- dp.html. [7] “スマートホームスキルAPIについて,” https://develope r.amazon.com/ja-JP/docs/alexa/smarthome/understand-t he-smart-home-skill-api.html. [8] “Amazon、Apple、Googleがスマートホームのシーム レス接続を可能にする規格開発で提携,” https://www.itme dia.co.jp/news/articles/1912/19/news069.html [9] “アマゾンアップルグーグルの「Connected Home ove r IP」がスマートホームをつなぐ,” https://monoist.atmark it.co.jp/mn/articles/1912/25/news067.html. [10] “Project Connected Home over IP,” https://www.con nectedhomeip.com. [11] “project-chip/connectedhomeip,” https://github.com/ project-chip/connectedhomeip.