増田ファクト(opendolphin-m)ユーザーってまだいたのか?

梅雨入り、鬱陶しいなあと思いながら、X チェックしてたら、いまだに opendolphin を自力運用?している人がいた。

過去ポストなど読むと、スタッフによる自力運用だという。

引用ポストでも書いたが、よほどスキルに自信がない限りやめておいた方がいいと思いますが。

(追記)なお、opendolphin-m (いわゆる増田ファクト)は OpenDolphin HTML/PDF Viewer のサポート外です。

猪股先生あたりがそのうち言うと思うけど

・ソースコードが明らかにされていない

・開発者とされていた増田茂医師がデータ外部コンバートツールは不要と主張

しているからです。

われわれは、この手のソフトがないと現在のガイドライン基準を満たせないと考えていますが、そうではないという主張自体はその人のポリシーだと思うのでそのこと自体にとやかくいうつもりはありません。

要らないと言ってる人に押し売りしてもしょうがないでしょうから。

 

PKI の数学的基礎

(H)PKI の数学的基礎、フェルマーの小定理(Fermat’s little thorem)。

証明は、以下のように数学的帰納法を用いるのがわかりやすい。

ところで「私も昔は数学科でブイブイ言わせていて・・・」とイキっている数学畑出身の医師でこういうところに目配せできている人はほぼいない。

で、こんなポストをしたんだが、案の定、逆張りくん発生。

めんどくさいからブロックした。

確かに実務的に使うだけなら、証明に関する知識までは不要なんだが、

ライブラリ(OpenSSL など)の改変が必要

というような場合、そもそも証明のロジック程度は頭にないとソースコード読めんよ。

 

ORCA をアンインストール

そういえば、ORCA をアンインストールしたい場合、どうするんだっけ?と調べたら、スカイエスエイチさんの Q&A のページに辿り着いた。

hasegawa@orca:~$ sudo /etc/init.d/jma-receipt stop
Stopping jma-receipt: glserver monitor glauth.

hasegawa@orca:~$ sudo -u orca dropdb orca
DROP DATABASE

hasegawa@orca:~$ sudo apt-get –purge remove jma-receipt postgresql
(省略)
Do you want to continue? [Y/n] y
(省略)
OK to remove these files and destroy the data? (y/n):y

hasegawa@orca:~$ sudo reboot
一度再起動を行いプロセスを綺麗にします。

だそうです。

ところで、なんで ORCA に手を出しているかというと標準型電子カルテのレセコン呼び出しが ORCA API になることがほぼ確定したとわかったから。

しかし、ベンダーはまた微妙な感じになるだろうなあ・・・。

 

イルカは言葉を覚えたか?

歴史的評価の段階に入ってきたせいか、「開いたいるか」ことオープンドルフィンに関して力の入った記事が散見されるようになった。

2.7m 系や HTML/PDF Viewer のメイン開発者の猪股先生なぞこれまでにも言いたいことは山ほどあったんじゃないかという気するが、実はリアルタイムではそれほど多くは語ってはいない。

私もこの記事を書いている最中にそういう気分になったのだが、「彼ら」と対話する気が起きなかったのではないかと推測する。
明らかな事実誤認は指摘しておく必要あるが、変なリアクションされても困るし・・・といった風に。

彼らの語る技術的な内容もそうなのだが、強調するポイントが予想の斜め上をいくことが多々あり、さらにそれが攻撃的な口調で語られるものだから、リアルタイムであったら、とてもまともに返せそうな気がしない。

キュイキュイと鳴く

技術的なことで目についたのは、例えばこれ(↓)。

「ある種の dolphin では、カルテ記載内容の保存に(オリジナル系列の blob ではなくキャラクタベースの) clob を使っていた。 varchar (可変長文字列)で定義されている場合には、カルテ記載内容原文が簡単なクエリで取得できでしまうので、それは欠点である」ということが言いたいのだろうが、私はこの内容には違和感を感じる。

dolphin に関していえば、ある程度技術のある人ならば「永続化にあたっては特別な暗号化はされていない」という認識だと思う。

確かにドルフィンは、Java beans が保持している情報を

xml →バイナリ→ base64 文字列

という風に変換はするのだが、バイナリ変換は文字通り「変換」だし、base64 による変換も

暗号⇄復号(encrypt⇄decrypt)」

と捉えるより

符号⇄復号(encode⇄decode)」

と捉えるのが一般的だと思う。

暗号化(encrypt)と符号化(encode)は概念からして違う。
暗号を復号するには未知の手がかりを解く必要があるが、符号化された情報を復号するには、決まって手順に従えばいいだけだからだ。

だから、カルテ記載内容を varchar カラムに直で書こうが、変換して格納しようが、本質的にはそう大きな差はない。

ーーどちらにせよ本格的な暗号化はされていないのだから。

少なくとも私はそう考えているが、増田氏はその差を「欠点」と大袈裟に捉えているようだ。これでは、話は噛み合わないだろう。
後述するが、逆に「ドルフィンは真正性を満たしているか」といったより大きな問題には、これとは対照的に彼は全くと言っていいほど何も語らない。

イルカたちの沈黙

そう、彼らは、予想外のことに実に多弁に語る一方で、重要なポイントになりそうなことは語らない。

よく「ドルフィンはリリース直後から真正性が満たせているか疑問の声が上がっていた」と評されているが、もちろん、リリース直後などは私のアンテナには引っかかっておらず、あくまで人聞きの伝聞情報だ。

この点に関しては、もやもやしていたのだが、周囲から、「例えばこれ」と見せられた資料が以下のもの。

なるほど。

日付は2014。この頃でもこういった疑問(「真正性で突っ込まれそう」と @ktomii99 氏は書いている)は既に上がっていたのですね。

しかし、なぜ、@masudanaika は、この手の疑問に明快に答えてこなかったのだろうか?

(追記)上図の @kat_bun_tokushi は、徳島橋本医院で opendolphin-m を導入した人らしい。
まったくの偶然なのだが、先日(2024/06/23)、その橋本医院の橋本公昭先生とネット上でお会いして同様の疑問をしたのだが(↓)
やはり、明快な反応は得られなかった。

@ktomii99 氏の提案

ところで、@ktomii99 さんの言っている内容は興味深いので若干コメントする。

医療現場に出てみればわかるが、各種医療機器からの出力がすべて dicom 規格に準拠しているわけではないし、電子化されているわけでもない。中には出力方式がいまだに感熱紙印字というものもある。
この場合、文字が読み取れるうちにスキャナで読み取り、システムに取り込む必要がある。

取り込みの際の条件は現在ではガイドラインで既に示されていて、タイムスタンプと電子署名が必須だとされている。(なお、私はこの条件には疑問を持っていたりするのだが、本稿の主旨とは関係ないのでここでは触れない)

だから、この時代にタイムスタンプと電子署名に言及した @tomii99 氏の指摘はかなりもっともなのだが、あくまでこの二つは外部データを電子カルテに取り込む際の条件であって、電子カルテから出力された情報の真正性を担保する条件ではない。

まず、1日分のカルテ記載内容をまとめてPDF一枚にして・・・というやり方は論外。医師が複数人いた場合、担当していない患者のカルテに別の人が署名することになってしまう。これでは何のために署名をしているかわからない。

だから、このやり方を若干修正して「カルテ記載毎にその記載をした医師が電子署名する」というのが最低条件になるのだが、実はこれでも不十分だ。

記載したカルテをどういう形式で出力してもいいが、例えば、ある人のカルテを 1/1(1月1日) に記載、さらに 1/3 に修正した場合、署名した出力文書は 2 つあり、確かにこの 2 ファイルの間では修正履歴は追跡できる。
ところが、同じ出力形式で 1/2 の文書ファイルを偽造、同様に署名した場合、このファイル群のみからでは、このカルテが本物か偽物かまでは判定できない。

惜しい線まではいっているのだが、出力産物がファイル単位となってしまうため、でっち上げたファイルを作成・追加することでこのシナリオも破綻する。

この問題に対して 2.7m 開発陣が示した解決策は、実に鮮やかなものだった。

あるカルテは、データベース上では古いバージョンも含めて全て保管されているのだから、これらを別のアプリを使って抽出・表示させればいいというものだ。

上図の例では、ある患者のカルテはクライアントからは3件しか見えないが、編集歴があるため、データベース上では11件記録されている。その全てを可視化している。

詳しくは『Save the DolphinS』を参照。

このアプリ単独でも、真正性は担保されていると考えるが、@tomiii99 氏が提案したシナリオもこれで救われる。
データベースと照合し、そこに登録されていないカルテは、後から追加したもの、つまり偽物だと判定できるようになるからだ。

イルカも鳴かずば・・・

冒頭で「彼ら」の言動に違和感を覚えると書いた。

今では、この原因についてある程度推測はされている。
スキルのばらばらの「中の人」が複数人いて、誰からのチェックも受けずにてんでばらばらに好き勝手なことを喋っていただけだったからと。

しかし、それは今だから推測できたことであって、リアルタイムであったら、そこまで見切るのはなかなか難しいだろう。

それは異世界の生物が突如として覚えたての人語を話すような状況に似ている。
言っていること自体は理解できるのだが、内容が奇異でコミュニケーションをとるところまでは至らないといったような。

そしてその中の人の一人が今どのような取り扱いになっているかは周知のことだろう。

「イルカも鳴かずば、撃たれまい」なのだ。