diverta / onecard-fido

MIT License
0 stars 0 forks source link

[macOSツール再構築対応] CCID I/Fの再稼働化 #745

Closed makmorit closed 1 year ago

makmorit commented 1 year ago

概要

macOS バージョン11以降(Intel mac、Apple silicon問わず)で稼働しなくなってしまった、管理ツールのCCID I/Fについて、再稼働させるようにするための対応を行います。 (#740 ご参照)

背景・経緯

元々macOSでは、nRF52840アプリケーションのCCID I/Fはサポートされません。 それを専用ドライバーで利用可能にしているという経緯がありました。 (こちらのドキュメントに記載の通り) もしかすると、macOSのバージョンが進んだことにより、現在管理ツールで使用しているCCID I/F動作用のAPI等が動作しなくなった可能性もあります。 ただし現状、事象の詳細を掴めていないので、macOS側、ファームウェア側の両方の観点から、問題の調査と解析を進めたいと思います。

makmorit commented 1 year ago

進捗

もしかすると、macOSのバージョンが進んだことにより、現在管理ツールで使用しているCCID I/F動作用のAPI等が動作しなくなった可能性もあります。 ただし現状、事象の詳細を掴めていないので、macOS側、ファームウェア側の両方の観点から、問題の調査と解析を進めたいと思います。

専用ドライバー(バージョン1.5.1)をビルドしたOSが、macOS バージョン10.15であったため、それ以降のバージョンのmacOSで動作しなかった、というのが事象の詳細のようです。

したがいまして対策としては、専用ドライバーをmacOS バージョン11以降の環境で再作成する必要がありそうです。 さしあたり、Intel macに導入したmacOS 12.6.3+Xcode14.2の環境で、専用ドライバーのビルドを行い、再度動作確認を実施してみたいと考えます。

makmorit commented 1 year ago

進捗

したがいまして対策としては、専用ドライバーをmacOS バージョン11以降の環境で再作成する必要がありそうです。 さしあたり、Intel macに導入したmacOS 12.6.3+Xcode14.2の環境で、専用ドライバーのビルドを行い、再度動作確認を実施してみたいと考えます。

専用ドライバーのビルドを、Intel mac、Apple siliconの両環境でテストいたしました。 共に、問題なくビルド、動作することが確認できました。

また合わせて、Commit d7e995b7026f36の対応により、両環境用の専用ドライバーのインストーラーも作成しました。

次作業日以降で、実機でインストール・テストを実施し、問題が発生しないかどうか、確認を行う予定です。

makmorit commented 1 year ago

対応結果の確認

889a80dまでの対応の結果、最新版のCCIDドライバーを作成し、インストールすることにより管理ツールのCCID I/Fについて、再稼働できるようになった事を確認いたしました。

最新版CCIDドライバーのビルドおよびインストール手順は下記の通りになります。  CCIDドライバー修正ビルド手順  CCIDドライバーインストール手順