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
490
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
640
Azure IoT SDKs LTSB リリース
motoriderse
0
430
5分でわかった気になるEdge Computing とAzure IoT Edge
motoriderse
0
350
Azure Iot Edge Shallow Dive
motoriderse
0
950
Azureで最も手軽にIoTを始める手法
motoriderse
0
340
Azure IoT Hubのススメ ~デバイス管理編~
motoriderse
0
1.8k
Azure IoT Hubのススメ ~概要編~
motoriderse
0
830
Other Decks in Programming
See All in Programming
CI改善もDatadogとともに
taumu
0
110
sappoRo.R #12 初心者セッション
kosugitti
0
240
2,500万ユーザーを支えるSREチームの6年間のスクラムのカイゼン
honmarkhunt
6
5.2k
SRE、開発、QAが協業して挑んだリリースプロセス改革@SRE Kaigi 2025
nealle
3
4.2k
Amazon Bedrock Multi Agentsを試してきた
tm2
1
280
DevinとCursorから学ぶAIエージェントメモリーの設計とMoatの考え方
itarutomy
1
670
知られざるDMMデータエンジニアの生態 〜かつてツチノコと呼ばれし者〜
takaha4k
4
1.3k
Formの複雑さに立ち向かう
bmthd
1
810
Honoのおもしろいミドルウェアをみてみよう
yusukebe
1
200
社内フレームワークとその依存性解決 / in-house framework and its dependency management
vvakame
1
550
Lottieアニメーションをカスタマイズしてみた
tahia910
0
120
WebDriver BiDiとは何なのか
yotahada3
1
140
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
Become a Pro
speakerdeck
PRO
26
5.1k
Documentation Writing (for coders)
carmenintech
67
4.6k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Agile that works and the tools we love
rasmusluckow
328
21k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Bash Introduction
62gerente
610
210k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
What's in a price? How to price your products and services
michaelherold
244
12k
Unsuck your backbone
ammeep
669
57k
Docker and Python
trallard
44
3.3k
Designing Experiences People Love
moore
139
23k
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/