Zigbeeプロトコルスタックの暗号化アルゴリズムについての簡単な説明

Zigbeeプロトコルスタックの暗号化アルゴリズムについての簡単な説明

先ほど、Zigbee プロトコル スタックのいくつかの原則と構造を紹介しました。すでに理解しているかどうかは分かりません。ここでは、Zigbee プロトコル スタックの暗号化アルゴリズムに焦点を当てます。 Z-stack は、強力な機能、安定したパフォーマンス、高いセキュリティを備え、Zigbee2006 を包括的にサポートします。セキュリティといえば、今日のテーマです。CC2430 ハードウェアは、128 ビット AES 暗号化アルゴリズムをサポートしています。Zigbee プロトコル スタックでは、同じデバイスからの干渉を回避し、他のデバイスによる監視を防ぐために、このテクノロジを使用してデータを暗号化し、データ セキュリティを向上させます。

AES (Advanced Encryption Standard) は、米国国立標準技術研究所による電子データの暗号化仕様です。金融、通信、政府情報などのデジタル情報の暗号化方法として認知されるようになると期待されています。AES は、電子データの保護に使用できる新しい暗号化アルゴリズムです。具体的には、AES は、128、192、256 ビットのキーを使用して、128 ビット (16 バイト) ブロックでデータを暗号化および暗号化できる反復対称キー ブロック暗号です。キー ペアを使用する公開キー暗号化とは異なり、対称キー暗号化では、同じキーを使用してデータを暗号化および暗号化します。ブロック暗号によって返される暗号化データのビット数は、入力データと同じです。反復暗号化では、順列と置換が繰り返されるループ構造が使用されます。

Z スタックでは、128 ビットの暗号化が使用されます。まず、128 ビットのキーが必要です。キーが異なれば、暗号化されたコンテンツも異なります。Z スタックでは、DEFAULT_KEY="{0x01、0x03、0x05、0x07、0x09、0x0B、0x0D、0x 0F、0x00、0x02、0x04、0x06、0x08、0x0A、0x0C、0x0D}" で定義されます。

この暗号化アルゴリズムは、Z-stack の Zigbee プロトコル スタックに実装されています。使用する必要がある場合は、このサービスを直接有効にするだけです。以下では、主に Z-stack の暗号化アルゴリズムを有効にします。

Z-stack1.4.3 暗号化アルゴリズムを有効にする方法:

1. f8wConfig.cfg ファイルで -DSECURE=1 を設定します。これは SECURE=1 を意味します。この変数は、Zigbee プロトコル スタックの if ステートメントの条件として使用されます。条件が true のステートメントは、暗号化アルゴリズムをオンにする関数です。したがって、最初の手順は、このパラメータを 1 に設定することです。

2. ZGlobals.c の uint8 zgPreConfigKeys = FLASE; を uint8 zgPreConfigKeys = TRUE に変更します。

3. 関数 nwk_global.c で変更できるキーを準備します。

  1. CONSTバイトdefaultKey[SEC_KEY_LEN] =
  2. {
  3. #定義されている場合 (APP_TP) || 定義されている場合 (APP_TP2)
  4. // ZigBee 適合性テストのキー
  5. 0x00、0x00、0x00、0x00、0x00、0x00、0x00、0x00、
  6. 0x89、0x67、0x45、0x23、0x01、0xEF、0xCD、0xAB
  7. #それ以外
  8. // 社内テストのキー
  9. 0x00、0x01、0x02、0x03、0x04、0x05、0x06、0x07、
  10. 0x08、0x09、0x0A、0x0B、0x0C、0x0D、0x0E、0x0F、0x0E の整数
  11. #終了
  12. };

Zigbee プロトコル スタックでは、暗号化アルゴリズムを使用する場合、ネットワーク内のすべてのデバイスでこのアルゴリズムを有効にする必要があり、各デバイスのキーは同じである必要があります。そうでない場合、結果は非常に深刻で、ネットワークが正常に通信できなくなります。これは、ネットワークが暗号化されていないデータや同じキーで暗号化されたデータを認識せず、ネットワーク層にまったく送信されないためです。

暗号化アルゴリズムをオンにした後、コードを変更する必要がある場合は、キーを変更するか、フラッシュを一度消去する必要があります。そうしないと、予期しないエラーが発生し、規則性が失われます。通常の方法は、フラッシュを一度消去することです。これにより、ネットワーク全体のキーと同じであることが保証されます。

この暗号化アルゴリズムを使用する利点は、ネットワークで実験を行っている場合、コーディネーター、ルーター、または端末を追加しても既存のネットワークの状態に影響がないため、複数の並列実験を実行できることです。

<<:  CSS ボックスモデルのアルゴリズムとアプリケーションの詳細な説明

>>:  3DES 暗号化アルゴリズムは S/MIME プロトコルに最適な選択肢でしょうか?

推薦する

...

プログラマーは数年後には時代遅れになるということをご存知ですか?

かつて Computer World 誌は、「プログラミングは 1960 年までに消滅する」という記...

...

行列のランクと行列式の意味を1つの記事で理解する

工学部の学生として、私たちは行列や行列式などの線形代数の知識を長い間使用してきました。この記事では、...

15年以内に恐竜を繁殖させる、マスクは恐竜を​​月に送りたいのか?

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

Google がディープラーニング ライブラリ TensorFlow Fold をリリース、動的計算グラフをサポート

ほとんどの機械学習プロセスでは、トレーニングと推論に使用するデータを前処理する必要があります。前処理...

...

OpenAI CEOアルトマン氏の突然の解任に関する分析

今日は一緒に楽しく OpenAI について話し合いましょう。もともと書きたくなかったのですが、自メデ...

機械学習のための数学をどのように学ぶのでしょうか?

機械学習では数学が非常に重要です。アルゴリズムにおけるモデルコードの理解と、エンジニアリングにおける...

この戦略は不安定なGANを安定させるのに役立ちます

敵対的生成ネットワーク (GAN) は、非常に幅広い応用が期待できる非常に強力なタイプのニューラル ...

...

ペアデータなしで学習!浙江大学らは、マルチモーダルコントラスト表現C-MCRの接続を提案した。

マルチモーダル対照表現 (MCR) の目標は、異なるモダリティからの入力を意味的に整合された共有空間...

...

ストレージパフォーマンスのボトルネックを解消し、AIアプリケーションの迅速な開発を実現

古典的な「樽理論」によれば、樽にどれだけの水が入るかは、一番低い木材によって決まります。 [[397...