تشفير ملفات PDF

التشفير هو نهج مشهور وموثوق به لحماية محتوى مستندات PDF. عندما يتم تشفير مستند، يصبح محتواه غير قابل للقراءة، ويمكن للمستخدمين المصرح لهم فقط فك تشفير المستند للحصول على حق الوصول إلى المحتويات. عندما تحمي المستندات بكلمة مرور، يمكن للأشخاص الذين يدخلون كلمة المرور الصحيحة الوصول إلى الملف أو المجلد. تعد طريقة الأمان الأقوى هي التشفير، حيث تكون الأنواع الشائعة هي مفتاح 128 بت أو تشفير AES 256 بت. يرجى ملاحظة أن التشفير يحول محتوى المستند إلى نص مشفر غير قابل للقراءة. لفك تشفير المستند، يحتاج المستخدمون المصرح لهم إلى مفتاح، وهو عادةً كلمة مرور أو شهادة رقمية. في هذه المقالة، سنناقش التفاصيل حول كيفية تشفير وفك تشفير ملفات PDF باستخدام Java cloud SDK.

في هذه المدونة، سنناقش الخطوات والتفاصيل المتعلقة بتشفير وفك تشفير مستندات PDF باستخدام Java REST API.

واجهة برمجة تطبيقات Java REST

Aspose.PDF Cloud SDK for Java عبارة عن غلاف حول Aspose.PDF Cloud يتيح لمبرمجي Java الاستفادة الكاملة من الميزات المعروضة حاليًا في واجهة برمجة التطبيقات السحابية الخاصة بنا. لذا، داخل كود Java الخاص بك، يمكنك الحصول على الإمكانيات اللازمة لإنشاء وتحرير وتحويل ملفات PDF إلى تنسيقات المستندات المدعومة المختلفة.

تثبيت

لاستخدام SDK، فإن الخطوة الأولى هي تثبيته على نظامك. Cloud SDK متاح للتنزيل عبر Maven وGitHub. الآن أضف التفاصيل التالية في ملف pom.xml الخاص بك لتنزيل Aspose.Pdf.jar واستخدامه في مشروع بناء Maven.

<repositories>
 <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>http://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>
<dependencies>
 <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-pdf-cloud</artifactId>
        <version>21.1.0</version>
        <scope>compile</scope>
    </dependency>
 </dependencies>

نوصيك أيضًا بزيارة الرابط التالي للحصول على معلومات مفصلة حول كيفية تثبيت Aspose.Cloud SDKs.

اشتراك مجاني في لوحة التحكم السحابية

Aspose.PDF Cloud SDK For Java عبارة عن مجموعة أدوات تطوير سحابية مجانية مفتوحة المصدر لمعالجة ملفات PDF. عندما نذكر أنها مجانية، فهذا يعني أن الكود المصدر الكامل لمجموعة أدوات التطوير متاح للتنزيل على مستودع GitHub. لذا يمكنك تعديل الكود وفقًا لمتطلباتك. ولكن لضمان سرية البيانات وسلامتها، لا يمكن الوصول إلى واجهات برمجة التطبيقات السحابية إلا من قبل الأشخاص المصرح لهم ولا يمكنهم الوصول إلا إلى مساحة التخزين السحابية الخاصة بهم.

لذلك، تحتاج أولاً إلى زيارة لوحة تحكم Aspose.Cloud وإذا كان لديك حساب على GitHub أو Google، فما عليك سوى التسجيل. وإلا، فانقر فوق الزر إنشاء حساب جديد وقم بتوفير المعلومات المطلوبة.

تشفير ملف PDF باستخدام الأمر cURL

أوامر cURL هي واحدة من أسهل وأروع الطرق للوصول إلى واجهات برمجة التطبيقات REST. لذا دعنا نتحدث عن إضافة التعليقات التوضيحية المختلفة باستخدام أوامر cURL. لذا لاستخدام أوامر cURL، نحتاج أولاً إلى إنشاء رمز تفويض وصول JWT. يعتمد رمز الويب JSON (JWT) على تفاصيل معرف العميل والسر الخاص بالعميل، وهي مفاتيح فريدة يتم إنشاؤها لكل عميل. لذا، قم بتسجيل الدخول إلى لوحة معلومات Aspose.Cloud باستخدام بيانات الاعتماد الخاصة بك وقم بتوسيع قسم التطبيقات من لوحة المعلومات وانتقل لأسفل نحو قسم بيانات اعتماد العميل لرؤية تفاصيل معرف العميل والسر الخاص بالعميل.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=a41d01ef-dfd5-4e02-ad29-bd85fe41e3e4&client_secret=d87269aade6a46cdc295b711e26809af" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

قبل المتابعة، يرجى ملاحظة أنه عندما نقوم بتشفير ملفات PDF، نقوم بتعيين كلمات مرور المستخدم والمالك.

كلمة مرور فتح المستند

تتطلب كلمة مرور فتح المستند (المعروفة أيضًا بكلمة مرور المستخدم) من المستخدم كتابة كلمة مرور لفتح ملف PDF.

كلمة مرور الأذونات

مطلوب كلمة مرور الأذونات (المعروفة أيضًا باسم كلمة مرور المالك/الرئيسي) لتغيير إعدادات الأذونات. أثناء استخدام كلمة مرور الأذونات، يمكنك تقييد الطباعة والتحرير ونسخ المحتوى في ملف PDF. هذه الكلمة المرور مطلوبة لتغيير القيود التي قمت بتطبيقها بالفعل.

إذا تم تأمين ملف PDF بكلا نوعي كلمات المرور، فمن الممكن فتحه باستخدام أي كلمة مرور.

يرجى ملاحظة أن واجهة برمجة التطبيقات تقبل كلمات مرور المالك والمستخدم بتنسيق Base64. في أمر cURL التالي، يتم تحديد كلمة مرور المالك (b3duZXJcLy8/ICQxMl5QYXNzd29yZCEm) وكلمة مرور المستخدم (dXNlciAkXlBhc3N3b3JkISY=).

curl -v "https://api.aspose.cloud/v3.0/pdf/PdfWithTable.pdf/encrypt?userPassword=dXNlciAkXlBhc3N3b3JkISY%3D&ownerPassword=b3duZXJcLy8%2FICQxMl5QYXNzd29yZCEm&cryptoAlgorithm=AESx128&permissionsFlags=AssembleDocument&usePdf20=false" \
-X POST \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

تشفير ملف PDF باستخدام Java

لا نضيف حماية بكلمة مرور إلى ملفات PDF فحسب، بل نستخدم طريقة أمان أقوى وهي التشفير. تتيح لك واجهة برمجة تطبيقات Java REST تحديد إحدى طرق التشفير التالية، والتي تحول محتوى المستند إلى نص مشفر غير قابل للقراءة.

| الاسم | الوصف |

| ———— | ———————– |

| RC4x40 | RC4 بطول مفتاح 40. |

| RC4x128 | RC4 بطول مفتاح 128. |

| AESx128 | AES بطول مفتاح 128. |

| AESx256 | AES بطول مفتاح 256. |

استخدم مقتطف التعليمات البرمجية التالي لإضافة userPassword وownerPassword إلى ملفات PDF المتوفرة بالفعل على التخزين السحابي.

  • الخطوة الأولى هي إنشاء مثيل PdfApi أثناء تمرير تفاصيل clientID وclientSecret كوسائط.
  • قم بتحميل ملف PDF إلى التخزين السحابي باستخدام طريقة uploadFile(…) من PdfApi.
  • أخيرًا، قم باستدعاء طريقة postEncryptDocumentInStorage(…) من PdfApi والتي تأخذ اسم ملف PDF المدخل، وكلمات مرور المستخدم والمالك، وقيمة من تعداد CryptoAlgorithm كوسائط.
// احصل على ClientID وClientSecret من https://dashboard.aspose.cloud/
String clientId = "a41d01ef-dfd5-4e02-ad29-bd85fe41e3e4";
String clientSecret = "d87269aade6a46cdc295b711e26809af";
				
// إنشاء مثيل لـPdfApi
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
				
// إدخال مستند PDF
String name = "PdfWithTable.pdf";	        
			   
// تحميل الملف من النظام المحلي
File file = new File("/Users/nayyershahbaz/Downloads/" + name);
// رفع الملف إلى التخزين السحابي
FilesUploadResult uploadResponse = pdfApi.uploadFile(name, file, null);
				
// كلمات مرور المستخدم والمالك المشفرة بتنسيق base64
String userPasswordBase64encoded = "dXNlciAkXlBhc3N3b3JkISY="; //user $^Password!&
String ownerPasswordBase64encoded = "b3duZXJcLy8/ICQxMl5QYXNzd29yZCEm"; //owner\//? $12^Password!&

// استدعاء API لتشفير PDF
AsposeResponse response  = pdfApi.postEncryptDocumentInStorage(name, userPasswordBase64encoded, ownerPasswordBase64encoded,
			                CryptoAlgorithm.AESX128.getValue(), null, null, null, null);
// طباعة استجابة API في وحدة التحكم
System.out.println(response);

عند محاولة فتح الملف الناتج، ستظهر مطالبة بتقديم تفاصيل كلمة المرور.

فك تشفير ملف PDF باستخدام الأمر cURL

يمكن أيضًا استخدام أمر cURL لفك تشفير مستند PDF مشفر موجود. في المثال الموضح أدناه، يتم الوصول إلى واجهة برمجة التطبيقات PostDecryptDocumentInStorage والتي تأخذ تفاصيل كلمة المرور كحجة.

curl -X POST "https://api.aspose.cloud/v3.0/pdf/PdfWithTable.pdf/decrypt?password=dXNlciAkXlBhc3N3b3JkISY%3D" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>"

فك تشفير ملف PDF باستخدام Java

لكي تتمكن من فك تشفير ملفات PDF باستخدام Java، يرجى اتباع الخطوات الموضحة أدناه

  • إنشاء مثيل PdfApi أثناء تمرير clientSecret وclientID كوسائط.
  • إنشاء كائن سلسلة يحدد ملف PDF الإدخال.
  • قم بتحميل الملف إلى التخزين السحابي باستخدام طريقة uploadFile(….) من فئة PdfApi.
  • أخيرًا، قم باستدعاء طريقة postDecryptDocumentInStorage(…) مع توفير اسم ملف PDF المدخل وكلمة مرور فك التشفير كحجج.
// احصل على ClientID وClientSecret من https://dashboard.aspose.cloud/
String clientId = "a41d01ef-dfd5-4e02-ad29-bd85fe41e3e4";
String clientSecret = "d87269aade6a46cdc295b711e26809af";
				
// إنشاء مثيل لـPdfApi
PdfApi pdfApi = new PdfApi(clientSecret,clientId);
				
// إدخال مستند PDF
String name = "PdfWithTable.pdf";	        
			   
// تحميل الملف من النظام المحلي
File file = new File("/Users/nayyershahbaz/Downloads/" + name);
// رفع الملف إلى التخزين السحابي
FilesUploadResult uploadResponse = pdfApi.uploadFile(name, file, null);
				
// كلمات مرور المستخدم والمالك المشفرة بتنسيق base64
String userPasswordBase64encoded = "dXNlciAkXlBhc3N3b3JkISY="; //user $^Password!&

// استدعاء API لفك تشفير PDF
AsposeResponse response  = pdfApi.postDecryptDocumentInStorage(name, userPasswordBase64encoded, null,null);
// طباعة استجابة API في وحدة التحكم
System.out.println(response);

يمكن تنزيل الملف الذي تم فك تشفيره والمستخدم في المثال أعلاه من PdfWithTable-Encrypted.pdf.

خاتمة

في هذه المدونة، ناقشنا الخطوات الخاصة بكيفية تشفير وفك تشفير ملفات PDF باستخدام واجهة برمجة تطبيقات Java REST. يمكنك تشفير ملفات المصدر بسهولة ومشاركتها عبر الإنترنت دون أي خوف من سرقة البيانات أو إساءة استخدام المستندات. بخلاف ميزات التشفير، توفر Aspose.PDF Cloud SDK for Java مجموعة كبيرة من الميزات المتعلقة بتنسيق PDF. يمكنك التفكير في زيارة الرابط التالي لمزيد من التفاصيل حول ميزات Aspose.PDF Cloud.

مقالات ذات صلة

ونوصيك أيضًا بقراءة المدونة التالية للحصول على معلومات حول