Hex NFC リリース:配信開始

究極の NFC リーダー&ライターが、iOS の App Store に登場しました。しかも無料です!

Matthew Scott5 分で読めます
光るチップの上に iPhone が置かれ、16 進数のバイトが一面に並ぶ中を輪が広がっていく。横には「Hex NFC 配信開始!」の文字と「App Store で無料配信中」のボタン。

ついにこの日がやってきました! 開発に 4 か月、Apple の審査に 1 か月をかけて、ようやくここまでたどり着きました。Hex Pro にとって初めてのアプリのリリースであり、この後も多くのアプリが続きます。

Hex NFC は NFC ツールの決定版です。iOS デバイスにできることを限界まで引き出す、非常に幅広い機能を備えています。

基本機能

NFC ツールに期待される機能は、すべてそろっています。

  • チップ情報の読み取り
  • 現在の状態のスキャン
  • レコードの書き込み:テキスト、URL、SNS のリンク、検索エンジン、ファイル、メール、連絡先、電話番号、テキストメッセージ、FaceTime、地図上の場所、暗号資産のリンク、Wi-Fi 接続
  • パスワードロック
  • 恒久ロック

プラスアルファの機能

それに加えて、真に網羅的で、初心者にとってもプロにとっても究極といえるツールにしたいと考えました。

  • 詳細コンソール(APDU)
  • 工場出荷状態のチップのフォーマット
  • メモリダンプ
  • パスワード試行回数の上限(恒久ロック)
  • ePassport チップの読み取りとパスポートの復号
  • 日本の交通系カードの読み取り(Suica、PASMO など)
  • プリセットの作成とチップのクローン

パスポートと交通系カードを読み取る技術は、この種のアプリの中ではかなり珍しいものです。このアプリに注ぎ込んだ品質と労力を示すものとして、誇りに思っている点です。

対応ハードウェア

このアプリは、実物のシリコンチップを幅広く使ってテストしています。ベンチテストを終えた今、私の引き出しは使い潰したチップでいっぱいです。完全にテストし、動作を確認したチップは次のとおりです。

  • NTAG210μ、NTAG213、NTAG216、NTAG424 DNA
  • MIFARE Ultralight EV1、MIFARE Ultralight C
  • MIFARE DESFire EV3
  • ICODE SLIX、ICODE SLIX2
  • FeliCa(日本の交通系カード、PASMO/Suica)
  • eMRTD / ICAO 9303(現行のパスポート)

非対応が確認されているチップは、ごくわずかです。

  • MIFARE Classic EV1

上に挙げたものと同種のその他のチップも、動作するはずです。iOS デバイスで読み取れるすべてのチップについてエミュレーターを開発し、手元の在庫にあった類似アーキテクチャのチップとの照合や、公開されているデータシートとの照合によって、間接的に検証しました。

ソース公開

アプリは無料で、ソースコードは GitHub で公開しています。誰でも中身を確かめ、活用できます。リポジトリは BSL 1.1 ライセンスのもとにあるため、ご自身の商業的な利益のために使うことはできませんが、開発者にとって非常に役立つものがたくさん入っています。たとえば、さまざまな種類の NFC チップがさまざまなコマンドにどう応答するかをシミュレートできる包括的な NFC エミュレータースイートがあり、実物のシリコンで徹底的にテストしています。

デバッグビルドには、開発者向けに、いわば「実機で行う」ユニットテストの機能もあります。NFC タグをスキャンするだけで、一続きのコマンドが手際よく流れ、すべての機能をテストできます。不良チップをまとめて簡単に見つけるのに役立ちます。

無料だと言いましたっけ?

もちろん、ソースコードを公開している以上、Hex NFC アプリで収益を上げるつもりはまったくありません。ただし将来、相互プロモーションのために、自社の他のアプリへのリンクをときどき載せることはあるかもしれません。唯一の難点は、テスト用に購入した NFC チップには実際にお金がかかっていることです。感謝してくださるユーザーの方々が、その費用の一部を回収するために協力してくだされば、とても助かります。費用の完全な内訳と寄付のページをこちらに用意しており、ここから私たちを支援していただけます。慈善だとは考えないでください。集まったお金は、おそらく、実機でのテストをさらに重ねるための NFC チップの追加購入に充てられます。NTAG215 はまだ手に入れられていないチップの一つで、同じ種類のものが他にもいくつかあります。

ドキュメントを完備

Hex Pro Apps のウェブサイトにある Hex NFC のページには、包括的なドキュメントが用意されています。ドキュメントは、Hex Pro が対応を約束しているすべての言語に翻訳されています。

次は?

リリースしたとはいえ、すぐに勢いがつくとは思っていません。私たちは新顔で、既存のユーザーもわずかです。それでも、「それを作れば、彼らはやってくる」という姿勢で臨んでいます。ユーザーが増えるにつれて、不具合の報告も届くと思います。報告はいつでも support@hex.pro まで直接メールでお送りいただけますし、さらに良いのは GitHub のリポジトリで Issue を登録していただくことです。

次にリリースする予定のアプリは Sol Alarm と Nepali Companion です。どちらも同じくらい長い期間をかけて開発してきた上質なアプリで、まさに今、仕上げの段階に入っています。