[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[orca-users:15586] Re: Windows標準Linux環境WSL2



パディング処理がいい加減だったので、win 向けのサンプルプログラムをチェックして
再度計算させたら同じ署名値

0x7b, 0x6d,・・・,0x43, 0x3c

が得られたので、多分、これでいいんだと思います。
https://twitter.com/H_Inomata/status/1784262696462073993

ただ、パディング処理がどの程度必要かは仕様書読んでも
はっきりしないところがあるので、もうちょっと詰めたい
ところです。

確かに、仕様書
https://www.jahis.jp/standard/detail/id=1077
では
「パディングはカード外で行う」
と明記されてますが、具体的な手法は示されていないようです。

また、マイナカードでは通常の APDU コマンド
 0x00 0x2A 0x9e 0x9a Lc [データ] Le
では「なく」
 0x80 0x2A 0x00 0x80 [PKCS1 DigestInfo]
で署名できるようです。
https://www.jnsa.org/result/pki/seminar/2017/2017-008.pdf

ところで「HPKI を普及させたい」というなら、
win 向けの『カードドライバ』を用意するだけでなく
APDU コマンドの仕様を公開してほしいな、と思います。
確かに各 HPKI カードのハード面に依存しない PKCS#11 インターフェイス
を使えるのは(APDU の呪文のようなコマンドを呼び出さなくていいので)
便利なのですが、Mac 向けの『カードドライバ』が提供されない限り
Mac ユーザーは取り残されてしまいます。

標準型電子カルテでは、私も技術作業班で直接議論に参加しましたが
日本の政策はここらへんが曖昧になりがちだという印象を持ってます。
最大公約数的な「わかりやすい」護送船団方式的な普及を図っていくのか、それとも
「ついて来れる人だけついて来い」とばかりに細部の仕様もオープンにする
乱暴だが「自由」な普及方針を取るのか。
難しいところだとは思いますが、国民の一人としては「両方やってほしい」というのが
本音です。


猪股弘明
精神保健指定医
*****************************************************************************
Hiroaki Inomata
MD: Psychiatry BA: Physics
PHAZOR, LLC: CEO https://phazor.info
-- Medical Open Source Software Activities --
OsiriX (open-source ver): contributor, Horos: contributor
HorliX: developer https://phazor.info/HorliX
OpenDolphin-2.7m: developer
https://github.com/Hiroaki-Inomata/OpenDolphin-2.7m (source code)
...etc

2024年4月27日(土) 20:13 Hiroaki Inomata <inomatah0612@xxxxxxxxx>:
>
> 手が空いたので Mac で HPKI の秘密鍵を使って暗号処理できないか再検討。
>
> 結論から言うとできました。
> https://www.facebook.com/hiroaki.inomata.9/posts/pfbid032K1rBKQdFPyWtQEuSficE2Q34oge46bcqra3BTmeYQQViFjzjTzHn2ZbGcC6CGSl
>
> 処理としては『HPKI カードドライバ』なるものは使ってません。
>
> MacOS 向けにデバイスドライバが公開されているカードリーダーを
> CryptoTokenKit フレームワークを経由して直接操作する、という手法を
> 取りました。
>
> できないわけはないと思っていたのですが、やればできるものですね。
> (ただしパディング処理は適当です)
>
> 感想めいたことを言わせてもらうと、日医電子認証センターのやり方に若干の違和感を感じました。
> HPKI Chrome対応署名プラグインなどは
> https://www.jmaca.med.or.jp/vendor/ChromeHPKICD.html
> windows 利用の場合、それなりに便利だとは思うのですが、これ、
> windows にインストールされているカードドライバをPKCS#11インターフェイス経由で
> 操作するものですよね。
> Mac では動かないので、chrome 拡張としてはブラウザの良さを引き出しているように
> 思えません。
> できるかどうか試していませんが WebUSB 使えば、Mac だろうが win だろうが、機種を選ばず
> 操作できると思うので、そちらのシナリオで検討してほしいところです。
>
>
> 「MacOS 向けにデバイスドライバが公開されているカードリーダー」と書きましたが
> 今回使ったのは IOデータのこちらの機種。
> https://www.amazon.co.jp/gp/product/B0B5YXBH5J/?th=1
>
> ICカードリーダーは APDU というプロトコルを使って、PC と情報のやり取りをするので、
> Mac から APDU の各種コマンドをカードリーダーに送り込むことができれば、
> HPKI カードの各種操作ができるだろうという狙いです。
>
> 処理の流れを簡単に書いておくと
>
> 1. HPKI カードには署名計算用のアプリが仕込まれているので、まずこのアプリを選択する
> 2. 秘密鍵を使うには、PIN 解除が必要なので、PIN を解除するファイルを選択する
> 3. PIN 解除
> 4. 秘密鍵を選択
> 5. 処理させたいデータとともに計算命令を出す
>
> というシナリオです。
> (公開鍵証明書の読み出しは必ずしも必須ではないです。検証はできませんが)
> 処理が正常終了すれば、暗号化された 256byte のバイナリ列+0x9000 が返ってきます。
>
> (続く、かも)
>
> 猪股弘明
> 精神保健指定医
> *****************************************************************************
> Hiroaki Inomata
> MD: Psychiatry BA: Physics
> PHAZOR, LLC: CEO https://phazor.info
> -- Medical Open Source Software Activities --
> OsiriX (open-source ver): contributor, Horos: contributor
> HorliX: developer https://phazor.info/HorliX
> OpenDolphin-2.7m: developer
> https://github.com/Hiroaki-Inomata/OpenDolphin-2.7m (source code)
> ...etc
>
> 2024年2月7日(水) 23:09 Hiroaki Inomata <inomatah0612@xxxxxxxxx>:
> >
> > 上野様
> >
> > 返信ありがとうございます。
> >
> > >上記につきましては、下記URLに追記しました。
> > >https://www.orca.med.or.jp/receipt/tec/api/index.html
> >
> > 確認しました。
> > これだけでもあるとないとは大違いだと思います。
> >
> > >ただ、HPKIカードドライバそのものがMacOSに対応していないはず
> >
> > JPKI は(おそらくHPKIも)ハード的には NFC の type B というもので、
> > iso でその規格がかなり細かいところまで決まっていて、iso 自体も
> > 国際規格を参考にしていると思います。
> > ここで言っていいのかわかりませんが、海外の某ライブラリ使ったら
> > デバイスドライバなしで JPKI の各種情報読んでくれました。
> > 相当、規格書読み込んでないとつくれないと思うんですが、
> > 海外のオープンソース勢はすごいですね。
> > おそらく、アイコムさんもこのやり方を踏襲したんだと思います。
> > そうでないとデバイスドライバなしで署名モジュールは作れないと
> > 思います。
> > しかも、Java ライブラリで提供するとはなかなかやりますね。
> > 感心しました。
> >
> > >あと、力及ばずARMはサポートできていません
> >
> > 余力があったら、ぜひお願いします。
> >
> >
> > 猪股弘明
> > 精神科医
> >
> > 2024年2月7日(水) 19:13 ueno <t.ueno@xxxxxxxxxxxx>:
> > >
> > > 猪股先生
> > >
> > > ご指摘ありがとうございます。
> > >
> > > > http://(WebORCA IP):8000/api/api01rv2/patientgetv2?id=1
> > > > に変更になってますね。
> > > > どこかに書いておいて欲しかったです。
> > >
> > > 上記につきましては、下記URLに追記しました。
> > > https://www.orca.med.or.jp/receipt/tec/api/index.html
> > >
> > > スタッフによりますと、MacOSに対応した電子署名モジュールは
> > >
> > > 株式会社アイコム
> > > https://www.ai-com.co.jp/aidsign/
> > >
> > > セイコーソリューションズ株式会社
> > > https://www.seiko-sol.co.jp/
> > >
> > > の製品が対応しているらしいですが、詳細は不明です。
> > > ただ、HPKIカードドライバそのものがMacOSに対応していないはずなので、
> > > そのあたりの確認は必要かと思います。
> > >
> > > あと、力及ばずARMはサポートできていません。
> > >
> > > 上野 拝
> > >
> > > 2024年2月7日(水) 1:20 Hiroaki Inomata <inomatah0612@xxxxxxxxx>:
> > > >
> > > > 上野さん
> > > >
> > > > WebORCAを久々にインストールしたのは
> > > >
> > > > >私も動作確認程度にしか使わない
> > > >
> > > > というちょっとした動機からです。
> > > > なんの同作確認かというと api 経由で処方箋CSVを返却してくれるかどうか確認したかった
> > > > というのが真意です。
> > > >
> > > >
> > > > それに関していくつか、要望と感想。
> > > >
> > > > まず、WebORCAになって api が
> > > > http://(WebORCA IP):8000/api01rv2/patientgetv2?id=1
> > > > ではなくて
> > > > http://(WebORCA IP):8000/api/api01rv2/patientgetv2?id=1
> > > > に変更になってますね。
> > > > どこかに書いておいて欲しかったです。
> > > > 例えば
> > > > https://www.orca.med.or.jp/receipt/tec/api/index.html
> > > > とかに。
> > > > 404 が返ってきたので、エンドポイントが変更になったのはすぐに気がついたのですが、
> > > > どう変わったかは検索かけないとわかりませんでした。
> > > >
> > > >
> > > > 処方箋CSVの作成返却に関しては
> > > > https://ftp.orca.med.or.jp/pub/data/qualified/online_qualified/02_2023-11-16_ORCA-elepre_handling.pdf
> > > > に
> > > > http://(WebORCA IP):8000/api/api21/medicalmodv2?class=05
> > > > で行うことのようなことが書かれていて、api 叩いたら、確かに xml に
> > > > <Prescription_Csv type="string">(処方箋CSVフォーマットの何か)</Prescription_Csv>
> > > > が出来ていて、ちょっと感動しました。
> > > > が、ORCA 単独使用時の中途終了データを返却してくれる機能(api)があると便利かなと思いました。
> > > >
> > > > というのは、医師はどういうわけかMac好きが多くて、なんらかの形で手元のMacに処方箋CSV
> > > > があれば、そこで(ローカル)署名入れたいと思うのが人情?じゃないかと思うからです。
> > > > Mac 向けの電子署名モジュールが少ないようなんですが、カードリーダーベンダーが
> > > > デバイスドライバを公開&処方箋CSVさえあれば、そこから先は、それほど難しくない
> > > > ように思います。
> > > > ちなみに JPKI の秘密鍵では署名できたように思います。
> > > > https://twitter.com/H_Inomata/status/1753697097239633960
> > > > (HPKI はまだ手元にないので未検証)
> > > >
> > > >
> > > > あと、WebORCA は、64-bit ARM (ARMv8/AArch64) Ubuntu 向けにはビルドしてない
> > > > のでしょうか?
> > > > 最初、arm Mac 上の Ubuntu 仮想環境に WebORCA 仕込もうかと思ったのですが、
> > > > (おそらく)ターゲットアーキテクチャの違いでできませんでした。
> > > >
> > > >
> > > > 猪股弘明
> > > > 精神科医
> > > >
> > > > 2024年2月6日(火) 19:42 Hiroaki Inomata <inomatah0612@xxxxxxxxx>:
> > > > >
> > > > > >可能ならば、WSL2上の Ubuntu22 の IP アドレスを固定したいのですが、
> > > > > >良い方法はありますか?
> > > > >
> > > > > 姑息的なのですが、ある程度自己解決。
> > > > > https://twitter.com/H_Inomata/status/1754804509229137948
> > > > >
> > > > > Win11ホストマシンのLAN上のIPアドレスが 192.168.2.130 の時、
> > > > > このアドレスに送信されたパケットをホストから見た
> > > > > ゲストOS(WebORCA)のIPアドレス(172.24.94.173 とする)に転送すればいいだけ
> > > > > なので、ホストWin11 パワーシェル上で
> > > > >
> > > > > netsh interface portproxy add v4tov4 listenport=8000
> > > > > listenaddress=0.0.0.0 connectport=8000 connectaddress=172.24.94.173
> > > > >
> > > > > とポートプロキシを一つ追加するだけで、一応は LAN 上から WebORCA とお話はできます。
> > > > > (WebORCA→送信元ブラウザ はデフォルトの NAT でよしなにやってくれるようです)
> > > > >
> > > > >
> > > > > 「姑息的」と書いたのは、WSL2 の仕様上、ゲスト Ubuntu を再起動させるとIPアドレスが変わって
> > > > > しまうようで、いちいち上のコマンドを打ち込む必要があるから。
> > > > >
> > > > > ちゃんとやるなら、仮想スイッチ作って、NATテーブル決めて・・・とやるのでしょうが、
> > > > > 私も動作確認程度にしか使わない予定なので、これで十分かな。
> > > > >
> > > > >
> > > > > 猪股弘明
> > > > > 精神科医
> > > > >
> > > > > 2024年2月5日(月) 0:18 Hiroaki Inomata <inomatah0612@xxxxxxxxx>:
> > > > > >
> > > > > > 長谷川様
> > > > > >
> > > > > >
> > > > > > お世話になっております。
> > > > > >
> > > > > > 遅ればせながら私も試してみました。
> > > > > >
> > > > > > 確かに WebORCA のインストール自体は簡単ですね。
> > > > > >
> > > > > > 可能ならば、WSL2上の Ubuntu22 の IP アドレスを固定したいのですが、
> > > > > > 良い方法はありますか?
> > > > > >
> > > > > > 検索かけると情報はぱらぱらと出てくるのですが、どれを信用してよいやらという
> > > > > > 感じです。
> > > > > > ある程度安定動作させたいので、もしすでにお試しのようなら
> > > > > > ご教示ください。
> > > > > >
> > > > > >
> > > > > > 猪股弘明
> > > > > > 精神科医
> > > > > >
> > > > > >
> > > > > > 2023年12月26日(火) 11:39 Hasegawa Tsukasa <hasegawa@xxxxxxx>:
> > > > > > >
> > > > > > > お世話になっております、スカイエスエイッチ長谷川です。
> > > > > > >
> > > > > > > Windows標準Linux環境「WSL2」を試してみました。
> > > > > > >
> > > > > > > https://xtech.nikkei.com/atcl/nxt/column/18/02647/111500001/
> > > > > > >
> > > > > > > Ubuntu22.04ベースですので、あっさりWebORCAが動きました。
> > > > > > > GUIは無いので、クライアントはWindowsのGoogle chromeに
> > > > > > > なります。手元の検証環境としては使えそうです。
> > > > > > >
> > > > > > >
> > > > > > > ★★★☆☆☆★★★☆☆☆★★★☆☆☆★★★☆☆☆
> > > > > > > 株式会社スカイ・エス・エイッチ http://www.sky.sh/
> > > > > > > 日医総研日医IT認定サポート事業所
> > > > > > > 長谷川 司 hasegawa@xxxxxxx
> > > > > > > 京都市伏見区新町5丁目495北本ビル4F401
> > > > > > > TEL 075-622-7385 FAX 075-622-7403
> > > > > > >
> > >
> > >
> > >
> > > --
> > > 日本医師会ORCA管理機構
> > > 上野 智明
> > > t.ueno@xxxxxxxxxxxx
> > > 03-5981-9681
> > > 080-4912-6787
> > > https://www.orcamo.co.jp/
> > > https://www.orca.med.or.jp/
> > > @orcadays