見出し画像

電子署名や電帳法について無料でなければ始まらない

今日は文がまとまらずに投稿するのに躊躇しました。

なにかと最近の政府がつくる法案は、利権ありき、と考えさせられてしまう。
「電子署名及び認証業務に関する法律」では、「電磁的記録の真正な成立の推定」だけで事足りるのにも関わらず、特定認証業務に関する認定制度が入れ込まれていたり、「電子帳簿保存法」でも、タイムスタンプやクラウドサービスなど無料でできないようになっている。また対応する会計ソフトも必要になるかのような仕組みがある。

「なぜか?」という疑問しかない。タイムスタンプも政府が認定する業者で、電子署名サービスを行うのも政府が認定する業者。しかも大小を問わずすべての企業や個人事業主が必要ないわば主食のコメのようになくてはならない契約書や税務に必要なものに対して要求しているにも関わらず、政府が認定しても果たして長期に渡り存在できる担保もない第三者への少なくはない費用の支払いを法律の法文の中でもっともらしく要求している。

最近では、せっかく民営化されたのにも関わらず逆戻りしている郵政や民営の農業組合にもかかわらずコメの安定供給と主食として安心して食べられるような価格にしようとしない農林族など、政府与党も投票数の確保と自らの政治家として国会に座れる保身が原理原則となってしまっているのにも通じているように感じられる。

政府と投票数との密着や利権を原理原則としては、そこでつくられる法律は、日本という場所で働き生活している人たちから、どんどん遠ざかる内容になっているのではないか。

政府とは一切関係ない法律に詳しい一般の人たちから、管理監督監視されていなければならないのかもしれない。株式会社の監査役会のような役割が現在の政府には欠けているのだ。投票で議員バッジをもつようになったとしても族議員や派閥議員や党議員では、思考に偏りが否めないのではなかろうか。有識者会議や第三者委員会など政府の息のかかったものではなく、議員以外の本当の意味での一般の人たちからランダムに選んで監査役をしてもらったらどうか。「群馬が独立国になったってよ 木部克彦(著) 言視舎」を真似てみるのもよいかもしれない。

さて、そんな実効性に高い障壁がある法律に対して、法の立法精神である原理原則を遵守し実行するための方法を自分なりに考えてみた。

もちろん政府が要求する高額費用のかかるものは利用しないのが前提であり、継続企業としても無駄な費用はかけず無料で合理的な方法を目指した。
無料で「電子署名及び認証業務に関する法律」で定めている第2条定義と第3条の条件を満たす要件の3つは次の2点になると考えられる。
1、作成当事者が本人であり、本人の意志のもとに行われること
2、作成された電磁的記録が改変されていないかどうか確認できること

電磁的記録で契約書を作成して、契約当事者同士が電子署名を付与する場面を想定してみる。

まず、このときの原理原則は、「契約自由の原則」となる。

契約当事者同士が契約内容を検討し、確定する。その後、契約内容について合意、電子ファイルとし、電子サインと電子印鑑を付与して保存。これで民法上での契約は成立した。(しかしこれだけでは裁判では不完全となるので、本人による本人だけが行うことができる適正に管理している電子署名が付与され「真正に戦慄したものと推定」される必要が生じる。)

ということで、紙の契約書での実印の代わりとなる電子署名により電子契約書が成立するわけだが、電子署名は本人を確認できるものではなければならない。この電子署名は、やはり、費用が発生するものがほとんどで法務局以外では、年数万円以上となってしまう。無料なものは、というと、「マイナンバーカード」となる。法人や個人事業所の名前はついていないが、代表者の本人確認ができるので、有効と考えられる。電子署名付与にマイナンバーカードを使えば、電子署名及び認証業務に関する法律の要求を無料で満足できる。

ここで電子署名がなぜ本人確認と改ざんされていないことを証明できるかについての仕組みはこうだ。

電子署名は、公開鍵暗号を使用したもので、公開鍵暗号が鍵となっている。公開鍵暗号については、

Wikipediaに「公開鍵暗号(こうかいかぎあんごう、英語: Public-key cryptography)とは、暗号化と復号とに異なる鍵(手順)を用い、暗号化用の鍵は公開できるようにした暗号方式である(復号用の鍵は秘匿)」と説明がある。

Wikipedia

秘密鍵と公開鍵という1対の鍵を使う。どちらの鍵も本人のものだ。秘密鍵は、本人しか使えないよう他人にもれないように保管し、電子署名や暗号化するときに使う。公開鍵は、他人に知られてもいいもの、ただし、秘密鍵での電子署名や暗号化されたファイルを通常のテキストファイルとして読めるように復号化するには、対になっている公開鍵でなければできない。この性質上、電子ファイルに電子署名した、あるいは、暗号化した本人の確認ができる。加えてマイナンバーカードなどであれば、政府公認の第三者機関によって本人であることが保証される。

電子署名及び認証業務に関する法律のもうひとつの成立推定条件の改変されていないかどうかについては、「ハッシュ値」による比較により確認可能になる。ハッシュ値についてWikipediaでは次のように説明されている。

「ハッシュ関数 (ハッシュかんすう、英語: hash function) あるいは要約関数[1]とは、任意のデータから、別の(多くの場合は短い固定長の)値を得るための操作、または、その様な値を得るための関数のこと。ハッシュ関数から得られた値のことを要約値やハッシュ値または単にハッシュという。
ハッシュ関数は、主に検索の高速化やデータ比較処理の高速化、さらには改竄の検出に使われる。例えば、データベース内の項目を探したり、大きなファイル内で重複しているレコードや似ているレコードを検出したり、核酸の並びから類似する配列を探したりといった場合に利用できる。 」

Wikipedia

つまるところ、公的に認められているマイナンバーカードなどを使い電子ファイルのハッシュ値に対して電子署名を付与することで、電子署名及び認証業務に関する法律を無料で満足させることができる。

でもこれではマイナンバーカードを日常的に使用しなければならなくなり作業が効率的ではないので、もっと効率よく安心して使える方法も考える。

Linuxでは一般的に「GnuPG」などを使い本人であることの秘密鍵と公開鍵を作成して使用している。仕様的にも使う場面も電子署名に使うマイナンバーカードなどと同じ。異なるところは、本人の公開鍵を認証してくれるところが公的ではない、というところだけ。ならば、自分の秘密鍵と公開鍵の情報のハッシュ値に対してマイナンバーカードで電子署名することで、間接的ではあるが、本人であることの保証されると考えられる。

一方、税務の電子帳簿保存法でも高額な費用支出を要求されるタイムスタンプや会計ソフト、クラウドサービスだが、タイムスタンプは税法でも緩和されている方法を使う。保存は無料のクラウドサービスを使う。ただし、ハッシュ値が記載され電子署名が付与されているファイルだけをクラウドに保存する。電子ファイル原本を保存してしまうと第三者の提供するサービスなので、情報漏えいするリスクがあるためだ。原本のファイルは大きなサイズでもハッシュ値のファイルであれば小さくて済み無料の範囲で使用することも可能だからだ。これで無料になるのだが、それでも第三者の提供するサービスを長期に渡り利用することはできない。なぜならサービスが永遠にかつ無料であることは誰も保証していないからだ。

さてどうしたものか。電子ファイルに作成日時を記載することはもちろん、ハッシュ値を生成するときに同時に日本標準時を提供しているNTPサーバーからそのコマンドを実行した時刻を取得して、ハッシュ値を保存するファイルにハッシュ値と一緒に記載すればいいのでは。そこにある時刻は、ハッシュ値と同時に存在し、ハッシュ値によりその後も改変されていないことが認められる。さいごに事務処理規程を作成して、それを遵守しながら運用することで、必要もない高額な費用の支出なく関連する法律を遵守することになる。

その手順は以下の通り。

不必要な費用支出は回避するため、OSはLinuxを使用する。保存するファイルもできれば100年後でも可読できる「テキストファイル」が望ましいが、いまのところ契約書などでは文の体裁も気にされたり、電子サインや電子印影もあったほうが見栄えが良いので、無料のオフィスソフトを使用して、独占的になってしまっている可能性があるがPDF形式を使う。内容についてはテキストファイルにして保存しておくことも長期的に可読性を担保するには有効だと考える。

契約当事者同士が契約内容を検討し、確定する。その後、契約内容について合意、電子ファイルとし、電子サインと電子印鑑を付与して保存。これで民法上での契約は成立した。しかしこれだけでは裁判では不完全となるので、本人による本人だけが行うことができる適正に管理している電子署名が付与されることで「真正に戦慄したものと推定」される。

1、電子ファイル(LibreOffide Writerなどワープロアプリ)で契約内容を記入する。
2、契約内容について契約当事者同士により検討、確認、同意する。
3、上記1、で作成された電子ファイルを電子契約書原本として保存する。
4、その際、必要であれば、契約当事者の電子サインや電子会社印影を付与する。
5、完成した電子契約書原本からハッシュ値を生成と同時に独立行政法人情報通信研究機構(NICT)が決定し日本全国にお知らせしている日本の標準時(その誤差は、数十万年から数百万年に1秒の誤差しかありません。標準電波(コールサインJJY)やその他の手段で送信され、電話の時刻サービスや放送局の時報の元としてご家庭に伝えられます)をインターネットマルチフィード株式会社(以下、MFEED)がNICTのネットワークによる時刻情報提供サービス(NTPサービス)[http://jjy.nict.go.jp/time/service/ntpservice.html]を利用することによって、日本標準時を提供するNTPサーバー(ntp1.jst.mfeed.ad.jp)からコマンド(以下、スケルトンライナー)を実行した日本標準時刻を取得し、電磁的記録の真正な成立の推定に必要な電子ファイルを作成する。
6、上記5、で作成された電子契約書のハッシュ値と日本標準時刻を記載した電子ファイルに対して、契約当事者同士が各自が電子署名を付与する。このとき電子ファイルには電子署名はひとつだけしか付与できないため、電子署名が付与された電子ファイル(以下、電子署名付き電子ファイル)は契約当事者の人数分作成される。
7、上記6、で作成された電子署名付き電子ファイルを契約当事者が各自のGnuPGの秘密鍵で暗号化した電子ファイルを各自のクラウドサービス(Googleドライブ等)にアップロードし保存する。

※クラウドサービスには長期的な使用可能性が全くない、PDFも未来永劫開ける保証はない、PDFに直接電子署名を入れるには世界中どこを探しても署名だけの使用でも高額の費用を毎年要求する1社だけのため(これの使用を要求しているのも法務局)、電子帳簿保存法でクラウドサービスの利用を指定要求していること、法務局でWindowしか利用できないアプリを強要していることなどについては到底理解が及ばないため、以下の対応が認められることを祈る。

「電子署名が付与されたデータについては、会社(あるいは個人)が指定した会社(あるいは個人)所有PC内に法律で定められた期間保存する。かつ、タイムスタンプの付与に変え、入力時刻及び訂正削除を記録し、確認できるようにする。この機能を満たすシステムとして変更履歴を記録・追跡するための分散型バージョン管理システムである「Git」(参照:https://git-scm.com/)を使用する。さらにバックアップ保存としてシステムにより作成登録日時、削除日時が自動で登録でき、登録順に番号が自動付与されるシステム「MariaDB」(参照:https://mariadb.com)を利用する。このように多重化することでデータを故意に改ざんすることに対して一定の拒絶感を持たせる。

8、以上により作成された電子契約書原本1つ、電子署名付き電子ファイル2つ、を契約当事者同士が各自保管する。

電子ファイルの内容について改ざん等がないことは、ファイルのハッシュ値によって担保され、クラウドあるいはローカルPCのGitやデータベースへ保存することで、その電子ファイルがクラウドあるいはローカルシステム上の登録日時より以前に作成されたことが担保される。クラウドへ保存する場合は、記載されているファイル名については秘匿するためファイルからは削除する。さらにこのファイルに対して双方が各自のマイナンバーカードを使用し電子署名したファイルのハッシュ値を保存したテキストファイルをGnuPGの秘密鍵で暗号化する。

これで保存するための原本、双方が電子署名した2つのファイルの3つできる。この3つのファイルをtarあるいはzipで固めて、双方が保存、保管する。ここまでれば、電子署名とタイムスタンプ付与したことと同等になるのではないだろうか。

検証の仕方はこうだ。
1、原本ファイルのハッシュ値を計算する。
2、双方のうちの1つのファイルを復号化しハッシュ値を取り出す。
3、もう1つのファイルを復号化しハッシュ値を取り出す。
1〜3のハッシュ値が同じなことを確認する。
ハッシュ値により改ざんがないことがわかる。
電子署名もマイナンバーカードを使っているので本人だと確認できる。
ファイルの存在時間については、原本ファイルとハッシュ値ファイルに記載されているため、復元したファイルの中で確認できるし、少なくとも、マイナンバーカードを検証することで電子署名の有効期間もわかるので、その期間内以前に存在していることを推定することができる。

さいごにもうひとつ政府に要望がある。

各自が使用するPCのOSについて限定しないでもらいたい。
わたしは、古く性能も低いPCでも使用に耐える「Linux」を使っている。

OSをインストール可能条件が変更され、高額PCに不必要な買い替えをさせられたり、不必要なAIなど入れられたり、マウスやタッチパネルで腱鞘炎にされたりしたくない。有料無料を問わず使用するアプリやソフトやサービスも長期に渡り使い続けられる保証はなく、それらに自分の大切な価値あるデータを預ける(保存する)ことには、経験上もうできないし、税金や社会保険の支払いもたいへんな思いをしているのに(全員を対象になる物価だけ上げ続け、一部のしかも労働契約しているひとだけの賃上げにも耐えられない)、PC関連まで、これ以上不必要な費用支出をさせないでもらいたい。


参考:

ガンカーズ: UNIXの哲学
1994年、Digital Equipment Corporation(DEC)のUnix Engineering Group (UEG)メンバーと、X Window System開発チームの一員であったマイク・ガンカースは1980年代の DEC自身のUNIX(Ultrix)の移植や、Ultrix Window Manager英語版) (uwm)の開発で得た経験と、その同僚プログラマーとの議論を活かし、「UNIXという考え方」が出版された。

この本は、1980年代のUNIX戦争の時代に、UNIXを様々なコンピューターに移植することに焦点を当て、その中で「ハードウェアやグラフィックデバイスの標準でないインターフェースを使用して得た効率より移植性を重視するべき」という考え方が書かれている。

9つの定理は以下の通りである。
1.スモール・イズ・ビューティフル (小さいものは美しい)
2.各プログラムが一つのことをうまくやるようにせよ
3.できる限り早く試作せよ
4.効率よりも移植しやすさを優先せよ
5.単純なテキストファイルにデータを格納せよ
6.ソフトウェアを梃子(てこ)として利用せよ
7.梃子の効果と移植性を高めるためにシェルスクリプトを利用せよ
8.過度の対話的インターフェースを避けよ
9.すべてのプログラムをフィルタとして設計せよ

Wikipedia

いいなと思ったら応援しよう!