2010-10-28 11 views
6

क्या यह जांचना संभव है कि ghdscript का उपयोग कर पीडीएफ पासवर्ड सुरक्षित है या नहीं? आदेश क्या होगा? मुझे पता है कि आप ghostscript, का उपयोग करके पीडीएफ पासवर्ड पट्टी कर सकते हैं, लेकिन मैं बस इतना करना चाहता हूं कि पीडीएफ पासवर्ड सुरक्षित है या सुरक्षा सक्षम है या नहीं।क्या यह जांचना संभव है कि ghdscript का उपयोग कर पीडीएफ पासवर्ड सुरक्षित है या नहीं?

+0

एक बक्षीस शुरू करने के बाद, मैं यह भी जानना चाहूंगा कि पासवर्ड से सुरक्षित पीडीएफ अन्य उपकरणों के साथ पता लगाना संभव है या नहीं। – Benoit

उत्तर

4

checkuserpasswdPDF.sh: उपयोगकर्ता के पासवर्ड से सुरक्षित पीडीएफ़ के लिए

#!/bin/sh 

GS=~/gs/bin/gs 
output=`$GS -dBATCH -sNODISPLAY "$1" 2>&1` 
gsexit=$? 

if [ "$gsexit" == "0" ]; then 
    echo "Not user-password protected" 
    exit 0; 
else 
    found=`echo "$output" |grep -o "This file requires a password"` 
    if [ -z "$found" ]; then 
    echo "Failed to invoke gs" 
    exit $gsexit 
    else 
    echo "Protected" 
    exit 0; 
    fi 
fi 

चेकों: checkuserpasswdPDF.sh test.pdf

जीएस मालिक-पासवर्ड की उपेक्षा करता है (this देखें)।

+0

हम यह आशाजनक लग रहा है, मैं इसे आज़मा दूंगा – Aman

2

pdftk के साथ dump_data ऑपरेशन करने का प्रयास करके उपयोगकर्ता पासवर्ड या मालिक पासवर्ड का पता लगाना संभव है। पढ़ने, डेटा निकालने, संशोधित करने ...:

protected=0 
pdftk "input.pdf" dump_data output /dev/null dont_ask || protected=1 

समस्या यहाँ आप नहीं जानते कि क्या पासवर्ड रोकता है?

+1

मैंने कुछ ऐसा करने की कोशिश की, लेकिन यह सीमित था और पीडीएफटीके हमेशा मुझे सही परिणाम नहीं दे रहा था। – Aman

0

बल्ले फ़ाइल का उपयोग करके, आप पीडीएफ में "एन्क्रिप्ट" की खोज करके थोड़ा सा कामकाज कर सकते हैं। कई फाइलों के माध्यम से खोजने के लिए यह शांत है।

Findstr /M /I "Encrypt" *.pdf 

यह सभी फ़ाइल नाम है कि सुरक्षित हैं (क्योंकि "एन्क्रिप्ट" फ़ाइल में लिखा जाएगा डॉस इसे पढ़ता है के रूप में)

वापस आ जाएगी शायद यह कुछ किसी का उपयोग कर सकते है। मैं उपयोग करता हूं:
for /f %%a in ('Findstr /M /I "Encrypt" *.pdf') do move %%a c:\tempfiles\
सभी सुरक्षित पीडीएफ से c: \ tempfiles को स्थानांतरित करने के लिए। वहां से मैं सुरक्षा को हटाने के लिए भूतस्क्रिप्ट का उपयोग करता हूं, और इसे मूल फ़ोल्डर में वापस ले जाता हूं।

संबंधित मुद्दे

 संबंधित मुद्दे