修正02.02   ↑UP 

日本のプログラムの著作権の問題点

−ドイツとの比較−

1999.01.15 井 上 雅 夫
   目  次
1.はじめに
2.日本とドイツのプログラムの著作権の歴史
 (1)スペースインベーダーパートU事件地裁判決(日、1982年)
 (2)著作権法改正(日、1985年)
 (3)ドイツ最高裁判決(独、1985年)
 (4)マイクロソフト事件地裁判決(日、1987年)
 (5)紋谷暢男他著「プログラム著作権とは何か」(日、1988年)
 (6)中山信弘著「ソフトウエアの法的保護(新版)」(日、1988年)
 (7)システムサイエンス事件高裁決定(日、1989年)
 (8)ドイツ著作権法改正(独、1993年)
 (9)まとめ
3.システムサイエンス事件高裁決定について
 (1)事件の概要
 (2)高裁の法的判断
 (3)高裁の本件プログラムについての判断
 (4)高裁が具体的に検討したコード
 (5)地裁が具体的に検討したコード
 (6)翻案とデッドコピー
4.マイクロソフト事件地裁判決について
5.おわりに
  脚注
 

1.はじめに

 ドイツ最高裁は1985年、プログラムが著作権の保護を受けるためには平均以上の創作性が必要である旨判示した。しかし、1993年のドイツ著作権法の改正では、プログラムの保護能力の決定のために質的又は審美的な基準が適用されることはないと規定し、1985年の最高裁判例を明確に否定している。この改正はECディレクティブ(ヨーロッパ委員会の指令)に合わせるためのものであるが、外国との条約等と自国の最高裁判例が対立する場合、玉虫色の法案を作成するのが普通ではないだろうか。ところがドイツはECディレクティブをそのまま受け入れたばかりではなく、より明確に自国の最高裁判例を否定する立法を行ったのである(ドイツ著作権法(訳2))。なぜ、ドイツの立法関係者はそのようなことを行ったのだろうか。

 プログラムの著作物の創作性についての現在の日本の判例学説は1985年のドイツ最高裁判決に類似したものである。したがって、1993年に改正されたドイツ著作権法とは明らかに異なっている。ドイツの法律が日本において適用されるはずはないから、ドイツ著作権法と日本の判例学説が相違していても、基本的には問題はない。しかし、もし、ドイツ最高裁判例に重大な欠陥が潜んでいたことが原因で否定されたのだとすれば、日本が1985年のドイツ最高裁判決に類似した判例学説に従っていることは危険なことではないだろうか。
 

2.日本とドイツのプログラムの著作権の歴史

 これまでの日本とドイツのプログラムの創作性についての法的見解を年代順に振り返ってみよう。
 
(1)スペースインベーダーパートU事件地裁判決(日、1982年)
 日本で最初にプログラムが著作物として保護されたのは1982年のスペースインベーダーパートU事件(夏井研)であり、著作権法にプログラムについての明文の規定がなされる前のことである。この事件はインベーダーゲームの改良版に関するもので裁判所は次のように判示している。[1]

 「本件プログラムは本件ゲームの内容を本件機械の受像機面上に映し出すことを目的とし、その目的達成のために必要な種々の問題を細分化して分析し、そのそれぞれについて解法を発見した上で、その発見された解法に従って作成されたフローチャートに基づき、専門的知識を有する第三者に伝達可能な記号語(アッセンブリ言語)によって、種々の命令及びその他の情報の組合せとして表現されたものであり、当然のことながら右の解法の発見及び命令の組合せの方法においてプログラム作成者の論理向思考が必要とされ、また最終的に完成されたプログラムはその作成者によって個性的な相違が生じるものであることは明らかであるから、本件プログラムは、その作成者の独自の学術的思想の創作的表現であり、著作権法上保護される著作物に当たると認められる。」

 なお、1984年のパックマン事件(夏井研)はゲームの影像の動的変化と音声によって表現されたものを映画の著作物として保護した事例であるのに対して、このスペースインべーダーパートU事件はゲームのプログラムを学術的な著作物として保護した事例である。

(2)著作権法改正(日、1985年)
 1985年の改正で、著作権法(上野さんのHP)に次のようにプログラムが規定された。
 
第2条@ この法律において、次の各号に掲げる用語の意義は、当該各号に定めるところによる。
一 著作物 思想又は感情を創作的に表現したものであって、文芸、学術、美術又は音楽の範囲に属するものをいう。
   ・・・・・
十の二 プログラム 電子計算機を機能させて一の結果を得ることができるようにこれに対する指令を組み合わせたものとして表現したものをいう。

第10条@ この法律にいう著作物を例示すると、おおむね次のとおりである。
一 小説、脚本、論文、講演その他の言語の著作物
   ・・・・・
九 プログラムの著作物
   ・・・・・
B 第1項第9号に掲げる著作物に対するこの法律による保護は、その著作物を作成するために用いるプログラム言語、規約及び解法に及ばない。この場合において、これらの用語の意義は、次の各号に定めるところによる。
一 プログラム言語 プログラムを表現する手段としての文字その他の記号及びその体系をいう。
二 規約 特定のプログラムにおける前号のプログラム言語の用法についての特別の約束をいう。
三 解法 プログラムにおける電子計算機に対する指令の組合せの方法をいう。

(3)ドイツ最高裁判決(独、1985年)
 1985年ドイツ最高裁は、プログラムの著作権侵害を認めた控訴審判決を取り消し、次のように判示した。 「個々の要素の配列と組み合わせが現金取引プログラムの通常の経過によって予定されておらず、単なる技術的−機械的結合以上のものである点についての確認を欠いている。何によって争いの対象である現金取引プログラムが既存の現金取引プログラムに対して際立っているのか同様に依然として不明である。当法廷は相応の確認なしでは明白に平均以上の創作的給付が存在するかどうかについて調査することができない。」(久々湊伸一訳「コンピュータプログラムに関するドイツBGHの判決」工業所有権法研究Vol.36−4,No.107,P.17〜25)
 
(4)マイクロソフト事件地裁判決(日、1987年)
 この事件のプログラムは1979年にウイリアム・H・ゲイツ外の技術者がNECのPC8001用に開発したベーシックインタープリタであり、著作権法が改正される前の1982年に提訴されたが、判決(夏井研)は改正後の1987年になされた。そのためか、プログラムの著作物とはいわずに、学術の範囲に属する著作物と判示している。当時は、まだ、MS−DOSは存在せず、ベーシックインタープリタが言語プロセッサであると同時にOSの機能も兼ねていた時代である。被告は秀和システムトレーディングであり、ベーシックインタープリタを逆アセンブルし、解読し、ラベル及びコメントを付して、その全部を図書に掲載した事件である。裁判所は次のように判示している。

 「本件著作物は、ベーシック言語によって、本件パソコンに入力された命令またはプログラムを逐語的に処理して、命令を入力した者が意図した結果を出力するように、プログラムの構成、ルーチン、サブルーチンの活用、組み合わせに至るまで、プログラム言語に関する高度な専門的知識を駆使して作製されており、プログラム作製者の学術的思想が表現されていることが明らかであり、学術の範囲に属する著作物に当たるということができる。

 ところで、被告らは、本件著作物は、いわゆるオペレーティングシステム(基本ソフト)の一つであるところ、右は、アプリケーションプログラム等と異なり、効率的かつ高速なデータの処理のみを目的とするものであって、著作者の思想とか感情は排除されるものであるから、著作権法上の保護を受け得ない、と主張するので、以下この点につき、検討する。

 一般にコンピュータプログラムについては、一定の目的に達するための解決手段は唯一ではなく、さまざまな解決手段の選択が可能である。本件のように本件パソコンに搭載するためのベーシックインタープリタを作製する目的においても同様であって、前に詳細に検討したとおり、作製にあたっては、目的達成のため種々の問題を細分化して分析し、それぞれについて解法を発見し、右発見された解法に従って、アッセンブリ言語によって、命令及びその他の情報の組み合わせを記述して、プログラムを完成させたのであって、そのすべての過程は、一定のものではなく、作製者の個性や思想を反映させることによって異なるのみならず、むしろ、その個別性に価値を見出すことができるものである。この点は、ゲームのプログラムやアプリケーションプログラムであっても、本件のようなオペレーティングシステムであっても少しも変わるところはない。」

(5)紋谷暢男他著「プログラム著作権とは何か」(日、1988年)
 「『創作的』といいますのは、作者独自の思想感情が表現されていること、つまり、他人のまねをしていないことというほどの意味で、他に例の無いような独創的なものであることまで求めていません。プログラムの場合、指令の組み合わせ方には作者の個性が出ており、通常同じ機能をもつプログラムであっても作成者により異なった表現になりますので、ごく単純に誰が作っても同じ表現になるようなプログラムや他人のものを写しとったようなプログラムを除き、『創作的』という要件を満たすといえます。」(32頁〜33頁)

(6)中山信弘著「ソフトウエアの法的保護(新版)」(日、1988年)
 「プログラムは一定の目的をコンピュータに正確に作動させるものであり、そこで用いられる言語・記号は極めて限定されており、かつ文法も厳格であり、自然言語と比較するならばその選択の幅は狭く、アルゴリズムが同一であるならば結果的に表現が類似してしまうことも多い。」(100頁)

 「通常、著作権法における創作性は、特許法における進歩性とは異なり、単に感情が表れている程度でよいと解されており、異論はないようである。したがって、幼稚園児の稚拙な絵画でも著作権は発生するが、ほとんどの場合、事実上誰もそのような著作物を利用しないというだけのことであり、社会に対して何ら不都合を与えることもない。しかし、著作権法が技術的創作物を扱うとなると、創作性のレベルについて再検討することが必要となろう。すなわち、技術水準からすれば陳腐であり取るに足りないプログラムについて、たまたま最初に開発した人に、その死後50年もの間保護する必要があるのであろうか。陳腐な技術は不要な技術であり、誰かが独占しても弊害は少ないとの見解もあるが、全くの誤りである。陳腐な技術であるが故に、それに独占権を与えるとすると社会的に混乱の生じるものも、少なくない。著作物の中でも芸術作品については、多少なりとも感情が表現されていれば保護されて然るべきであり、そうすることによる弊害はほとんど考えられない。これに対して、機能作品については、創作性の概念の中に、特許法における進歩性のような考え方を導入する必要があろう(17)。そのような考え方を採用しない限り、他の技術保護法との比較上、平仄のあわない極めて不都合な結果となろう。したがって、プログラムにおいても、通常のエンジニアであるならば容易に作成し得るようなものは保護すべきではない。創作性についてのこのような解釈は他の著作物の場合と全く異なるものであり、現行法の解釈として、果たしてこのようなことが可能かという点については、当然異論もありえよう。しかし、著作権法が事実上技術保護法となってしまっている現在、創作性の概念についても構成し直す時期に来ていると考えられる。前述の保護範囲の問題と同様、創作性の概念についても、著作物の種類に応じて差等を設けてしかるべきであろう。」(104頁)

 ここで参照された(17)は上記(3)に示した1985年のドイツ最高裁判決である。

(7)システムサイエンス事件高裁決定(日、1989年)
 高裁決定(夏井研)は次のように判示している。

 「抗告人は、CA−9プログラムはCA−7Uプログラムを翻案したものであると主張する。

 しかしながら、あるプログラムがプログラム著作物の著作権を侵害するものと判断し得るためには、プログラム著作物の指令の組合せに創作性を認め得る部分があり、かつ、後に作成されたプログラムの指令の組合せがプログラム著作物の創作性を認め得る部分に類似している事が必要であるのは当然であるが、CA−7Uプログラムのうち抗告人が指摘する部分には、指令の組合せに創作性を認め得ることは疎明されていないというべきである。

 すなわち、プログラムはこれを表現する記号が極めて限定され、その体系(文法)も厳格であるから、電子計算機を機能させてより効果的に一の結果を得ることを企図すれば、指令の組合せが必然的に類似することを免れない部分が少なくないものである。したがって、プログラムの著作物についての著作権侵害の認定は慎重になされなければならないところ、証拠<略>によれば、別紙目録二()ないし()記載の装置においては計測モード切替え、キーボード入力、計測エリア設定、計測及び共有メモリ書込みの機能はすべてハードウェアが行い、CA−7UプログラムあるいはCA−9プログラムが相当すべき作業はプリンタ部分(計測データ等が共有メモリに書き込まれるのを待ってこれを読み出し、プリンタ用コードに変換して出力する。)のみであること、『本体側よりデータ入力後の処理ルーチン』の指令の組合せは、ハードウェアに規制されるので本来的に同様の組合せにならざるを得ないこと、『プリンター動作不能時の処理ルーチン』(すなわち、プリンタ待ちの処理ルーチン)は、CA−7UプログラムもCA−9プログラムも共に極めて一般的な指令の組合せを採用していること、及び別紙目録二()ないし()記載の装置においては4000H以降がRAMエリアであるから、サブルーチンのスタックを区切りのよい4100Hにセットすることは常識的であることが一応認められる。なお、プログラムにおける『処理の流れ』自体は、アルゴリズム、すなわち著作権法第10条第3項第3号に規定されている『解法』であって著作物としての保護を受けない部分であるから、プログラムの創作性とは無関係である。

 以上のとおり、CA−7Uプログラムのうち抗告人が指摘する部分の指令の組合せに創作性を認めることは困難であることに加え、CA−7Uプログラムが12キロバイトであるのに対しCA−9プログラムは763バイトであり、しかも抗告人が両プログラムの類似部分として挙げるのは極めてわずかなバイトにすぎないことをも併せ考えれば、CA−9プログラムがCA−7Uプログラムを翻案したものであるとの疎明の心証を得ることは到底できない。」

(8)ドイツ著作権法改正(独、1993年)
 1993年に改正されたドイツ著作権法はプログラムの著作権について次のように規定している。

第2条 保護される著作物
(1)文芸、学問及び美術の保護される著作物には、特に次のものが属する:
  1.文字の著作物、演説及びコンピュータプログラムのような言語の著作物;
     ・・・・・
(2)この法律の意味における著作物は単に自らの知的な作品であるにすぎない。

第69a条 保護の対象
(1)この法律の意味におけるコンピュータプログラムは企画資料を含むあらゆる形態のプログラムである。 
(2)与えられる保護はコンピュータプログラムのすべての表現形式に適用される。コンピュータプログラムの要素の基礎をなすアイディア及び原理は、インターフェースの基礎をなすアイディア及び原理を含め、保護されない。
(3)コンピュータプログラムは、著作者自身の知的な創作の成果であるという意味において、それが個性的な著作物であるとき、保護される。その保護能力の決定のために、その他の基準、特に質的又は審美的な基準が適用されることはない。
(4)コンピュータプログラムに対して、この節の中で特段の定めがない限り、言語の著作物のための一般的な規定の適用がなされる。

 なお、第69a条はECディレクティブ(ECLAB)に基づいて作成されたものであるが、第69a条(3)項及び(4)項のアンダーライン部分は、ECディレクティブには該当個所がなく、ドイツが独自に付け加えたものである。

(9)まとめ
 以上からわかるように、日本では最初はプログラムの著作物を通常の著作物と同様に考えており、また、1985年1月1日から施行された改正著作権法においても、プログラムの著作物の創作性について、他の著作物と異なるとする規定はない。なお、著作権法第10条第3項には、「プログラムの著作物を作成するために用いるプログラム言語、規約及び解法は保護しない」旨規定されているが、これはドイツ著作権法第69a条(2)項のアイディア及び原理は保護されない旨の規定に対応しており、プログラムの創作性とは別の問題である。

 しかし、その後、「ソフトウエアの法的保護(新版)」において、「プログラムは一定の目的をコンピュータに正確に作動させるものであり、そこで用いられる言語・記号は極めて限定されており、かつ文法も厳格であり、自然言語と比較するならばその選択の幅は狭く、アルゴリズムが同一であるならば結果的に表現が類似してしまうことも多い。」、「創作性の概念の中に、特許法における進歩性のような考え方を導入する必要があろう。・・・通常のエンジニアであるならば容易に作成し得るようなものは保護すべきではない。・・・創作性の概念についても、著作物の種類に応じて差等を設けてしかるべきであろう。」という見解が表明された。

 そして、システムサイエンス事件において東京高裁は、「プログラムはこれを表現する記号が極めて限定され、その体系(文法)も厳格であるから、電子計算機を機能させてより効果的に一の結果を得ることを企図すれば、指令の組合せが必然的に類似することを免れない部分が少なくないものである。したがって、プログラムの著作物についての著作権侵害の認定は慎重になされなければならない」と判示し、このシステムサイエンス事件高裁決定が日本におけるプログラムの著作物の創作性についての基本的な判例とみなされている。

 これに対して、ドイツでは、1985年の最高裁判例によってプログラムが著作権の保護を受けるためには平均以上の創作性が必要とされたが、1993年のドイツ著作権法の改正でこの最高裁判例を積極的かつ明確に否定している。どちらが正しいのだろうか?

 
3.システムサイエンス事件高裁決定について

 以下、システムサイエンス事件について詳細に検討する。

(1)事件の概要
 この事件に関連して、仮処分事件の地裁決定高裁決定、及び本案訴訟の地裁判決(いずれも夏井研)がある。これらによると、システムサイエンス株式会社(以下「システム」という)は設立直後から東洋測器株式会社(以下「東洋」という)の依頼によって製品を開発し、製造した製品の全てを東洋に納入し、しばらくの間は売り上げのほとんどは東洋へのものであり、初期の製品では東洋はシステムに顧客が希望する機能を伝えたり開発分担金を支払った。問題となった装置は4種類の装置で、システムが装置の製造及びプログラムの作成を行い、装置のROMにプログラムを収納して、東洋に納入した。しかし、その後、東洋は株式会社日本テクナート(以下「テクナート」という)に同様の装置を製造させ、ROM内のプログラムは複製(デッドコピー)させた。その後、1種類の装置については、東洋側がプログラムを作成し、それを使用した。

 そこで、システム(債権者)[2]は、東洋(債務者)と日本テクノナート(債務者)に対して仮処分を申請し、4種類の装置のROM内の4種類のプログラムの複製、翻案の差止、および、東洋らが作成したプログラムの頒布の差止を求めた。地裁は、複製(デッドコピー)については東洋らが将来行うことはないとして、また、東洋らが作成したプログラムは翻案ではないとして、すべて却下した。

 システム(抗告人)は抗告し、高裁は、3種類のプログラム(デッドコピー)については複製、翻案の差止を決定したが[3]、残りの1種類のプログラムについては東洋(相手方)らが後に作成したプログラムはシステムのプログラムの翻案ではないとして却下した。この高裁決定の翻案に関する判示事項が判例と考えられているのである。

 その後、システム(原告)は東洋(被告)らを本案訴訟で訴えた。地裁は、デッドコピーの分について、3種類のプログラムの複製、翻案の差止、および、損害賠償を認容する判決を行った。

(2)高裁の法的判断
 高裁決定(夏井研)は次のように判示している。「プログラムはこれを表現する記号が極めて限定され、その体系(文法)も厳格であるから、電子計算機を機能させてより効果的に一の結果を得ることを企図すれば、指令の組合せが必然的に類似することを免れない部分が少なくないものである。したがって、プログラムの著作物についての著作権侵害の認定は慎重になされなければならない・・・。」

 プログラムはこれを表現する記号が極めて限定されていることは高裁の判示のとおりである。例えば、C++言語では標準のライブラリ関数は350程度であり、通常使用される日本語の単語数からすれば1桁か2桁少ない「単語数」である。しかし、C++言語を用いて、ゲームも、ワープロや表計算ソフトも、OSも書くことができるのである。プログラム言語は、芸術作品のようなゲームソフトから機械装置のようなOSまで、さまざまなジャンルのプログラムを表現できる言語なのである。

 また、プログラムは文法エラーがあればコンパイルすることもできず、高裁の判示のとおり文法に厳格ではあるが、しかしだからといって指令の組合せつまり表現が必然的に類似するわけではない[4]。例えば、ドイツ語は文法が厳格であり、ドイツ語で文章を書くとすれば、例文を書き換えて、それを組み合わせるのがせいぜいではないだろうか。しかし、だからといって、「ドイツ語の小説はこれを表現する文法が厳格であるから、ドイツ語を用いて同一の内容を表現することを企図すれば、単語の組み合わせが必然的に類似することを免れない部分が少なくないものであって、ドイツ語の小説の著作物についての著作権侵害の認定は慎重になされなければならない」といえるのだろうか。日本人がドイツ語で文章を書くときには「der,des,dem,den」のような厳格な文法に悩まされるが、日本人が日本語で文章を書くときには日本語の文法を意識していない。これから類推すれば、日本人からは厳格にみえるドイツ語の文法を、ドイツ人の小説家は意識することもなくドイツ語の小説を書いていることが容易に推測できる。同様に、初心者からは厳格にみえるプログラム言語の文法を、プログラマは意識することもなくプログラムを書いていると容易に推測できるはずである。また、日本語の文章でも、文法に厳格でなく曖昧で非論理的な文章もあれば、日本語の文法に厳格に従った論理的な文章もある。曖昧で非論理的な文章は著作権で保護されるが、論理的な文章は単語の組み合わせが必然的に類似するから著作権侵害の認定は慎重になされなければならない、といえるのだろうか。 

(3)高裁の本件プログラムについての判断
 高裁は上記の法的判断の後に、この事件で問題となっているプログラムについて具体的に判断しているが要約すると次のようになる。「本件プログラムが相当すべき作業はプリンタ部分のみであること、指令の組合せはハードウェアに規制されるので本来的に同様の組合せにならざるを得ないこと、『プリンター動作不能時の処理ルーチン』は、極めて一般的な指令の組合せを採用していること、及び4000H以降がRAMエリアであるからサブルーチンのスタックを区切りのよい4100Hにセットすることは常識的である。以上のとおり、抗告人が指摘する部分の指令の組合せに創作性を認めることは困難であることに加え、類似部分として挙げるのは極めてわずかなバイトにすぎないことをも併せ考えれば、翻案したものであるとの疎明の心証を得ることはできない。」

 高裁はプログラムの創作性を否定する根拠の一つとしてプリンタ部分であることを挙げている。しかし、例えば、パソコン用のプリンタドライバのバージョンアップはプリンタメーカーがインターネットから無料でダウンロードさせるの普通であるが、キャノンエプソンのサイトからも明らかなように、自社のプリンタを利用する目的でソフトウェアを使用する非独占的権利を許諾しているのであり、プリンタドライバが著作権で保護されることは当然のことと考えられている。

 また、RAMエリアが4000Hからの時にスタックを4100Hにセットするのは常識的であることは高裁が判示するとおりであるが、番地は通常の文章では何頁何行に相当するものであるから、番地はプログラムの創作性の有無を判断する根拠にはなり得ない。[5]

(4)高裁が具体的に検討したコード
 上記の法的判断「プログラムはこれを表現する記号が極めて限定され、その体系(文法)も厳格であるから、・・・指令の組合せが必然的に類似することを免れない部分が少なくないものである」は、著作権法第2条第1項第10号の2のプログラムの定義「電子計算機を機能させて一の結果を得ることができるようにこれに対する指令を組み合わせたものとして表現したものをいう。」等から導き出すことはできない。そして、著作権法は表現を保護する法律であり、プログラムの創作性を判断するためにはプログラムの表現を検討することが不可欠であるから、高裁は具体的なコードを検討したはずである。

 そこで、高裁決定を詳細に読むと、「・・・『プリンター動作不能時の処理ルーチン』は、極めて一般的な指令の組合せを採用している・・・」という記載があり、高裁はこのルーチンの「指令の組合せ」つまりプログラムの表現を検討したものと考えられる。残念ながら、『プリンター動作不能時の処理ルーチン』の表現がどのようなものであったのかは、決定文には記載されていないが、この仮処分事件の地裁の決定には、「本体コントロール信号2にリセットせよ」という命令について具体的なコードが記載されているので、次に検討する。
 
(5)地裁が具体的に検討したコード
 地裁決定(夏井研)には、システム(債権者)の主張として次の記載がある。

 「例えば,本体コントロール信号2にリセットせよという命令は、[システムの]CA−7Uプログラムでは、
 メインプログラム
   アドレス  038B
   命  令  CDB205
 サブルーチン
   アドレス  05B2
   命  令  AF,D300,C9
であり,これに対応する[東洋の]CA−9プログラムでは、
 メインプログラム
   アドレス  00E0
   命  令  CD2301
 サブルーチン
   アドレス  0123
   命  令  AF,D300,C9
であって、全く同じ表現が用いられており、この処理ルーチンのその他のプログラムも同様である。また、プリンター動作不能時の処理ルーチンの処理の流れは,全く同一であり、かつ、表現も同一ないし非常に類似している。」

 以上はシステム(債権者)の主張の欄の記載ではあるが、具体的なコードの記載は上記のものしかなく[6]、また、創作性について判断するためには著作権法が保護する表現についての検討が不可欠であるから、地裁は少なくとも上記のコードおよび「プリンター動作不能時の処理ルーチン」について具体的に検討したものと推測される。そして、後者は高裁が具体的にコードを検討したルーチンであり、創作性に関して前者と後者のルーチンに本質的な違いはないものと考えられるから、地裁決定に記載された上記コードを詳細に検討すれば、間接的ではあるが高裁が具体的なコードについてどのような検討を行ったのかを推測できると考えられる。

 上記コードは16進数で記載された機械語であり、機械語はマイクロプロセッサ(CPU)に依存するから、どのマイクロプロセッサが使用されているのかがわからなければ、このコードの意味を理解することはできない。しかし、地裁、高裁の決定文にはどこにもマイクロプロセッサの種類が記載されていないから、このコードが「何語」で書かれているのかわからないのである。

 そこで、マイクロプロセッサが8086であると仮定して逆アセンブルしてみると全く意味のない逆アセンブルリストになる。しかし、Z−80であると仮定して逆アセンブルすると以下に示す意味のある逆アセンブルリストが得られるから、両当事者の装置にはマイクロプロセッサとしてZ−80が使用されており、上記コードはZ−80の機械語で書かれたコードであることが理解できる。なお、以下のコードの右側にその意味を日本語で記載した。

システムのCA−7Uプログラム
 メインプログラム
    038B   CALL  05B2H    05B2H番地からのサブルーチンを呼ぶ(コール)
 サブルーチン
    05B2   XOR  A         レジスタAの内容を0にする
    05B3   OUT  00H, A    レジスタAの内容をポート00Hに出力する
    05B5   RET            メインルーチンに戻る(リターン)

東洋のCA−9プログラム
 メインプログラム
    00E0   CALL  0123H    0123H番地からのサブルーチンを呼ぶ(コール)
 サブルーチン
    0123   XOR  A         レジスタAの内容を0にする
    0124   OUT  00H, A    レジスタAの内容をポート00Hに出力する
    0126   RET            メインルーチンに戻る(リターン)

 以上のように逆アセンブルすれば意味がわかり、また、05B2H0123Hのような番地[7]は文章の何頁何行に相当するものでありプログラムの表現とは無関係であるから、システムが主張したとおり同一表現のプログラムであることがわかる。

 このプログラムはプリンタに関連し、「本体コントロール信号2にリセットせよ」という命令であるということだから、ポート00Hがプリンタに接続されており、ポート00H0を出力することが、「本体コントロール信号2にリセットせよ」という命令に相当すると考えられる。そして、「ポート00H0を出力して本体コントロール信号2にリセットすること」は、プリンタとマイコンのハードウエアが決まれば決まってしまうアイディアであり、著作権によって保護されることがないことは明らかである。

 そして、上記メインルーチン3バイト、サブルーチン4バイト、計7バイトのコードは、同一の結果を企図すれば、その表現が一義的に決まるというものではないが、「指令の組合せが必然的に類似することを免れない部分」であるということはできる。したがって、地裁が検討したこの7バイトのコードについての具体的な判断であるとしたら、高裁の判断は正しかったのである。[8]

 しかし、この7バイトのコードあるいは更に何バイトかの「プリンター動作不能時の処理ルーチン」のコードの表現を具体的に検討し[9]、その具体的なコードについて正しい結論を得た後に、それに基づいて、プログラム一般について、「プログラムはこれを表現する記号が極めて限定され、その体系(文法)も厳格であるから、電子計算機を機能させてより効果的に一の結果を得ることを企図すれば、指令の組合せが必然的に類似することを免れない部分が少なくないものである。したがって、プログラムの著作物についての著作権侵害の認定は慎重になされなければならない」という普遍性のある法的判断をしたとしたら、これは正しい判断であるといえるのだろうか?

 たとえば、小説の著作権侵害事件で、両当事者の小説のうち「彼はプリンタのリセットボタンを押した。」という文だけが一致していることを根拠に自分の小説が翻案されたと主張する事件を考えてみよう。[17] このような内容を表現する場合、この表現に一義的に決まるというものではないだろうが、単語の組合せが必然的に類似することを免れない部分であるとはいえるだろう。したがって、この部分の表現が一致していることをもって被告の小説が原告の小説の翻案であるとすることはできない、と判断するとすれば、それは正しい判断であると考えられる。しかし、小説の中のこの一つの文についての正しい判断を一般化して、「小説の著作物は、同じ内容を表現することを企図すれば、単語の組合せが必然的に類似することを免れない部分が少なくないものであり、小説の著作物についての著作権侵害の認定は慎重になされなければならない」という普遍性のある法的判断をしたとしたら、これは正しい判断であるといえるだろうか。
 
(6)翻案とデッドコピー
 システムサイエンス事件高裁決定において判例として引用されるのは、翻案についての上記の法的判断であるが、この事件ではデッドコピーについても争われている。高裁はデッドコピーに関しては、「抗告人(システム)の代表取締役及び取締役が、抗告人の発意に基づいて目録記載のプログラムを職務上作成したこと、並びに、抗告人はプログラムを複製し収納したROMを回路基盤に装着した装置を販売して、各プログラムを自己の著作の名義の下に公表してことが一応認められる。そうすると、プログラムの著作権は、抗告人に属することは明らかである。」旨判示している。つまり、高裁はデッドコピーに関しては、システム(抗告人)が作成したプログラムの「指令の組合せに創作性を認め得る部分がある」かどうかを全く判断せずに、プログラムの著作権はシステム(抗告人)に属することは明らかであると判断しているのである。

 これは、デッドコピーについては、当事者がどちらに著作権が属するのかだけを争い、創作性については争わなかったからであり、当事者の主張の範囲で判断する民事訴訟としては、高裁の判断はこれでよいのかもしれない。しかし、プログラムの創作性の有無は、プログラムの作成者がプログラムを創作した時点で確定するものであり、ある者が創作したプログラムの創作性が、他人がデッドコピーをするか、翻案をするか、全く独立にプログラムを開発するのか等によって影響されるはずはない。したがって、デッドコピーについても、この高裁決定の翻案の時と同じ基準で、システム(抗告人)のプログラムの少なくとも1ヶ所に「指令の組合せに創作性を認め得る部分がある」ことを認定しなければならないはずである。したがって、もし、東洋(相手方)がデッドコピーについてもプログラムの創作性を争ったとすれば、創作性の立証責任は著作権を主張する側つまりシステム(抗告人)にあるから、システムが自分が開発したプログラムのどこかに創作性のある部分があり著作権法によって保護される著作物であることを、この高裁決定の翻案の部分でなされた判示事項に基づいて立証しなければならないことになる。

 しかし、高裁の判示事項を前提にして創作性を立証することは極めて困難なことである。このことは高裁の判示事項を日本語の著作物に適用してみるとよくわかる。例えば、私が今書いているこの文章の創作性を立証するにはどうすればよいだろうか。プログラムの著作権の創作性に関する日本の判例学説をこのような形で明確に問題視した文献はこれまで存在しなかったから、ここに記載された内容は独創的であると考えられる。しかし、文章の内容はアイディアであり、著作権が保護するものではないから、内容の独創性をもってこの文章の創作性を立証することはできないのである。同様にプログラムの機能や解法がいかに進歩性のあるものであったとしても、それはアイディアであるから、それをもってプログラムの創作性を立証することはできないのである。それでは、この文章のどこかに創作性のある表現はあるのだろうか。私としては、最初から最後まで私なりの表現力で表現しているだけで、どこかに特に創作性に優れた部分があるというわけではない。また、私としては、内容を読者に伝えたいだけであって、優れた日本語の表現で読者に感動を与えるつもりはない。プログラムの場合も、同様であり、同じプログラマであれば最初から最後まで、そのプログラマの表現力で書いているはずである。また、プログラマは機能を実現したいだけであり、プログラムのどこかに特に優れた表現のコードを書くわけでもない。

 プログラムや文章の創作性を立証するために、その一部を書き換えて、誰が書いても同じとはならないとして創作性の立証をすることができるようにみえる。しかし、一部を書き換えれば、その内容も少しは相違したものになるので、その点を相手から反論されることになる。また、内容が相違しないように注意して書き換えれば、相手から、不自然な書き換えだとか、無意味な書き換えだとか、冗長にしただけとか、あるいは単純化しただけとかの反論をされることになる。日本語の文章であれば、裁判官も理解でき、また、創作とは「その表現方法が模倣でなく著作者自身の表現であればよい」(著作権法令研究会「著作権法ハンドブック」9頁)と考えられているから、このような反論は意味がないが、プログラムの場合は、裁判官は読むことができず、かつ、「指令の組合せが必然的に類似することを免れない部分が少なくないものである。したがって、プログラムの著作物についての著作権侵害の認定は慎重になされなければならない」という判例のもとでは、このような相手の反論は有効であり、書き換え可能性による創作性の立証も困難なのである。

 以上のように、システムサイエンス事件高裁決定は、その法的判断に厳密に基づいて創作性を立証することは難しいから、創作性を争われれば、デッドコピーでも翻案でも、著作権によるプログラムの保護を実質的に困難にするものであり、プログラムの著作権を実質上否定するものである。
 

4.マイクロソフト事件地裁判決について

 システムサイエンス事件高裁決定の陰に隠れて、1987年のマイクロソフト事件地裁判決(夏井研)はそれほど脚光を浴びいない。マイクロソフト事件は、提訴が著作権法改正以前であるため学術の範囲に属する著作物とされているが、実質的にはプログラムの著作物の創作性について、システムサイエンス事件高裁決定よりも遙かに充実した審理が行われている。この事件で地裁は原告のプログラムのうち2カ所について具体的なコードを検討している。

 この判決の理由の欄で地裁は、「請求の原因(原告の主張)の欄に記載されたコードとその説明について、そのとおりの意味に理解することができコンピュータのメモリ内に格納されているプログラムをカセットテープに格納する命令群であることがわかる」[10]旨述べているから、地裁はこのコードの意味を理解したものと考えられる。このコードは原告のオブジェクトプログラムを逆アセンブルしたものであり、Z−80のアセンブリ言語で記述された逆アセンブルリストである[11]。以下にそのコードを示す。なお、ラベル及び日本語の説明は省略した[12]。このリストでは例えば「L0C46」は16進数の0C46H番地を意味している。

(1) 1EC0-1EC2   CALL L0C46
   (2) 0C46-0C48   CALL  LF1B9
   (3) 0C49-0C4B   LD  A, (LEA66)
   (4) 0C4C-0C4D   AND  0FH
   (5) 0C4E-0C4F   OR  0CH
   (6) 0C50-0C52   CALL  L0C38
      (7) 0C38-0C3A   LD  (LEA66), A
      (8) 0C3B-0C3C   OUT (30H), A
      (9) 0C3D        RET
   (10)0C53-0C55   CALL  L0D14
      (11)0D14-0D15   LD  A, 0EH
      (12)0D16-0D17   0UT  (21H), A
      (13)0D18-0D19   LD  A, 40H
      (14)0D1A-0D1B   OUT  (21E), A
      (15)0D1C        RET
   (16)0C56-0C57   LD  A, L00CE
   (17)0C58-0C59   OUT  (21H), A
   (18)0C5A-0C5B   LD  A, 11H
   (19)0C5C-0C5D   OUT (21H), A
   (20)0C5E-0C60   CALL  L0C7C
      (21)0C7C        PUSH  DE
      (22)0C7D        PUSH  HL
      (23)0C7E-0C7F   LD  E, 6
      (24)0C80-0C81   JR  L0C6D
      (25)0C6D-0C6F   LD  HL, 0
      (26)0C70        DEC  L
      (27)0C71-0C72   JR  NZ, L0C70
      (28)0C73        DEC  H
      (29)0C74-0C75   JRN  Z, L0C70
      (30)0C76        DEC  E
      (31)0C77-0C78   JRN  Z, L0C70
      (32)0C79        POP  HL
      (33)0C7A        POP  DE
      (34)0C7B        RET
   (35)0C61-0C63   LD  A, (LEA66)
   (36)0C64-0C65   AND  0FBH
   (37)0C66-0C68   CALL  L0C38
   (38)0C69        PUSH  DE
   (39)0C6A        PUSH  HL
   (40)0C6B-0C6C   LD  E, 1

 以上の表記ではサブルーチンの部分を字下げして示した。(1)で、(2)から始まるサブルーチンを呼び出し、さらにそこから、(7)(11)(21)から始まるサブルーチンを次々に呼び出している[13]。つまり、上記の(1)(40)はメモリの番地順ではなく、マイクロプロセッサ(CPU)が読む順に(1)(40)が並べられている。これを通常の文章にたとえると、注を参照しながら本文を読んだ場合に相当する。この箇所はアセンブリ言語で40行、バイト数で77バイトの連続して読まれるコードである。

 さらに、地裁は理由の中で次のコードを具体的に検討している。

   (1) 3CEC   CALL  L1B7E
   (2) 3CEF   JP  C, L3C9F
   (3) 3CF2   RST  10H
   (4) 3CF3   INC  A
       3CF4   DEC  A
   (5) 3CF5   JP  Z, L3C9F
   (6) 3CF8   PUSH  AF
   (7) 3CF9   CALL  L44B5
   (8) 3CFC   CALL  L4082
   (9) 3CFF   LD  A, (HL)
   (10)3D00   CP  20H
   (11)3D02   CALL  Z, L26C7
   (12)3D05   PUSH  DE
   (13)3D06   CALL  L3E65
   (14)3D09   POP  DE
   (15)3D0A   POP  AF
   (16)3D0B   LD  (LEF8D), HL
   (17)3D0E   CALL  LF174
   (18)3D11   JP  NC, L423B

 地裁はこのコードについて、「以上のとおり、アドレス3CECから3D11までの各アドレスに記載されている命令群は、キーボード等から入力された命令やステートメントを間接か直接かのいずれのモードであるかを判断して、次のステップに移行するルーチンであることが認められる。」[14]としているから、裁判官はこのコードの意味を理解したものと考えられる。この箇所は番地順にコードが連続して記載されており[15]CALLについては日本語の説明のなかでそのサブルーチンが何を行っていることが説明されている。これを通常の文章にたとえると、注を読まずに本文だけを読んだ場合に相当する。この箇所はアセンブリ言語で19行、バイト数で38バイトの一つのルーチン内の連続したコードである。
 

5.おわりに

 以上のように、マイクロソフト事件地裁判決では、アセンブリ言語で40行、バイト数で77バイトの連続して読まれる(1)(40)のコード、及び、アセンブリ言語で19行、バイト数で38バイトの一つのルーチン内の連続した(1)(18)のコードを具体的に検討し、つまり、ある程度長い連続したコードを検討し、そのうえで、プログラム一般について、「一定の目的に達するための解決手段は唯一ではなく、さまざまな解決手段の選択が可能である。・・・そのすべての過程は、一定のものではなく、作製者の個性や思想を反映させることによって異なる・・・」[16]と判示している。

 これに対して、システムサイエンス事件高裁決定では、「あるプログラムがプログラム著作物の著作権を侵害するものと判断し得るためには、プログラム著作物の指令の組合せに創作性を認め得る部分があり、・・・」、「プログラムはこれを表現する記号が極めて限定され、その体系(文法)も厳格であるから、電子計算機を機能させてより効果的に一の結果を得ることを企図すれば、指令の組合せが必然的に類似することを免れない部分が少なくないものである。したがって、プログラムの著作物についての著作権侵害の認定は慎重になされなければならない・・・」と判示しているが、具体的に検討されたであろうコードは16進数の機械語の7バイトのコード、及び、それより少しバイト数が多いと推測されるコードであり、「極めてわずかなバイト」のコードである。

 システムサイエンス事件高裁決定の判示事項は、平均以上の創作性を要求する1985年のドイツ最高裁判決に類似しているが、1993年の改正でドイツ著作権法は、「コンピュータプログラムは、著作者自身の知的な創作の成果であるという意味において、それが個性的な著作物であるとき、保護される。その保護能力の決定のために、その他の基準、特に質的又は審美的な基準が適用されることはない。」、「・・・特段の定めがない限り、言語の著作物のための一般的な規定の適用がなされる。」と規定し、1985年のドイツ最高裁判決を積極的かつ明確に否定している。一方、マイクロソフト事件地裁判決の判示事項はプログラムを通常の著作物と同様に扱っているから、1993年改正のドイツ著作権法と基本的に一致しており、また、日本の著作権法の自然な解釈とも一致している。

 システムサイエンス事件が正しいのだろうか。それとも、マイクロソフト事件が正しいのだろうか。
 

 


脚注

1.リンク先で引用箇所を探す場合は、リンク先でブラウザの検索機能で識別力のある文を検索します。例えば、この引用箇所は、「本件プログラムは本件ゲームの」を検索すると、2回目の検索で見つかります。

2.本案訴訟では、地裁に訴えた側が「原告」で、訴えられた側が「被告」であり、高裁における控訴審では控訴した側が「控訴人」でその反対側が「被控訴人」である。一方、仮処分事件では、地裁に訴えた側が「債権者」で、訴えられた側が「債務者」であり、高裁における抗告審では抗告した側が「抗告人」でありその反対側が「相手方」である。システムサイエンス事件では、債権者=抗告人=原告=システム、債務者=相手方=被告=東洋及びテクナート、である。

3.東洋は、システムにプログラムの作成も含めて外注したのであるから、自分こそがプログラムの著作者であると主張したが、裁判所は実際にプログラムを作成したシステムが著作者であり、東洋のデッドコピーは著作権侵害と判断した。一般に、X社が独自に装置を開発し、それを一顧客としてY社が購入したとすれば、装置のROM内のプログラムの著作権がX社に属することは、誰にでもわかる。これに対して、Y社がX社に外注し製造させた場合は、その装置のROM内のプログラムの著作権がY社に帰属すると考えがちである。しかし、発注者が単に作成すべきプログラムの機能なり基本的仕様を示して下請け会社等にプログラムの作成を依頼するような場合、その発注者はプログラムの作成に創作的に寄与したとは評価されず、著作者は実際にプログラムを作成した受注会社であり、もし発注者が著作権を取得したい場合は、受注者との間で著作権譲渡契約を締結することが必要となる(紋谷暢男他著「プログラム著作権とは何か」70頁)。これは著作権法2条1項2号の「著作者 著作物を創作する者をいう。」に基づいており著作物一般についていえることであるが、装置のROM内のプログラムは盲点となりやすいので注意が必要である。

4.かつて、コーディング用紙に鉛筆でソースプログラムを書き、その1行づつを1枚づつのパンチカードにパンチし、それをコンピュータに入力し、打ち出されたエラーメッセージを検討していた時代には、文法の厳格さはプログラム開発の障害になっていたかもしれない。しかし、現在の統合開発環境では、エディターでソースプログラムを書くと、クリック一つで、コンパイル、リンクされ、作成された実行可能プログラムが実行されるのである。そして、もし、文法エラーがあれば、エラーメッセージが表示され文法エラー部分にカーソルが置かれた状態でエディターの画面に戻るから、現在では、文法が厳格であることは重要な問題ではない。

5.番地が同じであることは、創作性の根拠とはなり得ないが、スタックの番地が同じであることはコードにアクセスした根拠にはなるかもしれない。しかし、RAMエリアが4000Hからの時にスタックを4100Hにセットするのは高裁の判断どおり常識的であるから、このことが東洋がシステムのオブジェクトコードをアクセスした証拠にはならない。なお、高裁決定の「サブルーチンのスタック」は意味不明であるが、地裁決定では「サブルーチンコールに使用するスタックエリア」と記載されており、これなら理解できる。通常のメモリは番地を指定して読み書きを行うが、スタックメモリはデータ1、データ2、データ3と順に積み重ねるように記憶し、それを上からデータ3、データ2、データ1のように読み出すメモリであり、先に入れた情報が後から出てくるメモリである。スタックメモリは主にサブルーチンコールの時に戻り番地を記憶するのに使用される。サブルーチン(C言語では「関数」、Java言語では「クラス」)は通常の文章にたとえると注のようなものであり、本文(メインルーチン)を読んでいて[注]の記号があれば注(サブルーチン)を参照し(コール)、注を最後まで読んだら戻り(リターン)、[注]の次の文字から再び読みはじめる。通常の文章では注はそれほど多くはないが、プログラムの場合は、サブルーチンから他のサブルーチンへ、さらに他のサブルーチンへと多数のサブルーチンをコールするのが普通である。その戻り番地([注]の次の文字の位置)をスタックメモリに記憶させるようにすると、サブルーチンコール毎に順次ぎ戻り番地を記憶し、リターン毎に記憶した順と逆順で戻り番地を読み出すから、必ず正しく戻れるのである。スタックエリア内の情報はプログラム実行中に頻繁に書き換えられる戻り番地等であり、著作権法第2条第1項10号の2に定義されたプログラムの著作物ではない。

6.決定文には別紙添付目録としてシステム及び東洋のオブジェクトプログラムが添付されているようであるが、一般に利用可能な法律雑誌の記事では省略されている。しかし、本案訴訟の地裁判決に添付されたシステムのCA−7Uプログラムは、「知財管理、判例集U、平成7年判決、東京地裁民事第29部、平成8年7月発行、日本知的財産協会会誌委員会編」に、0000H1E8FH番地のダンプリストとして16頁にわたって掲載されている(残念ながら、東洋のプログラムは掲載されていない)。下記のアンダーライン部分が地裁で具体的に検討されたコードである。
   0000 ・・・・・
      ・・・・・
   0380 CD BE 05 3E 00 32 FF 83 00 00 00 CD B2 05 CD AF
      ・・・・・
   05B0 04 C9 AF D3 00 C9 00 00 C5 06 01 DE 00 AF 00 3D
      ・・・・・
   1E80 ・・・・・

7.05B2Hの「H」は05B2が16進数であることを表している。コンピュータは01つまり2進数で情報を処理しており、2進数の1桁をビットと言い、2進数8桁つまり8ビットをバイトという。そして、24=16であるから16進数1桁で2進数4桁を表示できるから、16進数2桁で2進数8桁つまり1バイトを表すことができる。0〜9までは10進数と16進数は同じであるが、10進数の10〜15は16進数ではA〜Fで表記される。05B2Hは10進数に直すと、0×16+5×16+11×16+2=1458である。なお、「6.」に示されているようにダンプリストにはHは記載されていないが、16進数で表示され、16進数2桁で1バイトである。

8.高裁決定は一般的なプログラムの創作性について普遍性のある法的判断を行ったが、地裁決定は本件プログラムの創作性については判断したが、一般的なプログラムの創作性については判示していない。また、翻案については、高裁は、「あるプログラムがプログラム著作物の著作権を侵害するものと判断し得るためには、プログラム著作物の指令の組合せに創作性を認め得る部分があり、かつ、後に作成されたプログラムの指令の組合せがプログラム著作物の創作性を認め得る部分に類似している事が必要であるのは当然である」と判示し、一方、地裁は、「あるプログラムについて翻案権侵害が成立するためには、侵害したといわれているプログラムの制作者が侵害されたプログラムに接したことが必要であるとともに、侵害したといわれているプログラムの表現が、侵害されたというプログラムの表現の創作性のある部分と類似している(内面的表現形式が同一である)ことが少なくとも必要であり、創作性のある部分が類似していない場合には、創作性のない部分についての表現が同一ないし類似であっても翻案権侵害とならないというべきである。」と判示している。一見、この二つの判示は同じようにみえるが、よく読むと、高裁の判示は、プログラムは一般的には創作性はないが、創作性を認め得る部分がある例外的なプログラムについては特別に著作権で保護できるというニュアンスがあるのに対して、地裁の判示ではこのようなニュアンスはそれほど強くないと考えられる。

9.高裁が具体的に検討したと考えられる「プリンター動作不能時の処理ルーチン」のコードは明らかになっていないが、地裁決定の理由の欄にはそのルーチンについて次のように日本語で記載されている。「・・・CA−9プログラム中の『プリンター動作不能時の処理ルーチン』は、プリンターへデータを出力する場合に、プリンターがデータを受取れる状態であるか否かを検査し、受取れる状態であればデータを送り出す処理に進み、受取れる状態でなければBCレジスタの数値を1減じたうえ最初に戻って同様の処理を繰返し、これを一定回数繰返してもプリンターがデータを受取れる状態にならない場合にはエラー処理プログラムに進むというものであるところ、このような処理において、一定回数の繰返しのためにBCレジスタの数値を減算すること及び減算処理のためBCレジスタを使用することは一般的に行われていることであり、その表現の仕方も、他に違った表現をしうる余地が全くないわけではないが、ごく普通のものであって通常のプログラマーであれば同様のプログラムを組む可能性が高い・・・」。ここでCA−9プログラムは東洋(債務者)のプログラムである。本来は、著作権を主張するシステム(債権者)のCA−7Uプログラムが創作性があるかどうかを検討しなければならないのであり、地裁は混乱したようであるが、「通常のプログラマーであれば同様のプログラムを組む可能性が高い」という地裁の判断はたぶん妥当であると推測する。ただし、このルーチンについての妥当な判断から、高裁決定のプログラム一般についての普遍性のある法的判断が導かれるわけではない。なお、このルーチンは7バイトより少し大きいバイト数であると推測する。

10.最近パソコンをはじめた方には信じられないかもしれないが、当時のパソコンはフロッピーディスクも、ハードディスクもなく、プログラムは0、1を音の高低に変換して音楽用のカセットテープに「録音」して保存していたのである。なお、ダイアルアップでインターネットにつなげるのも、0、1を音の高低と位相に変換して通信しているから、電話回線でインターネットに接続できるのである。

11.このプログラムのソースコードはアセンブリ言語で記述されていると考えられるが、原告はソースコードは証拠として提出せず、オブジェクトコードを逆アセンブルした逆アセンブルリストを提出している。これは、ソースコードを公開の法廷に提出すると、その中に書かれたコメントによって、プログラムの内容が第三者にわかってしまうことと、被告がアクセスしたのはソースコードではなく逆アセンブルリストであるからであると考えられる。原告は逆アセンブルリストの特定の部分について日本語で内容の説明を行っている。なお、このようなプログラム言語は記号語、アセンブリ言語、アッセンブリ言語、アセンブラ言語等の呼び方があり、判決では「アッセンブリ言語」を使用しているが、検索サイトgooで検索したところ、アセンブリ言語1195ページ、アッセンブリ言語26ページ、アセンブラ言語631ページの結果が得られたので、ここでは「アセンブリ言語」を使用した。前述のように16進数の機械語はマイクロプロセッサ(CPU)に依存するが、アセンブリ言語もマイクロプロセッサ(CPU)にある程度依存する。この判決ではマイクロプロセッサがZ−80であることが明記されており、マイクロプロセッサを明記せず、わずかなバイト数の16進数の機械語のコードを検討したシステムサイエンス事件とは、審理の水準が明らかに相違している。システムサイエンス事件の場合は当事者が十分な主張立証を行わなかったため、裁判所もプログラムについて十分な審理を行うことができなかったと考えられるが、このような極めて不十分な主張立証の中でプログラム一般についての普遍性のある法的判断を行うべきであったのかどうか疑問である。

12.例えば、(5)の「OR 0CH」の説明としては、「Aレジスタの内容と数値0CHとのビットごとの論理和(いずれかが1のとき出力1)をとり、その結果をAレジスタに格納する。このOR 0CH[0FHと記載されているのは誤記]の論理的な意味はビット3とビット2を1にセットすると言うことであって・・・」と記載されているが、ここまではオブジェクトコードを逆アセンブルしてみれば、アセンブリ言語が読める人なら誰でもわかることである。しかし、「ビット3とビット2を1にセットする」ことがわかっただけではプログラマがどのようなアイディアに基づいてこのコードを書いたのかはわからない。コンピュータの内部では0、1が、プリント基板や集積回路の配線では電圧の高低、DRAMの記憶セルでは電荷の有無、ディスクでは磁化の方向、CD−ROMでは反射面の凹凸等に姿を変えながら走り回っているだけであるが、そのコンピュータが役に立つものとなるのは、プログラマがそれぞれのデータ(変数)にそれぞれ意味を持たせ、目的が達成されるようにプログラムしているからである。CPUはそのプログラムを読みながら忠実にデータ処理を行い、結果的にプログラマが考えた目的が達成されるのである。(5)の説明の後半には、「・・・実質的な意味は、モータをON、スペース信号(録音開始を示す信号)を出力するように、Aレジスタの内容を変更する。」と記載されているが、これは単にオブジェクトコードを逆アセンブルしただけではわからない。実質的な意味をリバースエンジニアリングによって入手するためには、オブジェクトコードを逆アセンブルし、ハードウエアを調査し、また、このプログラムを1ステップ(1行)ごとに実行し(8)の「OUT (30H), A」を実行すると実際にモータがONして録音が開始すること等から、「カセットテープレコーダのモーターをONとし、録音を開始するためには、ビット3とビット2が1のデータをポート30Hに出力する」という互換性を得るための情報つまりアイディアを入手することができるのである。ドイツ著作権法第69e条は一定の条件のもとにリバースエンジニアリングによって、このような互換性を得るための情報を入手し、その情報を用いてオリジナルな表現の互換プログラムを作成することができることを規定しており、また、第69g条(2)項でこのような互換性を得るためのリバースエンジニアリングは契約で禁止できないことも規定している。

13.(2)(37)CALLはダミーであり、サブルーチンはRET(リターン)と記載されているだけで、直ちにもとに戻る。

14.この当時のパソコンは電源をONすると、ベーシックインタプリタが立ち上がり、画面左上にOKが表示され、その画面がスクリーンエディタであると同時にコマンドを入力する画面でもあった。行頭に数字つまり行番号を記載すればBASICのプログラムとして入力され、行頭に数字を付けずに、例えば、RUNと入力すれば、そのプログラムが実行されたのである。(1)(18)のプログラムはこのようなことを処理するコードの一部である。もしかすると、(1)(18)はゲイツ氏自身が創作したコードの可能性もあるかもしれない。このような簡単な操作でパソコンを扱うことができたので、私も含めて多くの人がコンピュータに接することができたのであり、この当時のゲイツ氏の功績は賞賛に値するものである。なお、前述のプログラムをカセットテープに格納するコードについては、互換ハードウエア又は互換ソフトウエアを作成するためには、「12.」で述べたように互換性を得るための情報を逆アセンブル等のリバースエンジニアリングによって入手することが必須である。これに対して、このキーボード等から入力された命令やステートメントを判断するコードについては逆アセンブル等のリバースエンジニアリングは全く必要としない(ただし、(13)のCALL先の中間言語への変換方法は除く)。この部分については、プログラムを実行すればどのような機能であるのかがわかるから、それに基づいて同様な機能のオリジナルな表現のプログラムを作成すればよいので、コードをアクセスする必要がないのである。日本ではプログラムの実行中にプログラムがメモリに一時的にコピーされることは著作権法上の複製とは見なされていないから問題はないが、ドイツでは一時的複製も著作権法第69c条1号で保護されているから、ドイツ著作権法第69d条(3)項でこのようにして同様な機能のプログラムを作成することができることを規定し、また、第69g条(2)項でこれを禁止する契約は無効であると規定している。

15.(1)(18)は番地がとびとびのようにみえるが、実際は連続した番地である。このプログラムでは例えば「3CEC   CALL  L1B7E」と表記されているが、CALLは3バイト命令であるから、前に検討したコードの番地の表記方法に直せば「3CEC-3CEE   CALL  L1B7E」となり、次の命令の番地と連続している。各命令が何バイト命令なのかを検討すると、(1)(18)の番地が連続していることがわかる。

16.この後に続く、「・・・のみならず、むしろ、その個別性に価値を見出すことができるものである。」はやや疑問に思う。

17.ここでは言語の著作物の代表例として小説と比較したが、科学論文の創作性に関して検討されたものとして、「発光ダイオード学位論文事件」大阪地裁1979年判決(判例タイムズNo.397、152〜163頁)がある。この事件の被告は松下電器とその研究員の山本であり、原告は山本らと共に研究しその後退職した伊藤である。山本は「CdTeとMgTeの混晶による発光ダイオードの研究」という学位論文を大学に提出し博士号を取得した。原告はこの博士論文は自分が社内の研究報告書及び物理学会誌に発表した論文の著作権を侵害したものであると主張した。裁判所は、「自然科学に関する論文中、単に自然科学上の個々の法則を説明した一部分については、同一の事柄でも種々の表現方法のある一般の文芸作品とは異なり、その性質上その表現形式(方法)において、個性に乏しく普遍性のあるものが多いから、当該個々の法則の説明方法が特に、著作者の個性に基づく創作性のあるものと認められる場合に限って著作者人格権・著作財産権(以下「著作権」という)保護の対象になるものと解すべきところ、乙2号証中別紙の(一)(二)に記載の部分がMgTe,CdTeの構造、性質、その他の科学上の法則を説明する方法として、原告がこれを創作的に表現したものであって、その表現形式(説明方法)が著作権の保護の対象となり得るものであることを認め得る証拠はない。」と判示している。一見、システムサイエンス事件と似ているようにみえるが、システムサイエンス事件高裁決定は、「あるプログラムがプログラム著作物の著作権を侵害するものと判断し得るためには、プログラム著作物の指令の組合せに創作性を認め得る部分があり、」と判示しているから、プログラムは原則として創作性がないことを前提としているのに対して、発光ダイオード学位論文事件では、「自然科学に関する論文中、単に自然科学上の個々の法則を説明した一部分については、」と述べていることからわかるように、科学論文は原則的に創作性があるが、「一部分」については、「特に、著作者の個性に基づく創作性のあるものと認められる場合に限って著作権保護の対象になるものと解すべき」と判示しているのであり、全く異なっている。そして、具体的には、「本件学位論文中別紙の(一)(二)と乙2号証中別紙の(一)(二)記載の部分のなかには、『MgTeがウルツ鉱型構造を有している。』、『原子間距離は、2.7Å、2.77Åである。』、『Mgのカルコゲナイドで四面体構造を有するものはTe化合物だけで、他の化合物は岩塩構造を持っている。』、『(MgTeが)化学的に活性で水とは爆発的に反応を起こす。』、『CdTe,MgTeの原子間距離はそれぞれ2.81、2.77Å』等、ほぼ同一の用語の使用されている部分であるが、右各用語は、単に物質の性質を表したもので、思想・感情を表現したものとは解しがたいのみならず、右用語は原告が創作的に考え出したものであって、著作権の保護の対象になり得るものであることを認め得る証拠はなく、・・・右用語は、自然科学上の法則ないし物質の構造、特性を説明するための普遍性のある用語であると認めるのが相当であるから、乙2号証中の右用語が他の部分から独立して著作権の保護の対象となるものとは到底認め難いのである。」と判示している。私としてはこれらの「用語」も自然科学上の思想を表現したものであると考えるが、このような短い文が、俳句、短歌のような短い文自体で著作物を構成するようなものを除き、著作権の保護の対象にならないことは、例えば、法律論文中の「著作権の保護はアイディアには及ばない。」という著作権の法理を単に述べた文が著作権の保護の対象とならないのと同様に、妥当なことであると考える。
 
 


トップページhttp://www.venus.dti.ne.jp/~inoue-m/ 独禁法 プログラムの著作権 特許権 利用条件 参考文献・リンク   

since 1999.01.15