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 プロトコルに最適な選択肢でしょうか?

ブログ    
ブログ    
ブログ    

推薦する

人工知能アルゴリズムを採用したGoogle検索は恐ろしい

今日まで、PageRank アルゴリズムは、ユーザーが望むものを迅速に正確に提供するための Goog...

今後5年間の15の主要なテクノロジートレンド

私たちの生活、仕事、交流の仕方に革命をもたらす技術の進歩によって、未来は常に形を変えています。今後 ...

2021年4月のドローン業界の重要な動向の概要

2021年3月に入り、ドローン業界では新製品の登場、用途の深化、大きな出来事の連続など、発展は活気に...

将来、仕事はロボットに置き換えられるのでしょうか?専門家:現段階ではまだ困難はあるものの、人工知能は人々をより自由にするだろう

3月23日(北京特派員 柯李)冬季オリンピックの水中聖火リレーを完走するロボットから、冬季パラリンピ...

人工知能とモノのインターネットを組み合わせた5つの技術応用トレンド

今年末までに、世界中で接続されるデバイスの数は 500 億台に達すると予測されており、モノのインター...

Weiboはどのように実装されていますか? Weiboの背後にあるアルゴリズム

導入Weiboは多くの人が利用するソーシャルアプリケーションです。毎日Weiboを閲覧する人は、オリ...

柔らかいロボットの進化:優しくて怖い

[[387359]] 30年以上前、エドワード・シザーハンズの「ナイフがなければ、君を守ることはでき...

この記事では、ニューラルネットワークBPアルゴリズムの原理とPythonでの実装について説明します。

私は最近、BP アルゴリズムを体系的に研究し、この研究ノートを書きました。私の能力が限られているため...

...

TensorFlow2020: Tensorflow.js を使用してコンピューター ビジョン アプリケーションを実行する方法は?

この記事は、公開アカウント「Reading the Core」(ID: AI_Discovery)か...

最後にもう一度、一貫性のあるハッシュについて長々と話します。

一貫性のあるハッシュについて見てきましたが、一貫性のないハッシュもあるはずです。私たちが普段話題にし...

売上を予測するための 5 つの機械学習テクニック

売上予測は、機械学習 (ML) の一般的かつ重要な用途です。予測売上は、ベースラインを確立して新しい...

2021年、多くのAI企業が株式公開に向けて競争を始めました。どの企業がより有望だと思いますか?

[[382172]]人工知能企業が株式を公開すると、株主は成長の配当を分け合えるようになるのでしょ...

推奨システムにおける自然言語処理 (NLP) の応用

[[195357]]パーソナライズされた推奨はビッグデータ時代に欠かせない技術であり、電子商取引、情...

エンドツーエンドの自動運転は、Apollo や autoware などのフレームワークに取って代わるでしょうか?

この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...