Elsevier、ダウンロードごとに固有のハッシュをPDFメタデータに埋め込む(2022年)
(social.coop)- 学術PDFが共有される際、ダウンロードごとのメタデータとアクセス時刻が組み合わされると、同じ論文ファイルでも出所追跡に使われる可能性がある
- 識別値は
exiftoolで確認でき、上位レベルのメタデータは exiftool + qpdf の組み合わせで削除できる - PDF には「final published version」(VoR)を示す NISO タグ と許可ドメイン制限も含まれており、Elsevier はこうしたメタデータを持つ PDF をスキャンしている
- Sci-Hub で入手した論文にも該当メタデータが残っているようで、論文ダウンロードに使われた 学術アカウント の特定につながる可能性がある
- 異なる識別タグを持つ 2 つの PDF は、メタデータ削除と
qpdf --deterministic-id処理後にdiff上では同一だったが、追加のウォーターマーキングがないと一般化するのは難しい
ダウンロードごとに変化する Elsevier PDF メタデータ
- Elsevier の PDF には、ダウンロードごとに固有の ハッシュ がメタデータとして埋め込まれる
- 同じ論文を 2 回ダウンロードしてメタデータを比較すると、異なる値が現れる
- この値がアクセス時刻と結びつくと、共有された PDF がどのダウンロード由来かを特定するのに使われる可能性がある
確認と削除に使われたツール
exiftoolで PDF メタデータを直接確認できる- 上位レベルのメタデータ削除コマンド:
exiftool -all:all= <path.pdf> -o <output1.pdf>qpdf --linearize <output1.pdf> <output2.pdf>
- すべてのメタデータ削除には dangerzone または mat2 を使える
- 関連ツール:
- exiftool: メタデータの読み書きツール
- qpdf: PDF 処理ツール
- dangerzone: PDF を画像としてレンダリングした後、再度 OCR する GUI ツール
- mat2: PDF を画像としてレンダリングするが OCR は行わないメタデータ削除ツール
自動整理スクリプトとタグ抽出
- 提供されたシェルスクリプトは、指定ディレクトリまたは現在のディレクトリで PDF を再帰的に探し、メタデータを削除する
- 対象環境は macOS と Unix 系で、
qpdfとexiftoolのインストールが必要 - 各 PDF について
_clean.pdf接尾辞付きの整理版を作成し、exiftoolとqpdf --linearizeを適用する - その後、正しく抽出したタグと、直接抽出できる Python コード が gist に追加された
- 当初は「hash」と呼ばれていたが、抽出された値には明確なパターンがあり、何を含んでいるかはまだ分かっていない
NISO タグと Sci-Hub に残る痕跡
- PDF メタデータには文書状態を示す NISO タグ が含まれる
- 文書状態は「final published version」(VoR)として表示される
- どのドメイン上に存在すべきかという制限も一緒に含まれている
- Elsevier はこのメタデータを持つ PDF をスキャンしているため、コピーを共有する際にはメタデータ削除が必要となる
- Sci-Hub で入手した論文にも該当メタデータが保持されているようだ
- Sci-Hub が収集された学術認証情報で論文をダウンロードする方式なら、出版社はこのメタデータを通じて停止または保護すべきアカウントを特定できる可能性がある
追加ウォーターマーキングの可能性と検証結果
- メタデータ以外にも、より精巧な ウォーターマーキング がある可能性は残っている
- 異なる識別タグを持つ 2 つのファイルを対象にした実験結果:
- メタデータを削除した
qpdfの--deterministic-idフラグで再線形化した- 結果の PDF は
diff上で同一になった
- この結果だけで追加ウォーターマーキングがないと一般化するのは慎重であるべきだ
- メタデータは大量の PDF を素早くスキャンできるため、特に目立つ識別手段である
1件のコメント
Hacker News の意見
そもそも自分たちが作ったわけでも資金を出したわけでもないアイデアを共有した人を見つけ出して、金を払っていないとして罰するために、ここまで必死になる姿が想像できる。
こういう会社はただ、人類の進歩を妨げる存在に見える。
しかも、こうした会社はカラー画像の印刷のような追加サービスにも、著者から法外な金額を取る。
遠い将来、学校や大学でこういう会社が社会的寄生虫の事例として扱われるようになる気がする。
本当の問題は、特に米国政府のように、強制力の独占を利用して、こうした会社がそのビジネスモデルを執行できるよう手助けしている政府だと思う。
何年もかける著者もいれば、多くの著者は少なくとも1年は費やし、論文1本に何年もかける研究者もいる。
Elsevierもこの作業の制作と資金調達にかなり関与しているパートナーであり、そこで働く人たちは編集・組版・配布を担当している。
著者たちもこの過程のパートナーで、Elsevierからロイヤリティを受け取る場合も多い。
それなのに、海賊版を正当化しようとして、あらゆるこじつけの理屈を並べる人たちがいる。
貧しい著者がいるなら、違法コピーが文章の販売で生計を立てる能力を損なっていると見るべきだ。
文書を公開する前に、別々の2つの入手元からコピーを受け取ってハッシュを比較するのは良い習慣に思える。
データは画像、音声ファイル、PDF、プログラムなど、どこにでも埋め込める。
少なくともElsevierの場合、ユーザーを追跡するためにキーを使っていることはかなり明確に見える。
あの法律をついに有用に使えるかもしれない。
PDFファイルから潜在的なマルウェアを除去するために使える自由なオープンソースツールとしてDangerZoneがあり、メタデータも削除できる。
単純なメタデータ整理には大げさかもしれないが、触れておく価値はある。
https://dangerzone.rocks/
十分に長いPDFには、128ビット識別子を隠す方法がたくさんある。
白い背景上の白い四角形、ところどころにあるほんのわずかに黒ではないピクセルなど、何でもあり得る。
多くの方式は印刷してスキャンしても生き残り得る。
PDF全体を整理し、サイズも減らすために小さなスクリプトを使っている。
だいたいこんな感じ。
pdftops -paper A4 -expand -level3 file.pdfps2pdf14 -dEmbedAllFonts=true \-dUseFlateCompression=true \-dOptimize=true \-dProcessColorModel=/DeviceRGB \-r72 \-dDownsampleGrayImages=true \-dGrayImageResolution=150 \-dAutoFilterGrayImages=false \-dGrayImageDownsampleType=/Bicubic \-dDownsampleMonoImages=true \-dMonoImageResolution=150 \-dMonoImageDownsampleType=/Subsample \-dDownsampleColorImages=true \-dColorImageResolution=150 \-dAutoFilterColorImages=false \-dColorImageDownsampleType=/Bicubic \-dPDFSETTINGS=/ebook \-dNOSAFER \-dALLOWPSTRANSPARENCY \-dShowAnnots=false \file.pdf file.pdf必要なら、その後で追加のメタデータを入れられる。
特定の追跡手法を除去するよう特別に設計されたものではないが、ほとんどの場合は簡単で十分に役立つ。
ElsevierからPDFをダウンロードし、自分のPDFビューアで開き、印刷を押してプリンターの選択でPrint to PDFを選べばよい。
この情報はファイルのコピー時に保持される可能性が高く、ツールや形式によっては圧縮ファイルの中に入り、後で復元されることもある。
https://www.digital-detective.net/forensic-analysis-of-zone-...
Total Commanderのプラグインの中には、特定のファイルをどこからダウンロードしたかを表示するものもある。
いくつかインストールしているので正確にどれかは分からないが、おそらくこのプラグインだと思う: https://totalcmd.net/plugring/ntfsstreamviewer.html
その後、印刷したPDFページを再度スキャンし、
convert、pdfuniteでPDF文書にまとめてから、ghostscriptで圧縮すればよい。本当に絶対必要だと確信していない限り、どうかこういうことはしないでほしい。
この話題に関連しているので残しておく
https://github.com/kanzure/pdfparanoia
そして
https://github.com/firstlookmedia/pdf-redact-tools
DangerZone のリンクは、もともと投稿された Mastodon スレッドで見つけられる
人類の知識を共有し、開放できるようにするツールを作るべきだ
https://en.m.wikipedia.org/wiki/Sci-Hub
こういうフィンガープリントを自動で除去してくれるとよさそうではある
Elsevier のような存在が生き残り続け、人々が実際にこうした寄生的なシステムに金を払っているという事実は、根本原因を見つけて分析する必要がある
考えられる手がかりは、学界が結局のところ怠惰でシステムを直す気がないこと、研究に没頭しすぎて自分の仕事と直接関係のないものの品質がひどいこと、そしてこうしたシステムを存続させている人々に還元されるインセンティブ構造があることだ
ほかに手がかりはあるだろうか
たとえば技術系の分野はオープンアクセスジャーナルへかなり移行しており、研究者の昇進にも十分機能している
しかし、テニュアのようなものが Nature 掲載にかかっている限り、近い将来に Nature を押しのけるのは難しい
メタデータは文書のウォーターマーキングにおいて非常に簡単な標的だ
通常、PDF レンダラーは間隔、カーニング、不可視文字、さまざまなステガノグラフィーを使って各コピーを一意にする
ハッシュに何の意味があるのかと思うし、実際には秘密値と一意のコピーを混ぜたメッセージ認証コードである可能性のほうが高い
そうすれば出版社がロンダリングされたコピーを識別する助けになる
2つ以上のコピーがあれば再び匿名化できるし、要約型の言語モデルがこういう用途に役立つのかも気になる
もちろん図表にもステガノグラフィー的な変形を入れられる
PDF は扱いにくい文書なので、ほとんどの場合プレーンテキストに変換しており、通常は意味の損失はない
この慣行はEUで合法なのか