「PCにつながるリモコン」でお困りの皆様こんにちは。・無線ゲームパッドは「起動」という動作が必要で、面倒すぎて論外わかります(レヴュースタァライト風)。あなたはBLEリモコンを使うしかないでしょう(ウテナ風)。「BLEリモコン」で素朴に探すと、KKPというCerevoじみた代物しか見つからない。蛇の道は蛇で、Xiaomiの照明ブランドYeelightが出している自社商品用リモコンがBLEだということを発見した。私はこれを入手して調べた。以下にその結果を述べる。・プロファイルやペアリングといったものは存在しない意味がわからないと思うが、アドバタイズだけですべての用を済ませている。そのために同じアドバタイズを3回連続で送信している。同じボタンタップで複数回動作しないよう、ボタンタップのたびにインクリメントする値がペイロードに入っている。BLEでないプロトコルなのに規格上BLEなのは、各国の無線関係の認証を通すためだろう。・ペイロードは暗号化されているリモコン上のボタン(6つある)を同じ順番で巡回して押していったときのペイロードの例を以下に示す。アンダーバーは直前のボタンタップ時のパケットと同じ値という意味。__-__-__-__-__-__-72-__-__-__-__-__-__-91-CD-CB-56-18-7F-__-__-__-8A-__-__-__-__-__-__-71-__-__-__-__-__-__-38-9D-63-EC-91-DB-__-__-__-63-__-__-__-__-__-__-70-__-__-__-__-__-__-37-D2-BC-96-09-E1-__-__-__-B8-__-__-__-__-__-__-6F-__-__-__-__-__-__-DF-2C-3B-97-90-79-__-__-__-7D-__-__-__-__-__-__-6E-__-__-__-__-__-__-48-26-EF-F5-20-0E-__-__-__-A0-__-__-__-__-__-__-6D-__-__-__-__-__-__-3B-C9-14-97-A4-5C-__-__-__-72-__-__-__-__-__-__-6C-__-__-__-__-__-__-B1-CD-DE-E9-35-B3-__-__-__-D8-__-__-__-__-__-__-6B-__-__-__-__-__-__-EF-52-D4-FA-97-54-__-__-__-20-__-__-__-__-__-__-6A-__-__-__-__-__-__-F5-16-AD-A4-54-6E-__-__-__-F6-__-__-__-__-__-__-69-__-__-__-__-__-__-4E-6B-43-CA-EE-80-__-__-__-83-__-__-__-__-__-__-68-__-__-__-__-__-__-0C-A2-CA-7F-5C-B3-__-__-__-2A-__-__-__-__-__-__-67-__-__-__-__-__-__-44-5F-2A-5D-60-E8-__-__-__-97-__-__-__-__-__-__-66-__-__-__-__-__-__-06-7E-B1-81-B4-28-__-__-__-99-__-__-__-__-__-__-65-__-__-__-__-__-__-0F-D6-29-18-FF-14-__-__-__-80-__-__-__-__-__-__-64-__-__-__-__-__-__-7D-82-DA-6B-9B-50-__-__-__-2A-__-__-__-__-__-__-63-__-__-__-__-__-__-30-1B-B2-BB-D6-6D-__-__-__-63-__-__-__-__-__-__-62-__-__-__-__-__-__-F5-D1-03-38-EA-04-__-__-__-4E-__-__-__-__-__-__-61-__-__-__-__-__-__-DF-C1-3D-01-B7-77-__-__-__-E5-__-__-__-__-__-__-60-__-__-__-__-__-__-26-70-13-70-E3-69-__-__-__-C4-__-__-__-__-__-__-5F-__-__-__-__-__-__-EF-68-E1-E6-80-C0-__-__-__-8D-__-__-__-__-__-__-5E-__-__-__-__-__-__-BB-F1-10-21-21-9D-__-__-__-CE-__-__-__-__-__-__-5D-__-__-__-__-__-__-09-84-8A-7F-C3-5D-__-__-__-79-__-__-__-__-__-__-5C-__-__-__-__-__-__-4E-D5-B8-4A-5E-FA-__-__-__-D2-インクリメントするバイトが61・67・6D・72のペイロードは、どれも同じボタンを押しているが、ご覧のとおり暗号化されているので、同じだとは判別できない。計算量のいらない単純な暗号だろうとは思うが、私の手には負えない。疑問――なぜ暗号化されているのか?私には見当がつかない。照明用リモコンを汎用BLEリモコンとして使おうという人間など、おそらくこの世に100人くらいしかいないので、対策する価値があるとは思えない。ペアリングしない以上は、同じペイロードを送るだけで動作してしまう。Alibabaを見ていると、こういうBLEリモコンを作るODMのサービスが動いているらしいので、そのODM業者の都合なのかもしれない。どんな都合なのかというと、やはり見当がつかない。