পাইথনে অ্যাপ্লিকেশন তৈরী, ওয়েব ডেভেলপমেন্ট, সায়েন্টিফিক কম্পিউটেশন, সফ্টওয়্যার টেস্টিং, মেশিন লার্নিং ইত্যাদি বহুদ্দেশ্যে ব্যবহার হয়। ইনফরমেশন সিকিউরিটির दृশ্টিকোণ থেকে সিস্টেম অ্যাপ্লিকেশন টেস্টিং ও ডেভেলপমেন্টেও পাইথন ব্যবহৃত হয়। হ্যাশ তৈরি, ইনফরমেশন গ্যাদারিং, এনক্রিপশন/ডিক্রিপশন, ওয়েব ক্রলিং, স্পুফিং ইত্যাদির জন্য বিভিন্ন লাইব্রেরি এবং টুল রয়েছে।
এই আর্টিকেলে একটি প্রোগ্রাম তৈরি করা হবে যা পাসওয়ার্ড প্রটেক্টেড PDF ডকুমেন্ট ডিক্রিপ্ট করবে। ডিক্রিপশনের জন্য একটি ওয়ার্ড লিস্ট ব্যবহার করা হবে যেটিতে কিছু কমন পাসওয়ার্ড থাকবে।
PDF ক্র্যাকার তৈরি করতে pikepdf লাইব্রেরি ইম্পোর্ট করতে হবে। একবার ডাউনলোড হলে নোটবুকে ইনক্লুড করা যাবে। রেফারেন্স হিসেবে ৫০০০টি কমন পাসওয়ার্ডযুক্ত এই ওয়ার্ডলিস্ট ব্যবহার করা হবে।
উদাহরণ
import pikepdf
from tqdm import tqdm
# পাসওয়ার্ড লিস্ট লোড
password = [line.strip() for line in open("wordlist.txt")]
# সব পাসওয়ার্ডের ওপর ইটারেট
for paswrd in tqdm(password, "Cracking PDF"):
try:
# PDF ফাইল ওপেন
with pikepdf.open("protected.pdf", password=paswrd) as pdf:
# পাসওয়ার্ড মached হলে লুপ ব্রেক এবং আউটপুট প্রিন্ট
print("Password found:", paswrd)
break
except pikepdf._qpdf.PasswordError as e:
# পাসওয়ার্ড না পেলে কন্টিনিউ
continue
আউটপুট
উপরের কোড রান করলে প্রথমে পাসওয়ার্ড খুঁজে বের করবে এবং সেটা আউটপুট হিসেবে প্রিন্ট করবে।
