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
450
What is a AzureSphere?
Azure Sphereって何それ?おいしいの?、というところから 関連するAzureのサービスや開発方法などについて解説します。
motoriderse
October 26, 2018
Tweet
Share
More Decks by motoriderse
See All by motoriderse
いまさら聞けないSPAのきほん
motoriderse
0
270
Azure Bot ServiceとLUISとちょっとだけIoTの話
motoriderse
0
610
Azure IoT SDKs LTSB リリース
motoriderse
0
420
5分でわかった気になるEdge Computing とAzure IoT Edge
motoriderse
0
330
Azure Iot Edge Shallow Dive
motoriderse
0
920
Azureで最も手軽にIoTを始める手法
motoriderse
0
330
Azure IoT Hubのススメ ~デバイス管理編~
motoriderse
0
1.7k
Azure IoT Hubのススメ ~概要編~
motoriderse
0
810
Other Decks in Programming
See All in Programming
聞き手から登壇者へ: RubyKaigi2024 LTでの初挑戦が 教えてくれた、可能性の星
mikik0
1
140
Snowflake x dbtで作るセキュアでアジャイルなデータ基盤
tsoshiro
2
530
Macとオーディオ再生 2024/11/02
yusukeito
0
380
距離関数を極める! / SESSIONS 2024
gam0022
0
300
2024/11/8 関西Kaggler会 2024 #3 / Kaggle Kernel で Gemma 2 × vLLM を動かす。
kohecchi
5
960
カンファレンスの「アレ」Webでなんとかしませんか? / Conference “thing” Why don't you do something about it on the Web?
dero1to
1
110
EMになってからチームの成果を最大化するために取り組んだこと/ Maximize team performance as EM
nashiusagi
0
100
リアーキテクチャxDDD 1年間の取り組みと進化
hsawaji
1
220
Streams APIとTCPフロー制御 / Web Streams API and TCP flow control
tasshi
2
360
Outline View in SwiftUI
1024jp
1
340
Arm移行タイムアタック
qnighy
0
340
DevTools extensions で 独自の DevTool を開発する | FlutterKaigi 2024
kokiyoshida
0
110
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Reflections from 52 weeks, 52 projects
jeffersonlam
346
20k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
It's Worth the Effort
3n
183
27k
Keith and Marios Guide to Fast Websites
keithpitt
409
22k
What's new in Ruby 2.0
geeforr
343
31k
A Philosophy of Restraint
colly
203
16k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
The Cult of Friendly URLs
andyhume
78
6k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
26
2.1k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
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/