IoT検定対策7章 データ分析(1/2)

データ分析(1/2)

データベース

  • NoSQL
    • KVS:AWS DynamoDB、Oacle NoSQL、Redis など
    • ドキュメントデータベース:MongoDB、Azure DocumentDB など
    • グラフデータベース
      • Neo4j、InfiniteGraph など。パナマ文書事件で有名。個のデータを示す「ノード」と属性である「プロパティ」、ノードの関係性を保有する「エッジ」から成る。
    • カラム指向
      • RDBMSの行指向と異なり、データを列単位で取得・操作するデータベース。ビックデータの分析などで有効。SAP HANAなど。
  • 人工知能
  • 機械学習
    • 既出の値を出すための無数の方法(関数)を策定し、最新データの特徴を関数に入力することで未来予測などを行う。
    • 教師あり学習
      • 既知の正解を手掛かりとし、正解のわからないデータを予測すること。
      • 予測の対象を大別すると「写真から日本人を探し当てる」ような『カテゴリ』と、「明日の売り上げを予想する『実数値』がある。
      • 『カテゴリ』では分類の対象数を指して「n値分類」と呼び、注目するデータを『正例』(上の例で、日本人の顔)、それ以外を負例と呼ぶ。
      • 機械学習で予測の手掛かりとなるデータを『特徴量』、または『素性(そせい )』と呼ぶ。計算で扱う場合は、『特徴ベクトル』または『素性ベクトル』で表現される。
      • 正解の判定と、特徴ベクトル(量)の組み合わせを『学習データ』と呼ぶ。
        • 画像判別では、例えば「喜び」と「悲しみ」の顔の正解と、画像の特徴ベクトルを結び付けた学習データを用いる。この機械学習『クラス分類』、この時に導出した関数のことを『分類器』と呼ぶ。
        • 数値判別では、例えばがん発生確率の値と、要因となる喫煙や酒量の特徴ベクトルを結び付けた学習データを用いる。この機械学習『回帰分析』といい、導出した関数を『回帰モデル』『回帰式』と呼ぶ。
    • 表現能力:学習データのとおり忠実に再現する力のこと。敏感さ・繊細さ。
    • 汎化性能:特徴ベクトルの微細な誤差は無視する力のこと。鈍感力。
    • 過学習:表現能力が高すぎ、現実的な予測ができなくなること。
    • 正則化過学習にならないよう、関数を調整すること。
  • 機械なし学習
    • 不特定のデータ集合から、何かしらの特徴を見つけ出す分析方法
    • 似た者同士をまとめ上げるクラスタリングと、クラスター内データの共通項となるパターンを抽出する『相関データ抽出』を使用する。
    • これにより「牛乳とパンを買う人(クラスタ)は、卵も買う(相関関係)」という分析が行える。用例として、スーパーマーケットで売れやすい商品レイアウトの参考にするといった活用が行える。

… 以降、長すぎて力尽きた…。

IoT検定対策8章 セキュリティー

セキュリティー

暗号化

  • セキュリティの3大要素「C.I.A.」

    • Confidentiality(機密性):許可のない人はアクセスさせない。暗号化、アクセス制御によって担保。
    • Integrity(完全性):改ざんされていないことを保証する。ハッシュ、デジタル署名、証明書によって担保。
    • Availability(可用性):必要な時に常にアクセスできる。冗長性やフォールトトレランスによって担保。
  • 共通鍵暗号方式

    • 換字式暗号(カエサル暗号)
    • 鍵データを使ったコンピュータ演算による暗号化
    • 運用上の課題として、鍵搬送の問題と、鍵管理(数)問題がある。
    • IoTでは、LoraWANがAES-128(ラウンド10段)を使用している。AES-256では14段となり、遅いため。
      f:id:camelrush:20200825003449p:plain
  • 公開鍵暗号方式
    • RSA鍵:整数因数分解暗号とも。1024bit×nの長さの鍵が可能。しかし、鍵の危殆化(計算能力向上によって暗号の安全性が侵食されること)によって、2030年までには 2048bit 以上を使用するよう、NISTが推奨している。
    • ECC鍵:楕円暗号曲線暗号とも。RSA鍵よりも短い鍵で暗号化が可能(データ運搬上の効率が良い)
  • SSL/TLSによる暗号化手順
  • SSH接続には、パスワード認証・秘密鍵認証のほか、特定接続元からの接続を許可する「ホスト認証」がある。
  • IoTにおいて暗号化通信機能を持たないレガシーデバイスと接続する場合は、そのサービスポートをSSHポート(22)経由で転送する、SSHポートフォワーディングを活用すうことで、簡易的なVPN接続を実現でき、サービスポートを平文から保護できる。
    f:id:camelrush:20200825005011p:plain
  • VPN

攻撃対策

  • DoS/DDos攻撃
    • DoSは、Denial of Service(サービス運用妨害)の略。
    • システムを負荷状態にしてサービス停止に追い込む攻撃。
    • 対策は、
      • 利用者からの使用リソース量を制限する
      • 敷居値を超えるアクセスを遮断する
    • DDosは、Distributed DoS(分散サービス運用妨害)の略。複数のコンピュータから対象に攻撃を仕掛ける
    • 以下のような信頼性設計が必要である。
      f:id:camelrush:20200826002401p:plain
  • SQLインジェクションサニタイズで入力内容を無害化して回避
  • サイドチャネル攻撃
    • 機器の電圧やデータバス電流の変化などを観測して、機密情報を抜き出す攻撃。データバスにプローブを当ててデータを読み取るプローブ攻撃など。対策には、データを外部から参照できなくする「隠蔽」と、参照できるデータを演算によって暗号化してしまう「遮蔽」のいずれかで対応する。
  • マルウェア
    • トロイの木馬など、悪意のあるソフトウェアによる攻撃。
    • 対策は、
      • ソフトウェア証明によって許可していないPGを動作させない
      • ソフトウェアの更新を定期的に行う。OTA(Over-The-Air)などを活用。
  • 踏み台
    • ソフトウェアの乗っ取りによって攻撃者の意図に応じた挙動をIoT機器が行う。感染機器を束ねるボットネットが形成されることも。IoT機器にLinuxOSなどが内蔵されている場合は、不要な機能を無効化するなど。

認証技術

  • アクセス制御:「識別」「認証」「許可」の3要素で、情報資産へのアクセスを管理する。
  • パスワード認証
  • BASIC認証
    • 「ユーザ名:パスワード」の連結文字列をBASE64形式にエンコードし、HTTPのAuthorizationヘッダに付与して送信する認証。平文のため、暗号化と併せて使用すること。
  • DIGEST認証
    • BASIC認証の弱点であるパスワード漏洩に対策して生まれた認証。接続要求に応じてサーバがランダムな値(チャレンジ)を返却する。クライアントがこれと認証情報を組み合わせたハッシュをサーバに送信する。サーバがどう計算を行い結果が一致すれば、クライアントを正規ユーザとみなす。
  • TOKEN
  • 二要素認証
  • 生体認証
    • 本人拒否率(FRR)と他人受入率(FAR)の組み合わせで評価される
  • リスクベース認証
    • 普段の利用者のプロファイル分析(IPやロケーションが同一か)を基に、規定から外れるログイン者に再質問(秘密の質問)、またはリジェクトする認証。

監視・運用

  • IPv6
  • SNMP
    • ネットワーク機器を監視するための通信プロトコルUDP
    • 管理される機器にSNMPエージェントを配置する必要がある。
    • 通常、ポート161(ポーリング)と162(TRAP)を使用している。
    • SNMPエージェントがSNMPマネージャに送信する情報はMIBと呼ばれる。
    • MIBは、OID(識別子)とPDU(各種データ)から成る。
    • SNMPにはv1~v3がある。v3でデータ暗号化に対応した。
  • ファイアウォール
  • IDSとIPS
    • IDSには、ネットワークセグメントのパケットを監視するNIDS(Network-Based IDS)と、機器にインストールされて機器のイベントを監視するHIDS(Host-Based IDS)がある。
  • 改ざん検知システム
  • セキュアOS
    • 定義は、強制アクセス制御と、最小特権の2つの機能を保有していること。
    • LinuxのRootや、WindowsのAdministatorなど。
  • NTP
    • 時刻同期用の通信プロトコルUDPポート123。
    • IoT機器などの時間をずらす攻撃を「タイムシフト攻撃」という。対策としてNTPを使用して同期させることが適当。
    • NTPには正確な時間を有する上位機器(GPS電波時計)からの階層構造による優先度付けがあり、その階層レベルをストラタム(Stratum)という。上位ストラタムからの通信は、秘密鍵(公開鍵方式)によって暗号化されている。
  • 総合ログ監視ツール
  • 情報セキュリティポリシー

IoT検定対策6章 プラットフォーム

プラットフォーム

クラウド

分散処理

  • Apache Hadoop
    • HDFSHadoopファイルシステム。マスタであるNameNodeと、スレーブであるDataNodeから成る。入力データはDefault128MBのDataNodeに分散配置され、その配置場所を示すメタデータがNameNodeに格納される。NameNode自身もHA構成に対応している。
    • Map Reduce:分散処理アルゴリズム。Map、Shuffle、Reduceの3段階に分けて並列処理を行う。
      • Map:入力データから処理するデータとキーを抽出する。
      • Shuffle:データの入れ替えを行い、複数のサーバに分担する。
      • Reduce:複数のサーバで処理を実行し、結果をまとめる。
  • Apache Spark:インメモリで動くApache Hadoop
  • Apache Storm:センサデータなど、ストリームデータの分散処理に向いている。
    f:id:camelrush:20200825000220p:plain

データ処理

  • RESTフレームワーク
    • ステートレスであること
    • 操作メソッドを統一していること(GET/POST/PUT/DELETE)
    • URIでアドレスを可視化してわかりやすく。セッションIDは含めないこと
    • 情報に他の情報や状態を、(HTMLやXMLなどで)含めることができる
  • JSON
  • Python
  • Node.js
    • C10K問題。
    • MEANスタック:Node.jsによる親和性が高いフレームワーク同士をつないだシステム構成のこと。MongoDB、Express、Angular、Node.js の組み合わせを指す。

IoT検定対策5章 デバイス(2/2)

バイス(2/2)

アクチュエーター

  • 電動アクチュエーターは電気信号を「直進」または「回転運動」に変換する装置(電動ではないが、油圧や空気圧で動かすものも、アクチュエーターの一種)
  • ソレノイド:コイルの中に鉄心を通した装置で、通電によって鉄心(プランジャ)を引き込む(吸引)ことで、直進運動する。コイル域からはみ出ないようストッパーがついており、限定された範囲で動く。普通は通電を切ると吸引が終わるだけなので、直進したプランジャはそのままだが、ストッパにバネをつけてバネ動力で元の位置に戻すものもある。
  • ソレノイドはこのほか、電磁弁に使用されることもある。水や油、空気などの弁。水道の蛇口など。
  • 一方、モーターの回転数に限定域はないため、動力には主にモーターが、制御にはソレノイドが用いられることが多い。
    f:id:camelrush:20200822140905p:plain
  • 逆起電力:モーターをOFFした後、停止までの間の動力によって、モーターが発電機となる。逆起電力とはそこから生み出される電力のこと。逆起電力によって回路が壊れる危険性があるため、ダイオードによって装置を守る必要がある。

電圧と実装技術・製造技術

  • 電源:従来、アナログ回路の電源は12V、デジタル回路の電源は5Vが一般的であったが、今般は3.3Vなどが定格化されつつある。FPGAでは、2.5Vや1.8Vのものもある。
  • 電池:
  • 無線給電
    • 日本のICカードの無線給電は 13.56MHz の電磁誘導方式が主流である。Suicaなど。
  • MEMS技術:Micro Electro Mechanical Systemの略。1mm以下の微細機械の設計・実装技術を指す。マイクロマシーン技術とも呼ばれる。インクジェットプリンタのヘッド、加速度センサーの部品のほか、HDDのヘッド位置決め部品の開発などで使用される。

アナログ信号のセンサー

  • 温度センサー
    • サーミスタ:温度で抵抗値が変化する半導体酸化物
    • 熱電対:
    • 白金測温抵抗体:
  • 湿度センサー
  • 圧力センサー
    • ひずみゲージ抵抗式:
    • 静電容量式:
    • シリコンレゾナント式:
  • 光センサー
  • 地磁気センサー
    • ホール素子:
    • MR素子:
    • MI素子:
  • 音センサー(マイクロフォン)
  • 緒音波センサー
  • 赤外線センサー
    • アクティブセンサー:自ら赤外線LEDを照射し、反射光量をフォトトランジスターなどで測定する。人感センサーとして、自動ドアや防犯用センサーに使用。
    • パッシブセンサー:人体が発生している遠赤外線(波長7~14um)の変化で熱源を感知する。トイレの自動点灯などで使用。
  • 接触センサー
  • イオンセンサーとバイオセンサー
    • イオンセンサー:液体中のイオン濃度を計測するセンサ。農業用地の土壌調査、血液分析などにも活用される。
    • バイオセンサー:受容体が持つ分子識別能力を利用して化学物質を検出するセンサー。血糖値測定、水質汚染調査などへの利用のほか、味センサー、匂いセンサーなども該当。

デジタル処理のセンサー

  • 加速度センサー:
  • ジャイロセンサー
  • 画像センサー:
  • 距離センサー:
  • ミリ波レーダー:
  • レーザースキャナ:
  • GPS
  • タッチパネル
    • 表面型静電容量方式:基盤の4隅から微弱な電流を流しておき、接触時の静電容量の変化でタッチ位置を検出するもの。手袋をされると検出されにくくなる。
    • 投影型静電容量方式:
    • 超音波表面弾性波方式:
    • 赤外線光学イメージング方式:
    • 電磁誘導方式:
  • 生体センサー
    • 脈波センサー:心臓の鼓動による血管の体積変化を計測するセンサー
      • 光学式脈波センサー:心拍数の測定で使用。緑色光をよく吸収するヘモグロビンの特色を利用し、発光からの跳ね返りをフォトトランジスタで光検出して測定する。
      • パルスオキシメーター:血中酸素飽和度測定で使用。ヘモグロビンの酸素結合の有無による色の変化と、その割合を計測する。
      • 血圧測定も同様。空気袋(カフ)の圧迫で生じる血液の変化をLEDで解析して最高・最低血圧を算出する。
    • 圧電素子によって就寝時の心拍、ストレスチェックなどを行う。

      スマートフォン

  • BLEビーコン
    • 一定の同じ電波を出し続ける機器のこと。
    • ビーコンには、電波識別のために識別子、マイナー番号、メジャー番号などがデータに含まれる。
    • 用例として、登録済スマートフォンがビーコンに近づいたときに店舗のチラシを配信するサービスなど。
    • 省電力性が求められるため、BLEなどを採用する。
  • IBeacon
    • AppleiOS機器でビーコンを使用する技術。BLEビーコンを使用するためのフレームワークが提供されている。

IoT検定対策5章 デバイス(1/2)

バイス(1/2)

制御装置

マイクロコントローラー

入出力

  • GPIO:用途を限定しない汎用入出力PIN。High/Lowを切り替えて使用。基本的には矩形波出力だが、PWM制御により疑似的な正弦波の出力も可能。
  • UART(または SCI):Universal Asynchronous Receiver Transmitterの略。RS-232cなどで使用。通信内容が長いメッセージ(GPSなど)の場合に使用されることがある。
  • SPI:Serial Peripheral Interfaceの略。Motolora社開発。IC同士の通信で使用されるインターフェイス。マスター・スレーブ方式で1:n通信(マスター 1:スレーブn)の通信が可能。シリアルバス。SDカード(Micro SDも)がこのI/Fを使用。
    f:id:camelrush:20200822094220p:plain
  • I2C:Inter-Integrated Circuitの略。Royal Philips社開発。SPI同様、IC同士の通信I/F。低速デバイス(小型ディスプレイ、RTC(リアルタイムクロック))で使用。SPIと異なり、マルチスター(複数マスターからひとつのスレーブに対して通信。マスター同士は不可)が可能。
    f:id:camelrush:20200822094236p:plain
  • 1-WIRE:Dallas Semiconductor社製。1本の信号線でデータ送受信、給電が可能。長距離の伝送が可能。デバイスに振られた個別IDで複数の同系デバイスを識別できる。

IoTデバイスを動かすための仕組み

  • バイスの概要
    • CPU・RAM・レジスタを搭載したLSI(大規模集積回路)であるMPUやCPUなしのMCULSIと通信するIOPortで成り立っている。
      f:id:camelrush:20200822100510p:plain
    • IOPortには、デジタル入出力端子とアナログ入力端子がある。
  • 電圧とロジックレベル
  • 正論理と負論理
    • 正論理:1をHigh、0をLowとする考え方
    • 負論理:0をHigh、1をLowとする考え方
    • MIL記号表記(下図)では、○の端子が 負論理を示す。
      f:id:camelrush:20200822103735p:plain
    • NAND、NORについては、AND、ORの逆。 f:id:camelrush:20200822103805p:plain
  • 抵抗の系列とカラーコード
    • オームの法則:V=IR
    • リード線がついたものと、チップ抵抗(線を持たずに直接プリント基板につける)がある。
    • カラーコードの見方。例 の場合。
      • No1、No2は値(茶:1、緑:5 → 15)
      • No3 は 指数(橙:3 → 10の3乗)
      • No4 は 誤差(金:±5%)
      • → 15 × 103 = 15KΩ(誤差 ±5%)
        f:id:camelrush:20200822110140p:plain
  • 語呂合わせで覚える
    f:id:camelrush:20200822110208p:plain

  • ダイオード、LED、太陽電池

    • ダイオード:電流を一方向だけに流す素子。P型(+)とN型(-)の半導体(導体と絶縁体の両方の特性を持つ)でできている。
    • LED:発光ダイオード。P型とN型が結合することで出る光を、効率的に発生させたもの。
    • 太陽電池:フォトダイオードとも。LEDの特性を逆に用い、光を当てることでP型とN型に(+)(-)を発生させて電流を流すようにしたもの。
  • トランジスタ

    • 電流を増幅する素子。コレクタ・ベース・エミッタの3端子。
    • (ここは正直さっぱり。別途勉強必要)
      f:id:camelrush:20200822130416p:plain
  • スイッチ入力とチャタリング

    • チャタリングは、電子回路のスイッチでVccとGNDの接点を物理的にONにする際、接点で「バウンド」または「擦れ」によって複数回細かなON/OFFが検知されること。
      f:id:camelrush:20200822131046p:plain
  • コンデンサ

    • 蓄電器。
    • 容量(C)と蓄積された電荷(Q)の関係は、Q = C × V。
  • 電圧の入力(A/D変換)

    • A/D変換は、サンプリング(標本化) → 量子化 → 符号化 の順に行う。
    • 標本化:アナログ信号から一定間隔で信号を抽出する。
      f:id:camelrush:20200822132939p:plain
      • 標準化には「標準化(サンプリング)定理」を用いる。曰く、
      • 「波形の最大周波数の2倍を超えた周波数で標本化すれば完全に元の波形に再構成される」
      • 例えば、電話の最大周波数は 4KHz(ナローバンド 0.3~3.1または3.4kHz) である。
      • つまり電話は、4kHz×2=8kHz、つまり標本化レートを1秒間に8000回にすることによって忠実に再現できる
    • 量子化:標本化した信号を量子化により数値化する。
      f:id:camelrush:20200822133028p:plain
    • 符号化:0と1の2進数(デジタルデータ)に変換する。
      f:id:camelrush:20200822133110p:plain

IoT検定対策4章 ネットワーク

ネットワーク

データ送信プロトコル

  • HTTP
  • MQTT(Message Queue Telemerty Transport)
    • 特徴は、パケット送受信の回数や量が少なく、軽量であること。
    • ヘッダの2ビットで、QoSの指定が可能
      f:id:camelrush:20200818001310p:plain
    • MQTT自体には暗号化は含まれていないため、別途SSL/TLSを使うなどして暗号化が必要(AWS IoTはSSL/TLS
  • AMQP(Advanced Message Queue Protocol)
    • 「RabbitMQ」に代表されるメッセージ相互交換プロトコル
  • CoAP(Constrained Application Protocol)
    • M2M専用のプロトコルであり、デバイス制御に用いられる。
    • 原則UDPを使用していることで誤り訂正などの手順がなく、ヘッダも4Bytesであることから軽量であるという特徴を持つ
    • 非同期通信をサポートしており、2つのデバイスが同時に双方向のデータ送受信を行える。
  • WebSocket
    • 通常のWebサービスはクライアント(おもにブラウザ)の操作によって、サーバからデータを取得するが、WebSocketはこれに加えサーバ側からのPush通知(発火)が可能である。
    • ベースプロトコルや使用ポートはHTTPと同じである。TLSによる暗号化も可能。
    • MQTTなどの他のプロトコルを、WebSocketでカプセル化して暗号化することが可能である。ただし、本来のMQTTの軽量といったメリットは損なわれる。
      f:id:camelrush:20200818004011p:plain

WANおよびLAN

  • Wi-Fi
  • 携帯電話の通信規格(3G、LTE、4G、5G)
    • LTEは厳密には3.9G。広告による一般的な認知を優先して4Gに繰り上がった。
    • 4GにはLTE-Advance、WiMAX2の規格がある。
    • 5Gは10Gbps以上の通信速度と、IoTデバイスが10年以上稼働な省電力性を備える
  • 衛星インターネットアクセス
    • 18Mbps程度の速度だが、携帯電波が届かない山間部や海上の通信手段。
    • コマツが建設機器の遠隔車両管理システム「KOMTRAX」に使用
  • エッジコンピューティング、フォグコンピューティング
    • 現場に設置した処理能力が高いコンピュータ(エッジ)が、IoTデバイスから得たセンサーデータを、クラウドに上げる手前で編集・加工してデータ量を圧縮するシステム構成のこと。通信の負荷を下げたり、クラウド通信コストを削減する効果がある。
    • 同様に、エッジがデータ分析を行うことで、デバイスへの制御命令の即時性を向上させることができる。
    • フォグコンピューティングは、複数のエッジを配置し、相互に通信して負荷分散やビッグデータ解析を行う。
  • LAN内通信機器(ルーターゲートウェイなど)
  • LPWA
    • SIGFOX:
      • 920MHz帯使用
      • 1国1事業者の事業提携が前提で、日本では「京セラコミュニケーションズ」がサービス提供
      • 100bpsの低速通信
      • 3Km~50Kmの伝播範囲
      • スター型トポロジ
    • LoRa
      • 920MHz帯使用
      • 10kbpsの通信速度
      • 1Km~15Kmの伝播範囲
      • スター型トポロジ
    • Wi-SUN
      • 1Km程度の伝播範囲。複数デバイス間のセンサーネットワークでカバー。
      • スター型、ツリー型、メッシュ型のトポロジ
      • 広域に対応したセンサーネットワーク(マルチホップメッシュネットワーク)
      • 東京電力スマートメーターの無線通信として採用
      • プロトコルIEEE802.15.4 を採用
        f:id:camelrush:20200819212228p:plain
  • MAN
    • Metropolitan Area Network の略。LPWAにより都市をカバーするネットワーク。
    • PAN(Personal) < LAN(Local) < MAN(Metropolitan) < WAN(World)

PAN

  • BlueTooth
    • 2.4Ghzを使用したPANの無線通信規格のひとつ。
    • プロトコルIEEE802.15.1 を採用
    • Verupに伴って速度を犠牲にして距離が伸びる
      • Bluetooth 3.0 では 速度が24Mbps 、距離は数十mまで届く
      • Bluetooth 5.0 では 速度が2Mbps、距離は数百mまで届く
  • BlueTooth Low Energy
    • 大幅な省電力化と小型化を実現。
    • 速度は減衰して 1Mbps と低速。
  • ZigBee
    • プロトコルには、IEEE 802.15.4 を使用
    • バイスに16進数4桁のアドレスを付与でき、65,536個のデバイス接続が可能。
    • 日本では 2.4GHz帯を使用(国による)
    • 通信速度は 100kbps~190kbps。通信距離は20m程度。
    • AESによるデータ暗号化が可能
    • 次世代規格に ZigBeeIP があり、こちらはIPv6対応。下位層ネットワークには6LoWPANを採用。
  • NFCFelica
    • ISO/IEC 18092 による 近距離無線通信を指す。Suicaなど、非接触ICカードで広く活用。
    • ISO/IEC 18000-3 仕様による電磁誘導によって、電源なくカードと通信が可能。
    • 通信速度は 424Kbps。
    • Felicaソニーが開発した、NFCの互換規格。ソニーの商標登録。
    • 完全互換ではないため、NFCの機器はFelicaにつながらない場合がある。
  • 6LoWPAN
    • IPv6 over Low power Wireless Personal Area Networksの略。
    • IPv6でメッシュネットワークを構築する仕様
    • 採用している無線規格は、上のZigBeeIPのほか、BlueTooth4.2、Wi-SUNなどがある。
  • ワイヤレスセンーネットワーク(WSN)
    • 複数のセンサー同士が構成するネットワークのこと。
    • いくつかの接続形態(トポロジー)がある。
      f:id:camelrush:20200819223747p:plain
  • 近距離無線通信による位置検出
    • それぞれの無線の電波強度からデバイスの位置を特定する技術

IoT検定対策3章 法律

法律

通信関連の法律

  • 電波法
    • 電波の利用には「無線従事者免許証」が必要。これは公共電波に対して混信や誤動作が発生し、サービス不全が発生することを避けるためである(なお、スマートフォンなどは携帯会社がまとめて許可を得るため、使用者ひとりひとりに免許は必要ない)
    • 上記に対し、以下の例外が存在する。
      • 特定小電力無線局(特定の用途のもの)
        • 2.4GHz帯、5GHz帯の無線機器(LAN、Wi-FiBlueTooth など)
        • 429MHz帯の無線機器(長距離無線機器)
        • 920MHz帯の無線機器(センサーネットワークやWi-SUNが該当)
          f:id:camelrush:20200817001330p:plain
      • 微弱無線局
        • 出力が微弱な機器。ラジコン用発振器、無線カードリーダー等。
        • ELPマーク認定機器
  • 電気通信事業法
    • 回線事業を行う際に必要となる法律。固定電話や携帯事業者だけではなく、ISPMVNO、警備サービス、情報サービスも該当する。
    • 通信内容の検閲・漏洩を規制する内容が盛り込まれている。
    • 喫緊の課題として「070」番号の枯渇問題がある。対策として2017年からIoT/M2M向けに「020」番号帯が用意されている。この番号帯の使用要件はペットの見守りや自販機・ATMの在庫管理、構造物のモニタリングなど、データ通信とSMSのメッセージが対象であり、音声通話は対象になっていない。
  • 国内における無線モジュールに関する許可
    • 電波の利用には原則「無線従業者免許証」が必要。
    • 上記以外で無線発信機を無免許のまま使用するには、対象の機器に技術基準適合証明等のマーク(技適マーク)が必要。
      f:id:camelrush:20200817003256p:plain
    • 技適マークは1台ずつに付与する「技術適合証明」と、製品全体に付与される「工事設計認証」がある。
    • アマチュア無線やパーソナル無線には、儀適マークだけではなく免許が必要である。
    • 技適マークとは別に微弱無線局の使用に関しては、「ELPマーク」を付与する必要がある。
      f:id:camelrush:20200817004304p:plain
  • 海外における無線モジュールに関する許可
    • 無線電波の利用は各国ごとに異なっているため、各国の法令に従う必要がある。
    • 例えば欧州であれば、電子機器における有害物質の使用制限(RoHS)にも適合する必要がある(CEマークf:id:camelrush:20200817011711p:plain
    • BlueToothの場合は、別途 BlueTooth SIGによる認定をとる必要がある。

製造および航空法に関する法律

  • 製造物責任法(PL法)
    • 製造物に対する瑕疵担保や搬送(取扱注意警告を怠ったなど)の責任
    • 製造業者、工業社、輸入業者が対象となる。
    • 建物(不動産)や、未加工の状態で販売された物(採れたての野菜など)、サービス、ソフトウェア、電気などの無体物は対象外である。ただし、製造物への組み込みプログラムはPL法の範囲となる。
    • 海外からの輸入部品などを使用する場合、PL保険に入っておくことが適当である。
  • ドローン規制法(改正航空法
    • 2015年12月に改正された航空法
    • 200g以上の遠隔操作または自動操縦により飛行させられるものが対象(200g未満のものについては、本法の対象外ではあるが、後述の自治体条例に従う必要がある)
    • 「空域」の規制
      • A.空港などの周辺
      • B.150m以上の高さの空域
      • C.人口集中地区の上空(具体的な範囲は、国勢調査の結果で設定) f:id:camelrush:20200817015700p:plain
    • 無人航空機の飛行の方法」の規制
      • 日中(日出~日没)に飛行させること
      • 目視範囲内で常時監視して飛行させること
      • 人または物体との間に30m以上の距離を保って飛行させること
      • 多数の人が集まる催し(祭礼や縁日など)の上空で飛行させないこと
      • 爆発物など危険物を輸送しないこと
      • 無人航空機から物と投下しないこと
  • 本法に加え、自治体の条例、「小型無人機等飛行禁止法」で別途禁止区域が定められている。

ライセンス

  • オープンソースソフトウェアライセンス
    • OSSの定義には、以下10項目が存在する。
      1. 再頒布の自由
      2. ソースコード
      3. 派生ソフトウェア
      4. 作者のソースコードの完全性(Integrity)
      5. 個人やグループに対する差別の禁止
      6. 利用する分野(Field of Endeavor)に対する差別の禁止
      7. ライセンスの分配(Disribution)
      8. 特定製品でのみ有効なライセンスの禁止
      9. ほかのソフトウェアを制限するライセンスの禁止
      10. ライセンスは技術的中立であければならない
    • 代表的なOSSライセンス例
      • GNUGPL):コピーレフト型。プログラムの二次著作物を作成したプログラムを作成する場合は、その二次著作物もGPLでなくてはならい(ソースを公開しなくてはならなくなる)
      • BSDライセンス:非コピーレフト型(MITも同種)。所定の表記が必要。
      • クリエイティブ・コモンズ著作権を保持したまま著作物を流通させ、受け手はライセンス条件の範囲で再頒布、リミックス可能。条件は以下のマークにより、後者の6通りの組み合わせで示される。 f:id:camelrush:20200817021226p:plain f:id:camelrush:20200817021243p:plain
  • オープンソースハードウェア
  • オープンデータ
    • 誰でも利用できる形式に加工され、公開されているデータ。行政機関の公開データなど。

疑問点

IoTデバイスのエッジプログラムとソフトウェア製造物責任法(PL法)

例として、ESP32デバイスArduinoコードを埋め込んで、BlueTooth対応デバイスとして製品化・販売した後、Arduinoコードに不具合があって誤動作した場合には、PL法の対象として処罰されることがあるか(保険対象となる?)