Tech Blog of Beatrobo, Inc.

Web Bluetooth API で BLE デバイスにブラウザから接続する

| Comments

こんばんは。 Beatrobo竹井です。

この記事は Bluetooth Low Energy Advent Calendar 2015 の20日目の記事です。

先日 JavaScriptでIoT !! JS Board Shibuya #6 LTナイト! に行った際に Web Bluetooth API の存在を知りました。

この Web Bluetooth API を利用すれば、ブラウザだけで Web サービスと BLE デバイスとがコミュニケーションできるようになるというわけです。

以前開発していた konashi-js-sdk では、ブラウザ上の JS で BLE デバイスとコミュニケーションを実現するため、BLE と通信する Native 側とブラウザ内の JS とが双方向にコミュニケーションできるカスタム WebView を作り、それを konashi.js アプリの中に埋め込んでいました。

それが Web Bluetooth API だと特別なアプリのインストールいらずで、普通のブラウザ上で konashi.js 相当のことができるようになります。

今回は、Web Bluetooth API の現状を整理しつつ、Web Bluetooth API を使って Proximity Profile デバイスとコミュニケーションする JS を作って見ようと思います。

コードは https://github.com/hideyuki/proximity-profile-with-web-bluetooth-api に実行可能な状態で置いています。

SECCON 2015 Online CTF Writeup

| Comments

お久しぶりです。Beatrobo竹井です。

12/5 15:00 〜 12/6 15:00 に開催された SECCON 2015 Online CTF の参加レポートと正解できたチャレンジの解法の解説をお送りします。

今回初参加で、MITMというチーム名で私ひとりでのチャレンジ。まったく予習をしていなかったのでQRコードやパケット解析はほぼわからず、結局900点の202位で終了となりました。

時間内に解けた問題は以下。

  • Start SECCON CTF (50)
  • SECCON WARS 2015 (100)
  • Reverse-Engineering Android APK 1 (100)
  • Reverse-Engineering Hardware 1 (400)
  • Connect the server (100)
  • Command-Line Quiz (100)
  • Last Challenge (Thank you for playing) (50)

締め切りの10分後に”Reverse-Engineering Hardware 2 (500)“の答えがわかってしまい、1日目にぐっすり寝たのを後悔。

弊社ではPlugAirというハードウェアな認証キーを作っておりハードウェア周りが得意なので、ハードウェア系の問題 “Reverse-Engineering Hardware 1&2” の詳細な解説をしていきます。

ハードウェアのリバースエンジニアリング系の問題は、配点が高い割に回路構成さえ把握できれば悩むところがあまりない問題ばかりだったのでオススメです。

コードは https://github.com/hideyuki/SECCON-2015-Online-CTF-Writeup に実行可能な状態で置いています。

IRKitを使ってHipChatからエアコンを制御する

| Comments

どうもはじめまして。Beatrobo竹井(@HideyukiTakei)です。

これからBeatroboエンジニアたちの技術的な話をここにまとめていこうと思います。

第一弾はIRKitに関して!

IRKitとは、@maaashさんが開発しているWiFi機能の付いたオープンソースな赤外線リモコンデバイスです。Arduinoのソースコードや基板の回路図も公開されています。また、IRKitをローカルネットワークから制御するためのDevice HTTP APIや、インターネット越しに制御するためのInternet HTTP APIも用意されています。

今回はこのIRKitを使ってHipChatからエアコンを制御する方法を順を追ってご紹介します!