Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
What is a AzureSphere?
Search
motoriderse
October 26, 2018
Programming
0
470
What is a AzureSphere?
Azure Sphereって何それ?おいしいの?、というところから 関連するAzureのサービスや開発方法などについて解説します。
motoriderse
October 26, 2018
Tweet
Share
More Decks by motoriderse
See All by motoriderse
いまさら聞けないSPAのきほん
motoriderse
0
280
Azure Bot ServiceとLUISとちょっとだけIoTの話
motoriderse
0
620
Azure IoT SDKs LTSB リリース
motoriderse
0
420
5分でわかった気になるEdge Computing とAzure IoT Edge
motoriderse
0
340
Azure Iot Edge Shallow Dive
motoriderse
0
940
Azureで最も手軽にIoTを始める手法
motoriderse
0
330
Azure IoT Hubのススメ ~デバイス管理編~
motoriderse
0
1.8k
Azure IoT Hubのススメ ~概要編~
motoriderse
0
820
Other Decks in Programming
See All in Programming
ChatGPT とつくる PHP で OS 実装
memory1994
PRO
3
160
fs2-io を試してたらバグを見つけて直した話
chencmd
0
270
開発者とQAの越境で自動テストが増える開発プロセスを実現する
92thunder
1
220
オニオンアーキテクチャを使って、 Unityと.NETでコードを共有する
soi013
0
330
ある日突然あなたが管理しているサーバーにDDoSが来たらどうなるでしょう?知ってるようで何も知らなかったDDoS攻撃と対策 #phpcon.2024
akase244
2
7.6k
採用事例の少ないSvelteを選んだ理由と それを正解にするためにやっていること
oekazuma
2
1.1k
GitHubで育つ コラボレーション文化 : ニフティでのインナーソース挑戦事例 - 2024-12-16 GitHub Universe 2024 Recap in ZOZO
niftycorp
PRO
0
930
Compose UIテストを使った統合テスト
hiroaki404
0
120
CQRS+ES の力を使って効果を感じる / Feel the effects of using the power of CQRS+ES
seike460
PRO
0
220
命名をリントする
chiroruxx
1
540
htmxって知っていますか?次世代のHTML
hiro_ghap1
0
390
Scalaから始めるOpenFeature入門 / Scalaわいわい勉強会 #4
arthur1
1
380
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
6.9k
Git: the NoSQL Database
bkeepers
PRO
427
64k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.2k
Writing Fast Ruby
sferik
628
61k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
230
52k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
Faster Mobile Websites
deanohume
305
30k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Making Projects Easy
brettharned
116
6k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
1.2k
Transcript
Azure Sphere が やってくるってよ! 2018/9/22 .NET ラボ
Azure Sphereとは 2017/3/31 に立ち上がった「Project Sopris」による成果物。 IoTデバイスのセキュリティ強化が目的でシリコンチップからソフト ウェアに至るまでを評価。
極めてセキュリティの高いIoTデバイスを開発する為のソリューショ ンのこと。 ⇒ OSのことと勘違いされがち クラウド、ソフトウェア、デバイスを結びつける3つのコンポーネン トから成り立つ。
The Seven Properties of Highly Secure Devices ハードウェアベースの「Root of Trust」
小規模な信頼できるコンピューティングベース 多層防御 コンパートメント化 証明書ベースの認証 更新可能なセキュリティ 障害報告
セキュアなMCU MS製セキュリティ技術を搭載し認 定を受けたMCU。 セキュアなOS IoTデバイス向けに専用設計
Cloud Security Service 継続的なセキュリティサポート Azure Sphereのコンポーネント セキュアなMCU セキュアなOS Cloud Security Service
セキュアなMCU
そもそもMCUって? Micro Controller Unitの略で、通常マイコンと呼ばれる。 CPUやMPUに比べ、動作周波数のレンジが概ね1桁違う。 4/8/16/32bitアーキテクチャが混在。(4/8bitは根強い需要)
電圧高め。(標準3.3V) 消費電力は低め。(高くても数ワット) 価格は安め。(ほとんどが数十円~数百円) AzureSphereのMCUは認定を受ける必要がある。
HWアーキテクチャ
Microsoft Pluton Security Subsystem セキュリティプロセッサコア、暗 号化エンジン、ハードウェア乱数 生成器、公開/秘密鍵生成、非対称 および対称暗号化、セキュアブー ト用の楕円曲線デジタル署名アル
ゴリズム(ECDSA)検証など様々 な改ざん対策を含む。 ブートプロセスの一環として動作 ランタイムサービスとしてデバイ スの他のコンポーネントからの要 求を処理。
Application processor ARM Cortex-A ハードウェアベースのプロセスの区 画化を可能にし、OS、アプリ、 サービスの実行を担当。 これは、ユーザーモードとスーパー
バイザモードの両方でコードを実行 する2つのOS環境をサポート。 (ノーマルワールドとセキュアワー ルド) 開発者のアプリは、ノーマルワール ドのユーザーモードで実行される。
Real-time processor ARM Cortex-M ベアメタルコードまたはリ アルタイムOS(RTOS)を 使用するARM Cortex-M I
/ Oサブシステムが搭載
ネットワーク WIFI 2.4/5GHz 802.11 b / g / n
Multiplexed I/O ARM Cortex-AまたはARM Cortex-M I/Oコアのいずれ かにマップ可能。
Microsoft firewalls I/Oペリフェラルがマップさ れているコアにのみアクセ スできるようにするための サンドボックス機能
記憶装置 最低4MBの内蔵RAMと 16MBの内蔵フラッシュメモ リ
開発用ボード 主なスペック MCU:Mediatek製MT3620 ARM Coretex A7 ARM Coretex M4 WIFI:2.4/5GHz
電源:5V/1A 認証:CE,FCC,MIC,RoHS
Starter Kit 拡張用ボード OLEDディスプレイ LEDボタン ブザー
アナログ式回転角センサー リレー 温湿度センサー 光センサー
セキュアなOS
セキュアなOS カスタムLinuxカーネル 複数レイヤーから成る アプリケーションは コンテナ上で実行 リアルタイムI/O 安全にクラウドに接続
SphereOSが初めてのUNIXではない 1981年にXENIXを発表 AT&Tからライセンスを受けた、 世界初の商用UNIX 仮想記憶すらもたない8086プロ セッサ、数MBのメモリ、HDD無 し、という現在では考えられない
ミニマムな環境で動作することが 可能だった。 1984年、SCOという会社に権利を 移した https://ja.wikipedia.org/wiki/XENIX
Azure Security Service
Azure Security Service ソフトウェアアップデート 新たなセキュリティ脅威の検出 証明書ベースのデバイス間通信 あまり情報が無い。。。
開発について
開発環境の準備 IDEはVS2017 Azure Sphere SDK をインストール ※2018/9/22時点でプレビュー https://marketplace.visualstudio.com/items?itemName=Azure
SphereTeam.AzureSphereSDKforVisualStudio PCと開発用ボードをUSB接続 電源の供給とデバッグ Azure IoT Hub Device Provisioning Serviceを 使えるようにしておく
VS2017では テンプレートから作成可能 ※現在はC++のみ Azure IoT Hub Device Provisioning Service
Azure IoT Hub Device Provisioning Service(DPS) 工場でIoT Hub への接続情報を 書き込むことなく
単一のIoTソリューションに ZTP(ゼロタッチ・プロビジョニング) することが可能。
プロビジョニングの流れ DPS IoT hub 5. IoT Hubへ接続 device 1. DPSへ自身のhubを問い合わせ
2. ID作成依頼 4. 接続情報を返却 3. IDを返却
DSPへの接続設定は簡単
まとめ Azure Sphereとは3つのコンポーネントからなるソリューション セキュアなMCU マイクロソフトの認定 サンドボックス
セキュアなOS 各種レイヤー コンテナ クラウドのセキュリティサービス 証明書ベース ゼロタッチプロビジョニングが便利 AzureSphereでなくても使える
参考 http://blogs.itmedia.co.jp/appliedmarketing/2018/07/azure_sphere. html https://japan.zdnet.com/article/35099344/ https://docs.microsoft.com/en-us/azure-sphere/ https://www.seeedstudio.com/MT3620-Development-Board-for-
Azure-Sphere-p-3052.html# https://marketplace.visualstudio.com/items?itemName=AzureSpher eTeam.AzureSphereSDKforVisualStudio http://ascii.jp/elem/000/001/665/1665218/ https://azure.microsoft.com/en-us/blog/developing-an-azure- sphere-experience-with-visual-studio/ https://tech.nikkeibp.co.jp/atcl/nxt/column/18/00001/00325/