概要
前回: 保安: 2/16 Friの拡大した公開メール悪用・スパム攻撃と犯人の動向 | GNU social JP Web、役務: Misskey愛好家運営の新しい分散SNSのブログサイトfedimagazine.tokyo | GNU social JP Web。
「Misskeyサーバー「まっちゃすきー。 (mattyaski.co) 」の終了予告→撤回 | GNU social JP Web」で最後に登場したまっちゃすきー絡みの続報です。
運営者のまっちゃってぃーが運営する「まっちゃすきー。 (mattyaski.co) 」とPrismisskeyで、使用しているサーバーソフトウェアのAGPLのライセンス違反の疑惑があって話題だったので紹介します。
特に重要な投稿ハイライトは以下です。
Z.N:z_n::jin::mark_illust:|z_n_jin@prismisskey.space【⚠️**当サーバーへのデマに関する重要なお知らせ**】 現在PrisMisskeyに関するデマ情報が広まっています。 不確かな情報を見かけた場合は、反応や拡散はせず、直接私達運営チームに問い合わせるなどご協力をお願い致します。
:onmyou::vc:Charlie Root|relay@mastodon.hakurei.win“デマ”ねぇ
AGPLv3違反の件なら、ソースコードの場所を明示してなかった時点でアウトよ
https://prismisskey.space/notes/9pkre5fnys
PrisMisskey公式としての見解です :mattyatea_ohuton:まっちゃてぃー。:mattyatea_ohuton:|mattyatea@mattyaski.coPrisMisskey(Misskey)はAGPL3.0というライセンスの違反をしているなどの指摘が有りましたが、複数の開発者、Misskey-devメンバーなどから 「明示的に表示しなくとも正式な要求をされた時点で提示すれば良い」 などの見解を頂き また、元の解釈が広義的な規約のためこれらの意見を客観的かつ統合的に考慮した結果、PrisMisskeyのライセンス違反の事実は無いと断定しました。 そのため、今後PrisMisskeyにおける独自機能のリポジトリに関しましては、正式なお問い合わせ以外での回答は控えさせていただきますので、ご理解とご了承を何卒宜しくお願い致します。 PrisMisskey.space 公式|prismisskey@misskey.io
@relayがまっちゃてぃーにAGPLv3違反を指摘して、それに対してまっちゃてぃーが認めず反論して口論になっていました。
結論からいうと、AGPLv3の本質である13条に照らし合わせた@relay側の指摘が的を得ていると思いました。
AGPLv3
今回の騒動の本質の理解のために、私自身もAGPLv3をよく理解していなかったので、文献を調査して本質を勉強しました。
まず、前提としてAGPLv3はGPLv3に対して13条以外ほぼ同一のライセンスです。さらに、13条が他の条項より優先されるとの記載があるので、AGPLv3について論じる際はまず13条をみるべきです。このことは、「OSSライセンスの比較、利用動向および係争に関する調査:IPA 独立行政法人 情報処理推進機構」の「OSSライセンスの比較および利用動向ならびに 係争に関する調査」のpp.5-7に詳しくあります。AGPLv3の発表当時に、発表者に電話インタビューしており、信頼性が高いです。
非公式ながら、FSFのライセンスの他の日本語訳も担当している人の和約を参考までに以下に掲載します。
まず13条の冒頭の「Notwithstanding any other provision of this License,」で13条が他の規則より優先されることが明記されます。続いて、「must prominently offer all users interacting」で、対話的にアクセスする全ユーザーに目立つ形で、「from a network server at no charge」で無償かつネットワークサーバーから、ソースコードへのアクセスの提供が必要となります。
分散SNSの場合だと、ログインしていない状態でWebブラウザーでアクセスして、ソースコードへのリンクをクリックできればOKです (コピーを円滑に行う上で標準的、慣習的に用いられる方法=some standard or customary means of facilitating copying of software.)。具体的には、画面上にソースコードへのURLや、ソースコードへのURLの記された画面へのURLがあれば条件を満たします。
例えば、Mastodon v4系は完璧です。左サイドメニューの「View source code」がほぼどの画面にもあり、ここからソースコードへのURLにアクセスできるようになっています (例: About- Генсокёская Советская Социалистическая Империя)。Pleromaは右上の [設定]-[バージョン] からアクセスできます (例: Ebin Club Shitpost Central)。モーダルを経由して設定ボタン押すまで画面内検索などでわかりませんが、許容範囲でしょう。Misskeyの場合、左サイドメニューの[…]-[Misskeyについて] からアクセス可能です (例: Misskeyについて | まっちゃすきー。)。
GNU socialの場合、クラシックUIだとフッターにSourceのメニューリンクがあり、Mastodon同様ほぼどの画面からもアクセス可能です (例: Source – GNU social JP)。Qvitterを使っているとワンクリックでアクセスできなかったので、万全を期すために、メニューにリンクを追加しました。
!gjp ソースコードへのアクセスを、サーバー経由で目立つ形で提供しないといけないです。 Qvitterを使うと、そこがちょっと疑念が残る形だったので、サイドバーにソースコードへのリンクを追加して解消させました。 ぐぬ管 (GNU social JP管理人)|gnusocialjp@gnusocial.jpreplying to ぐぬ管 (GNU social JP管理人)|gnusocialjp@gnusocial.jp
ただし、これらのデフォルトのソースコードURLは、フォーク元のオリジナルのリポジトリ―になっています。自分で独自に改造した場合、このデフォルトのURLを変更するか、同様に目立つ場所にフォークURLの明記が必要でしょう。
この後の議論では、13条とGPLと共通の6条dが登場してきて、そもそも議論が噛み合っていないです。AGPLの本質が13条であることを考えると話が分かりやすいです。13条を満たした後での話なら分かるものの、6条単体の話はそもそもAGPLの議論では的外れでお門違いです。
例えば、当然紙やメール添付ファイルでの提供はサーバーを経由しないのでNGでしょう。そして、メールで問い合わせて、ファイルサーバーURLを提供してもらうというやり方自体が「コピーを円滑に行う上で標準的、慣習的に用いられる方法=some standard or customary means of facilitating copying of software.」かどうかといわれると微妙です。いちいちメールで問い合わせてのダウンロードが一般的かというと、もはや現代ではレアなケースでしょう。素直にリポジトリ―のURLの掲載すべきでしょう。
このAGPLv3の要点を理解しておくと、まっちゃてぃー側の反論で登場する人物たちの言動が滑稽に見えます。
指摘
一連のやりとりは以下の投稿から始まります。
@z_n_jin PrisMisskeyのソースコードはどこにありますか? ソースコードへのリンクが本家から変更されていないのでどこにあるかわからないんですが… :onmyou::vc:Charlie Root|relay@mastodon.hakurei.win
文量がかなり多いので、詳細を知りたい人は、上記投稿から後の投稿を読み込んで眺めてみてください。そのために、Misskeyサーバーの投稿を引用しました。
:onmyou::vc:Charlie Root|relay@mastodon.hakurei.winreplying to :onmyou::vc:Charlie Root|relay@mastodon.hakurei.win@mattyatea これを明確だというのか?
Z.N:z_n::jin::mark_illust:|z_n_jin@prismisskey.space【⚠️**当サーバーへのデマに関する重要なお知らせ**】 現在PrisMisskeyに関するデマ情報が広まっています。 不確かな情報を見かけた場合は、反応や拡散はせず、直接私達運営チームに問い合わせるなどご協力をお願い致します。
:onmyou::vc:Charlie Root|relay@mastodon.hakurei.win“デマ”ねぇ
AGPLv3違反の件なら、ソースコードの場所を明示してなかった時点でアウトよ
https://prismisskey.space/notes/9pkre5fnys
:onmyou::vc:Charlie Root|relay@mastodon.hakurei.winreplying to まっちゃとーにゅ|u1_liquid@misskey.io@u1_liquid ソースコードを探すためにprismisskey.spaceを開いたのでPrisMisskeyとリモートでコンピュータネットワークを介して対話的にやり取りをした しかし、ソースコードの入手方法は明示的に書かれていなかった AGPLv3 第13条 本許諾書に含まれる他の条件に関わらず、あなたが『プログラム』を改変した場合、改変したバージョンは、そのバージョンとリモートでコンピュータネットワークを介し対話的にやりとりする(あなたのソフトウェアがそのようなインタラクションをサポートしている場合)すべてのユーザに対して、ネットワークサーバから、あなたのバージョンに『対応するソース』にアクセスする手段を、無償、かつソフトウェアのコピーを円滑に行う上で標準的、慣習的に用いられる方法で提供することにより、ユーザが『対応するソース』を受け取る機会を明示的に与えなければなければならない。ここでいう『対応するソース』には、次の段落に従って取り込まれた、GNU 一般公衆利用許諾書のバージョン3で保護されるすべての作品も含まれる。
AGPLv3の第13条の違反になっているという指摘です。
反論
まっちゃてぃー側の反論が以下です。まとめるのが面倒なので、関連しそうな投稿をまとめて引用掲載しました。
PrisMisskeyをブロックしてる理由わけわからない嘘で良い サーバー管理人誰だよwwwww :mattyatea_ohuton:まっちゃてぃー。:mattyatea_ohuton:|mattyatea@mattyaski.co[p.tty7.uk](http://p.tty7.uk) has blocked the following instances: [prismisskey.space](http://prismisskey.space) for “サーバー管理者の対応が完全に「とても社会人とは思えない」、私の友人がこのサーバーから凍結された理由が「私と関わっていた」から。そういう独裁主義のサーバーは大嫌いなのでブロックしました。あとは運営の中に鍵投稿を普通に晒してくる人もいますし、ここの運営自体、治安がよろしくないです。最近では、Misskey自体のライセンス違反をしていて、飽きれています。” [mattyaski.co](http://mattyaski.co) for “prismisskey.spaceの管理者の一人、サーバーの管理をしてる、中学生でサーバーをたてれるのはすごいが、少し調子に乗っていて好きでは無い。” [key.kubiwa.moe](http://key.kubiwa.moe) for “なぜかブロックされていたのでブロックし返す。” [tooters.org](http://tooters.org) for “kizzkey.cloudだけブロックされてたので先にブロック” *.unko for “うんこ過ぎる” fedi-block-api notifier|fba@ryona.agency
【⚠️**当サーバーへのデマに関する重要なお知らせ**】 現在PrisMisskeyに関するデマ情報が広まっています。 不確かな情報を見かけた場合は、反応や拡散はせず、直接私達運営チームに問い合わせるなどご協力をお願い致します。 Z.N:z_n::jin::mark_illust:|z_n_jin@prismisskey.space
【⚠️**当サーバーへのデマに関する重要なお知らせ**】 現在PrisMisskeyに関するデマ情報が広まっています。 不確かな情報を見かけた場合は、反応や拡散はせず、直接私達運営チームに問い合わせるなどご協力をお願い致します。 Prismisskey運営チーム PrisMisskey.space 公式|prismisskey@misskey.io
【PrisMisskey 弐・壱壱事件まとめ】 ・某鯖の鯖缶からPrisMisskeyに対する誹謗中傷を吹聴しドメインブロック ・完全に事実無根であり、私怨がありありと感じる内容 ・他鯖の協力もあり火が起こる前に鎮火
ちなみにソースコード要求はcontactに書いてあるメールアドレスに送ってもらえてたらすぐ提示できてたんだよな :mattyatea_ohuton:まっちゃてぃー。:mattyatea_ohuton:|mattyatea@mattyaski.co
https://www.gnu.org/licenses/agpl-3.0.en.html 6.(d 指定された場所(無償または有償)からのアクセスを提供することによってオブジェ クトコードを伝達し、さらに同じ場所を通じて同じ方法で『対応するソース』 への同等のアクセスを無償で提供する。あなたは、オブジェクトコードとともに『対応するソース』をコピーすることを受領者に要求する必要はありません。オブジェクトコードをコピーする場所がネットワーク・サーバである場合、 『対応するソース』は、同等のコピー機能をサポートする別のサーバ(あなたあるいは 第三者によって運営される)にあっても構いません。どのサーバが『対応するソース』をホストしているかに関わらず、あなたは これらの要件を満たすために必要な限り、『対応するソース』が利用可能であることを 保証する義務を負うことに変わりはありません。 要するにアクセスができるのを保証すべきなんだと思う だからずっと場所を変えはしたけどアクセスはできる保証はあったよ :mattyatea_ohuton:まっちゃてぃー。:mattyatea_ohuton:|mattyatea@mattyaski.co
misskey-devの人のAGPL3.0の考え方が知りたい 私的には インターネット上で参照できれば良い っていう認識なんだけど :mattyatea_ohuton:まっちゃてぃー。:mattyatea_ohuton:|mattyatea@mattyaski.co
それでいいと思う (GitHubで公開する必要はない aqz/tamaina|aqz@p1.a9z.devmisskey-devの人のAGPL3.0の考え方が知りたい 私的には インターネット上で参照できれば良い っていう認識なんだけど :mattyatea_ohuton:まっちゃてぃー。:mattyatea_ohuton:|mattyatea@mattyaski.co
@mattyatea ・聞かれたら開示する ・可能ならソースコードのリンクも変更しておく くらいでいいんでは replying to :mattyatea_ohuton:まっちゃてぃー。:mattyatea_ohuton:|mattyatea@mattyaski.co
自分もこう思ってる :mattyatea_ohuton:まっちゃてぃー。:mattyatea_ohuton:|mattyatea@mattyaski.co要はソースコードのコピーを求められたならば提供しなければならない。なお手段は問わないのでソースコード全部印刷してそいつの家に郵送しても良い Unuaviro F. Arĝentakato|argxentakato@akkoremaji.club
私の解釈は一般的なGPLと同様に「ユーザから問い合わせがあったときに開示されればOK」という解釈を持っています。 GPLの6.b.1を参照してください anatawa12 :vrc::unity::unityerror:|anatawa12@misskey.niri.lamisskey-devの人のAGPL3.0の考え方が知りたい 私的には インターネット上で参照できれば良い っていう認識なんだけど :mattyatea_ohuton:まっちゃてぃー。:mattyatea_ohuton:|mattyatea@mattyaski.co
ありがとう :mattyatea_ohuton:まっちゃてぃー。:mattyatea_ohuton:|mattyatea@mattyaski.co私の解釈は一般的なGPLと同様に「ユーザから問い合わせがあったときに開示されればOK」という解釈を持っています。 GPLの6.b.1を参照してください anatawa12 :vrc::unity::unityerror:|anatawa12@misskey.niri.la
#AGPL は求められたときにソースコードを開示できればいいんだけど、いちいち開示するのは面倒だし、変更履歴も確認できた方がアドだから、 #Git リポジトリ ( #GitHub とは限らない) で公開するのが望ましいと感じている https://mattyaski.co/notes/9pkv7w9q6k
だからソース公開の義務は「求められたら開示」で良くて、請求されなくとも公開しておく必要は無いんだってば。
Misskey-devの一部の人はURLを明示的に表示する必要はないと考える人もいるから一概にそうとは言えないと思うんだけど.. :mattyatea_ohuton:まっちゃてぃー。:mattyatea_ohuton:|mattyatea@mattyaski.co
穏やかではない話題を何度も申し訳ないのですが、こちらでも声明を出しておきます。 こちらは公式としての声明文です。 PrisMisskey(Misskey)はAGPL3.0というライセンスの違反をしているなどの指摘が有りましたが、複数の開発者、Misskey-devメンバーなどから 「明示的に表示しなくとも正式な要求をされた時点で提示すれば良い」 などの見解を頂き また、元の解釈が広義的な規約のためこれらの意見を客観的かつ統合的に考慮した結果、当鯖のライセンス違反の事実は無いと断定しました。 そのため、今後当鯖における独自機能のリポジトリに関しましては、正式なお問い合わせ以外での回答は控えさせていただきますので、ご理解とご了承を何卒宜しくお願い致します。
PrisMisskey公式としての見解です :mattyatea_ohuton:まっちゃてぃー。:mattyatea_ohuton:|mattyatea@mattyaski.coPrisMisskey(Misskey)はAGPL3.0というライセンスの違反をしているなどの指摘が有りましたが、複数の開発者、Misskey-devメンバーなどから 「明示的に表示しなくとも正式な要求をされた時点で提示すれば良い」 などの見解を頂き また、元の解釈が広義的な規約のためこれらの意見を客観的かつ統合的に考慮した結果、PrisMisskeyのライセンス違反の事実は無いと断定しました。 そのため、今後PrisMisskeyにおける独自機能のリポジトリに関しましては、正式なお問い合わせ以外での回答は控えさせていただきますので、ご理解とご了承を何卒宜しくお願い致します。 PrisMisskey.space 公式|prismisskey@misskey.io
正式な問い合わせ の定義については、 https://prismisskey.space/about に書かれているメールアドレスに対してのお問い合わせとなります。
正式な問い合わせ の定義については、 https://prismisskey.space/about に書かれているメールアドレスに対してのお問い合わせとなります。 PrisMisskey.space 公式|prismisskey@misskey.ioPrisMisskey(Misskey)はAGPL3.0というライセンスの違反をしているなどの指摘が有りましたが、複数の開発者、Misskey-devメンバーなどから 「明示的に表示しなくとも正式な要求をされた時点で提示すれば良い」 などの見解を頂き また、元の解釈が広義的な規約のためこれらの意見を客観的かつ統合的に考慮した結果、PrisMisskeyのライセンス違反の事実は無いと断定しました。 そのため、今後PrisMisskeyにおける独自機能のリポジトリに関しましては、正式なお問い合わせ以外での回答は控えさせていただきますので、ご理解とご了承を何卒宜しくお願い致します。 PrisMisskey.space 公式|prismisskey@misskey.io
13条の言及は一切なく、GPLと共通部分の6条を根拠に、MIsskey開発者陣のaqzや(仮)、他何名かからの問題ないとの回答を受けて、「問い合わせがあったら提示すればいい」という判断をしていました。繰り返しますけど、AGPLv3の13条は他の条文より優先されます。13条を無視して6条を議論することは的外れでナンセンスです。
すくなくとも、mattyaski.coとPrismisskeyのサイトを軽く眺めた限り、独自改造をしているというならば、ソースコードへのアクセスは見当たらず、「Instance Information | PrisMisskey」などでメールアドレスからの問い合わせになっていました。そして、2024-02-18T12:00+09 Sun時点ではそのメールアドレスも「保安: 2/16 Friの拡大した公開メール悪用・スパム攻撃と犯人の動向 | GNU social JP Web」の対策で非公開になっています。メールアドレスを秘匿してアクセス方法を削除したので、少なくともこの時点ではAGPLv3違反でしょう。ソースコード提供元サーバーのURLの拡散自体は問題ないのだから、いちいちそういう無駄な手間がかかるだけのせこいことをしていないで、素直にURLを掲載すればいいです。そういうせこい隠蔽工作がむかつくので、今度私が問い合わせて、URLをWikiに記載したり、サイトの記事にします。ログインしていない状態でWebブラウザーでのアクセスもユーザーなので。ソースコード開示を拒めば違反確定です。
Misskey開発者含めて、ここで登場した全員リーガル素人です。Misskey開発者が言ったから正しいとはなりません。学者、専門家、身の回りの大人や頼れそうな人の発言の妄信・鵜呑みは、陰謀論などに騙される頭悪い人のパターンです。根拠ベースで論理的でもっともな指摘をデマだと誤認するあたりが陰謀論の妄信者と構造は同じです。Misskey開発者は基本的に20代以下でほぼ全員子供です。自分と似たような人間で身の回りの人間が固まっているので、周りに聞いたところで、自分と同じ意見しか返ってきません。同質な考え方、視野で思考が凝り固まり、無意識に偏見も助長されます。エコーチェンバーの怖ろしい所以です。多様性とは真っ向から反対の同質的な文化です。ザ・日本人健常者というところです。
今回の@relayのような自分と異なる外部からの論理の通った指摘には真摯に耳を傾けたほうがよいです。まっちゃてぃーは自分の視野外の新しい知見でわざわざ間違いを指摘してくれた@relayにメールなどで謝罪して、指摘に感謝すべきだろうと思います。自分の間違いを指摘してくれる人間の重要性を理解したほうがいいです。大人になると誰も間違いを指摘せず、そのまま間違ったまま突き進んで暴走します。なお、多くの人は、くだらない何の役にも立たないプライドがあるからなのか、自分の非を認めて謝罪・感謝ができません。まっちゃてぃーも同じタイプの人間でそれはできないと思います。できるものなら、私の予想を裏切ってみてほしいです。たぶん無理でしょうけど。
結論
まっちゃてぃーのAGPLv3違反騒動でした。
今回の件で、自分のAGPLv3の理解がかなり高まりました。今回の件で私もAGPLへの理解が不十分だったので、勉強になりました。調査メモを「License – GNU social JP Wiki」にも記載しています。
同時に、分散SNS上で見かける人物の言動が、根本的にかなり的外れなことがあることも再認識できたでしょう。開発者とか、大人とか、ある分野に詳しい専門家っぽい人間による、素人分野の一見それっぽそうに見える意見が一番危ないです。当たり前ですけど、専門家は自分の専門分野を外れたら素人です。その辺の素人と同じです。
あまりそういう自覚はないですけど、たぶん、私がASDなのと大学院まで進学して、論理的思考力やリサーチ能力が常人離れしているだけで、今回のように根拠・事実ベースで論理的に物事考えられない人が世の中の大半なのでしょう。
今後AGPLの話がでてきたら、こちらの記事やWikiを参照することにします。
詳細プロフィール。SNS: X Twitter/GS=gnusocialjp@gnusocial.jp/WP=gnusocialjp@web.gnusocial.jp。2022-07-17からgnusocial.jpとweb.gnusocial.jpのサイトを運営しています。WordPressで分散SNSに参加しています。このアカウントの投稿に返信すると、サイトのコメント欄にも反映されます。
Comments
参考情報として、この記事投稿時に「mattyatea – GNU social JP Wiki」のWikiページを作りました。何回も登場するので。
https://gnusocial.jp/notice/5416740
This Article was mentioned on web.gnusocial.jp