1 คะแนน โดย GN⁺ 2024-06-11 | 1 ความคิดเห็น | แชร์ทาง WhatsApp
  • เมื่อมีการแชร์ PDF วิชาการ หาก เมตาดาต้าเฉพาะการดาวน์โหลด ถูกนำมารวมกับเวลาเข้าถึง แม้จะเป็นไฟล์บทความเดียวกันก็อาจใช้ติดตามแหล่งที่มาได้
  • ค่าระบุตัวตนสามารถตรวจสอบได้ด้วย exiftool และเมตาดาต้าระดับสูงสามารถลบได้ด้วยการใช้ exiftool + qpdf ร่วมกัน
  • ใน PDF ยังมี แท็ก NISO ที่บ่งชี้ “final published version” (VoR) และข้อจำกัดโดเมนที่อนุญาต โดย Elsevier สแกน PDF ที่มีเมตาดาต้าเหล่านี้
  • ดูเหมือนว่าเอกสารที่ดาวน์โหลดจาก Sci-Hub ก็ยังคงมีเมตาดาต้าดังกล่าวอยู่ ซึ่งอาจนำไปสู่การระบุ บัญชีวิชาการ ที่ใช้ดาวน์โหลดบทความได้
  • PDF สองไฟล์ที่มีแท็กระบุตัวตนต่างกัน หลังลบเมตาดาต้าและประมวลผลด้วย qpdf --deterministic-id แล้วพบว่าเหมือนกันเมื่อดูด้วย diff แต่ยังยากที่จะสรุปทั่วไปว่าไม่มี watermarking เพิ่มเติม

เมตาดาต้า PDF ของ Elsevier ที่เปลี่ยนไปในแต่ละการดาวน์โหลด

  • PDF ของ Elsevier จะถูกฝัง แฮช เฉพาะของแต่ละการดาวน์โหลดไว้เป็นเมตาดาต้า
  • เมื่อดาวน์โหลดบทความเดียวกันสองครั้งแล้วเปรียบเทียบเมตาดาต้า จะพบค่าที่แตกต่างกัน
  • หากค่านี้ถูกรวมกับเวลาเข้าถึง ก็อาจใช้ระบุได้ว่า PDF ที่ถูกแชร์มาจากการดาวน์โหลดครั้งใด

เครื่องมือที่ใช้ตรวจสอบและลบ

  • สามารถตรวจสอบเมตาดาต้า PDF โดยตรงได้ด้วย exiftool
  • คำสั่งสำหรับลบเมตาดาต้าระดับสูง:
    • exiftool -all:all= <path.pdf> -o <output1.pdf>
    • qpdf --linearize <output1.pdf> <output2.pdf>
  • สำหรับการลบเมตาดาต้าทั้งหมด สามารถใช้ dangerzone หรือ mat2 ได้
  • เครื่องมือที่เกี่ยวข้อง:
    • exiftool: เครื่องมืออ่าน/เขียนเมตาดาต้า
    • qpdf: เครื่องมือประมวลผล PDF
    • dangerzone: เครื่องมือ GUI ที่เรนเดอร์ PDF เป็นภาพแล้วทำ OCR ใหม่
    • mat2: เครื่องมือลบเมตาดาต้าที่เรนเดอร์ PDF เป็นภาพ แต่ไม่ทำ OCR

สคริปต์จัดระเบียบอัตโนมัติและการดึงแท็ก

  • เชลล์สคริปต์ที่ให้มาจะค้นหา PDF แบบ recursive ในไดเรกทอรีที่ระบุหรือไดเรกทอรีปัจจุบัน แล้วลบเมตาดาต้า
  • สภาพแวดล้อมเป้าหมายคือ macOS และตระกูล Unix และจำเป็นต้องติดตั้ง qpdf กับ exiftool
  • สำหรับแต่ละ PDF จะสร้างไฟล์ที่จัดระเบียบแล้วโดยเติม suffix _clean.pdf และใช้ exiftool กับ qpdf --linearize
  • ต่อมามีการเพิ่มแท็กที่ดึงออกมาอย่างถูกต้อง และ โค้ด Python ที่สามารถดึงโดยตรงไว้ใน gist
  • ตอนแรกเรียกว่า “hash” แต่ค่าที่ดึงออกมามีรูปแบบที่ชัดเจน และยังไม่ทราบว่ามันบรรจุอะไรอยู่

แท็ก NISO และร่องรอยที่เหลือใน Sci-Hub

  • เมตาดาต้า PDF มี แท็ก NISO ที่บ่งชี้สถานะเอกสารรวมอยู่ด้วย
    • สถานะเอกสารถูกระบุเป็น “final published version” (VoR)
    • มีข้อจำกัดเกี่ยวกับโดเมนที่เอกสารควรอยู่รวมอยู่ด้วย
  • Elsevier สแกน PDF ที่มีเมตาดาต้านี้ ดังนั้นเมื่อแชร์สำเนาจึงจำเป็นต้องลบเมตาดาต้า
  • ดูเหมือนว่าเอกสารที่ดาวน์โหลดจาก Sci-Hub ก็ยังคงเก็บเมตาดาต้านี้ไว้
  • หาก Sci-Hub ดาวน์โหลดบทความโดยใช้ข้อมูลรับรองทางวิชาการที่รวบรวมมา ผู้จัดพิมพ์อาจใช้เมตาดาต้านี้ระบุบัญชีที่ควรปิดหรือปกป้องได้

ความเป็นไปได้ของ watermarking เพิ่มเติมและผลการตรวจสอบ

  • นอกจากเมตาดาต้าแล้ว ยังมีความเป็นไปได้ว่าจะมี watermarking ที่ซับซ้อนกว่านั้น
  • ผลการทดลองกับไฟล์สองไฟล์ที่มีแท็กระบุตัวตนต่างกัน:
    • ลบเมตาดาต้าแล้ว
    • ทำ linearize ใหม่ด้วยแฟล็ก --deterministic-id ของ qpdf
    • PDF ผลลัพธ์ออกมาเหมือนกันเมื่อดูด้วย diff
  • ควรระมัดระวังที่จะสรุปจากผลนี้เพียงอย่างเดียวว่าไม่มี watermarking เพิ่มเติม
  • เมตาดาต้าเป็นวิธีระบุตัวตนที่โดดเด่นเป็นพิเศษ เพราะสามารถสแกน PDF จำนวนมากได้อย่างรวดเร็ว

1 ความคิดเห็น

 
GN⁺ 2024-06-11
ความเห็นจาก Hacker News
  • พอนึกภาพออกเลยว่าพวกเขาพยายามหนักขนาดนี้เพื่อไปตามหาคนที่แค่แชร์ไอเดียซึ่งตัวเองไม่ได้สร้างหรือออกทุนให้ตั้งแต่แรก แล้วก็ ลงโทษเพราะไม่ได้จ่ายเงิน
    บริษัทแบบนี้ดูเหมือนเป็นแค่ ตัวขัดขวางความก้าวหน้าของมนุษยชาติ

    • จริง ๆ แล้วไม่ถึงกับยากขนาดนั้น แต่ก็เห็นด้วยกับประเด็นหลัก
      แถมบริษัทพวกนี้ยังเก็บเงินผู้เขียนแพงเกินจริงสำหรับบริการเสริมอย่างการพิมพ์ภาพสีด้วย
      ในอนาคตอันไกล โรงเรียนและมหาวิทยาลัยคงยกบริษัทพวกนี้เป็นตัวอย่างของ ปรสิตทางสังคม
    • ปัญหาไม่ได้อยู่ที่ตัวบริษัทเองเท่าไร แต่ออกจะเป็นอาการมากกว่า
      ปัญหาที่แท้จริงคือรัฐบาลที่ช่วยให้บริษัทพวกนี้บังคับใช้โมเดลธุรกิจแบบนี้ โดยเฉพาะรัฐบาลสหรัฐที่ใช้อำนาจ ผูกขาดการใช้กำลังบังคับ
    • เราควรคิดด้วยว่าการเขียนหนังสือสักเล่มต้องใช้ความพยายามมากแค่ไหน
      ผู้เขียนบางคนใช้เวลาหลายปี และผู้เขียนจำนวนมากก็อย่างน้อย 1 ปี ขณะที่นักวิชาการบางคนใช้เวลาหลายปีกับบทความวิจัยเพียงชิ้นเดียว
      Elsevier ก็มีส่วนร่วมอย่างมากในฐานะพาร์ตเนอร์ด้านการผลิตและการจัดหาเงินทุนสำหรับงานนี้ และพนักงานของบริษัทก็ดูแลงานบรรณาธิการ การจัดหน้า และการจัดจำหน่าย
      ผู้เขียนเองก็เป็นพาร์ตเนอร์ในกระบวนการนี้ และหลายคนก็ได้รับค่าสิทธิจาก Elsevier
      แต่กลับมีคนที่พยายามหาเหตุผลสารพัดเพื่อทำให้การละเมิดลิขสิทธิ์ดูชอบธรรม
      ถ้ามีผู้เขียนที่ยากจน ก็ควรมองว่าการละเมิดลิขสิทธิ์กำลังกัดกร่อนความสามารถของพวกเขาในการหาเลี้ยงชีพจากการขายงานเขียน
    • พอ Elsevier จะบังคับใช้ลิขสิทธิ์ HN ก็ทำเหมือนมันเป็นปีศาจ แต่พอหัวข้อเป็น ข้อมูลสำหรับฝึก AI กลับกลายเป็นนักรบทรัพย์สินทางปัญญาที่เข้มงวดที่สุดเท่าที่ฉันเคยเห็น น่าขำดี
    • เท่าที่เข้าใจ มันไม่ใช่ความผิดของ Elsevier อย่างเดียว แต่เป็นปัญหาที่รัฐบาลใช้ จำนวนบทความที่ตีพิมพ์ในวารสารของ Elsevier เป็นเกณฑ์จัดสรรทุนวิจัยและเลื่อนตำแหน่ง
  • ฟังดูเหมือนเป็นนิสัยที่ดีที่จะขอสำเนาจากสองแหล่งที่ต่างกันก่อนเผยแพร่เอกสาร แล้ว เปรียบเทียบแฮช
    ข้อมูลสามารถฝังได้ทุกที่ ไม่ว่าจะเป็นภาพ เสียง PDF โปรแกรม และอื่น ๆ
    อย่างน้อยในกรณีของ Elsevier ก็ดูค่อนข้างชัดว่าใช้คีย์เพื่อติดตามผู้ใช้

    • แต่อย่างน้อย PDF ก็ไม่มีป๊อปอัปขอความยินยอมคุกกี้นี่นะ
      อาจจะถึงเวลาที่กฎหมายนั้นจะถูกใช้ให้เกิดประโยชน์จริง ๆ เสียที
  • มี เครื่องมือโอเพนซอร์สเสรี ชื่อ DangerZone ที่ใช้ลบมัลแวร์แฝงที่อาจอยู่ในไฟล์ PDF ได้ และลบเมตาดาต้าได้ด้วย
    อาจจะเกินความจำเป็นถ้าจะใช้แค่ทำความสะอาดเมตาดาต้าอย่างเดียว แต่ก็ควรค่าแก่การพูดถึง
    https://dangerzone.rocks/

    • มันอาจไม่ได้เป็นแค่ปัญหาเรื่องเมตาดาต้า
      ถ้า PDF ยาวพอ ก็มีหลายวิธีที่จะซ่อน ตัวระบุขนาด 128 บิต ไว้ได้
      จะเป็นสี่เหลี่ยมสีขาวบนพื้นขาว หรือพิกเซลที่ไม่ดำสนิทแทรกอยู่ประปรายก็ได้
      หลายวิธียังอาจอยู่รอดได้แม้พิมพ์ออกมาแล้วสแกนใหม่
  • ฉันใช้สคริปต์เล็ก ๆ เพื่อจัดการ PDF โดยรวมและลดขนาดไฟล์ไปด้วย
    ประมาณนี้
    pdftops -paper A4 -expand -level3 file.pdf
    ps2pdf14 -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
    ถ้าจำเป็นก็สามารถใส่เมตาดาต้าเพิ่มทีหลังได้
    มันไม่ได้ถูกออกแบบมาโดยเฉพาะเพื่อเอาวิธีติดตามบางแบบออก แต่ในกรณีส่วนใหญ่ก็เรียบง่ายและมีประโยชน์เพียงพอ

  • ดาวน์โหลด PDF จาก Elsevier เปิดในโปรแกรมอ่าน PDF ของตัวเอง แล้วกดพิมพ์ จากนั้นเลือก Print to PDF ในตัวเลือกเครื่องพิมพ์ก็พอ

    • ขั้นที่ 0 คือปิดการบันทึก Zone Identifier หรือใช้เครื่องมือลบทิ้ง
      ข้อมูลนี้มีแนวโน้มจะคงอยู่ตอนคัดลอกไฟล์ และขึ้นอยู่กับเครื่องมือกับรูปแบบไฟล์ มันอาจถูกเก็บอยู่ในไฟล์บีบอัดแล้วถูกกู้กลับมาในภายหลังได้ด้วย
      https://www.digital-detective.net/forensic-analysis-of-zone-...
      มีปลั๊กอินของ Total Commander บางตัวที่แสดงได้ด้วยว่าไฟล์หนึ่งถูกดาวน์โหลดมาจากไหน
      ฉันติดตั้งไว้หลายตัวเลยไม่แน่ใจว่าอันไหน แต่คิดว่าน่าจะเป็นปลั๊กอินนี้: https://totalcmd.net/plugring/ntfsstreamviewer.html
    • ดาวน์โหลด PDF จากสำนักพิมพ์ เปิดในโปรแกรมอ่าน PDF กดพิมพ์ แล้วพิมพ์ลงกระดาษจริง
      จากนั้นสแกนหน้า PDF ที่พิมพ์ออกมาอีกครั้ง เอามารวมเป็นเอกสาร PDF ด้วย convert, pdfunite แล้วบีบอัดด้วย ghostscript
    • ถึงอย่างนั้น สเตกาโนกราฟีที่อาจซ่อนอยู่ใน เคอร์นนิง สี ระยะห่างบรรทัด และอื่น ๆ ก็อาจยังคงอยู่ครบ
    • อีกวิธีคือหลังดาวน์โหลด PDF จาก Elsevier แล้วแปลงแต่ละหน้าเป็นภาพ PNG นำมารวมเป็น PDF ใหม่ แล้วค่อยรัน OCR
    • ผลลัพธ์คือแท็กและ ข้อมูลการเข้าถึง ที่มีอยู่ใน PDF จะพังยับทั้งหมด
      ถ้าไม่ได้มั่นใจจริง ๆ ว่าจำเป็น โปรดอย่าทำแบบนี้เด็ดขาด
  • เก็บอันนี้ไว้เพราะเกี่ยวข้องกับหัวข้อนี้
    https://github.com/kanzure/pdfparanoia
    และ
    https://github.com/firstlookmedia/pdf-redact-tools

    • ในหน้า pdf-redact-tools เขียนไว้แบบนี้: “Warning: This project is no longer maintained. A much better tool is dangerzone.”
      ลิงก์ DangerZone หาได้จากเธรด Mastodon ที่ส่งมาตอนแรก
  • ต้องสร้างเครื่องมือที่ช่วยให้สามารถแบ่งปันและเปิดให้เข้าถึง ความรู้ของมนุษยชาติ ได้

    • สงสัยคงไม่เคยได้ยินเรื่อง Sci-Hub
      https://en.m.wikipedia.org/wiki/Sci-Hub
      ถ้ามีตัวลบรอยนิ้วมือแบบนี้ให้อัตโนมัติก็น่าจะดี
  • การที่ Elsevier และพวกที่คล้ายกันยังอยู่รอดต่อไปได้ และผู้คนยังยอมจ่ายเงินให้กับ ระบบปรสิต แบบนี้ เป็นเรื่องที่ควรค้นหาและวิเคราะห์สาเหตุรากฐาน
    เบาะแสที่เป็นไปได้คือ ในที่สุดแล้ววงการวิชาการก็ขี้เกียจและไม่คิดจะแก้ระบบ หมกมุ่นกับงานวิจัยมากเกินไปจนคุณภาพของเรื่องที่ไม่เกี่ยวกับงานตัวเองโดยตรงย่ำแย่ และมี โครงสร้างแรงจูงใจ ที่ตอบแทนคนซึ่งทำให้ระบบแบบนี้คงอยู่
    มีเบาะแสอื่นอีกไหม

    • มันปะปนกันไปแล้วแต่สาขา
      ตัวอย่างเช่น สายเทคนิคได้ย้ายไปใช้ วารสารแบบเปิด (open access) กันมากขึ้น และมันก็ใช้ได้ดีกับการเลื่อนตำแหน่งของนักวิจัยด้วย
      แต่ตราบใดที่การได้ตำแหน่งถาวรยังผูกอยู่กับการตีพิมพ์ใน Nature ก็คงยากที่จะโค่น Nature ลงได้ในอนาคตอันใกล้
  • เมทาดาทาเป็นเป้าหมายที่ง่ายมากสำหรับ ลายน้ำ ของเอกสาร
    ปกติแล้วตัวเรนเดอร์ PDF จะใช้ระยะห่าง การจัดช่องไฟตัวอักษร อักขระที่มองไม่เห็น และสเตกาโนกราฟีสารพัดแบบ เพื่อทำให้แต่ละสำเนาไม่เหมือนกัน
    เลยรู้สึกว่าแฮชคงไม่ได้มีความหมายอะไรมาก และในความเป็นจริงมีแนวโน้มมากกว่าจะเป็น message authentication code ที่ผสมค่าลับกับสำเนาเฉพาะ
    แบบนั้นก็จะช่วยให้สำนักพิมพ์ระบุสำเนาที่ถูกล้างร่องรอยแล้วได้
    ถ้ามีมากกว่าสองสำเนาก็สามารถทำให้กลับมาไม่ระบุตัวตนได้อีก และก็น่าสงสัยว่าโมเดลภาษาสำหรับการสรุปผลจะมีประโยชน์กับงานแบบนี้ไหม
    แน่นอนว่าใส่การดัดแปลงเชิงสเตกาโนกราฟีกับแผนภาพได้ด้วย
    PDF เป็นเอกสารที่รกมาก เลยแทบจะเปลี่ยนเป็น plain text อยู่เสมอ ซึ่งปกติก็แทบไม่สูญเสียความหมาย

  • แนวปฏิบัตินี้ ถูกกฎหมายใน EU หรือไม่

    • Elsevier เป็นบริษัทดัตช์และมีบริษัทอังกฤษเป็นเจ้าของ ดังนั้นก็ดูไม่น่าจะมีปัญหาอะไร