(私はネイティブ スピーカーではないため、用語が正しくない可能性があります。申し訳ありません。)
私は、個人使用のために AVR マイクロコントローラー間で無線を介してデータを送信しています。送信されたデータが、許可されたクライアントの 1 つから発信されたものであることをクライアントに証明してもらいたいと考えています。これは、否認防止を必要とせず、共有鍵を事前に定義できることを意味します。さまざまなアプローチについて調査を行った結果、自分の要件に最も適したアプローチを選択するには、何らかの支援が必要であることがわかりました。
最大限のセキュリティは必要ないことをご理解ください。潜在的なスクリプトキディの隣人が数時間以内に侵入するのを防ぎたいだけです. 今日の時点で、平均的な消費者向け機器を使い始めるのに数週間かかる場合でも、私は問題ありません。
私が送信しているメッセージはサイズがかなり小さく (数バイトのペイロードのみで 30 バイト以下)、頻度は 30 メッセージ/分以下です。
使用例の 1 つは、無線でメッセージを処理ユニットに送信する動作検出器です。処理ユニットは、別のメッセージを無線でライト スイッチに送信します。輸送に集中しないでください。この質問は、データの信頼性のみに関するものです。
フラッシュと RAM が非常に限られている 20 MHz AVR マイクロコントローラーでクライアント/サーバー ソフトウェア (C) を実行しています。そのため、高いデータ レートを提供しながら、コード サイズと RAM の使用率が小さいソリューションを探しています。
20 バイトのデータからハッシュを作成する MD5 実装 (C) でいくつかのパフォーマンス テストを行ったところ、遅すぎる可能性があることがわかりました。MD5 の実装だけでは要件を解決できないことを理解しています。ハッシュのパフォーマンスを評価するためだけにテストを行いました。
コメントありがとう