Bir belgeyi şifrele

Şifreleme, okunabilir metni anlamsız bayt sıralarına çeviren bir işlemdir ki onu yalnızca şifre çözme anahtarına veya gizli koda sahip olan kişi okuyabilir. Bu süreç içeriği güvence altına almak için önemli bir rol oynar. İçeriği kodlamaya yardım eder, bir belgenin kaynağını doğrular, içeriğin gönderildikten sonra değiştirilmediğini kanıtlar ve belgeden gelen verilerin güvenli olduğundan emin olur.

Bu makale Aspose.Words’in bir belgenin şifrelemenize nasıl izin verdiğini ve bir belgenin şifrelendiğini veya olmadığını nasıl kontrol edebileceğinizi açıklar.

Şifrele Şifresiyle

Bir belgeyi şifrelemek için, Password özelliğini bir şifreleme anahtarını çalıştıran bir şifre sağlamak için kullanın. Bu, belgenizin içeriğini değiştirecek ve onu okunamaz hale getirecektir. Şifreli belgeyi açmak için önce bu parolanın girilmesi gerekecektir.

Aşağıdaki tablo Aspose.Words tarafından desteklenen formatları ve şifreleme algoritmalarını listeler:

Biçim Yüklenirken Desteklenen Şifreleme Kaydetirken Desteklenen Şifreleme
DOC, DOT XOR şifreleme40-bit RC4 ŞifrelemeCrypto API RC4 Şifreleme RC4 Şifreleme (40-bit)
DOCX, DOTX, DOCM, DOTM, FlatOPC, FlatOpcTemplate, FlatOpcMacroEnabled, FlatOpcTemplateMacroEnabled ECMA-376 Standart ŞifrelemeECMA-376 Esnek Şifreleme ECMA-376 Standart Şifreleme (AES128 + SHA1)
ODT, OTT ODF Şifreleme (Blowfish/AES) ODF Şifreleme (AES256 + SHA256)
PDF - RC4 Şifreleme (40/128 Bit)

Aşağıdaki kod örneği bir parolayla bir belgeyi şifrelemeyi nasıl gösterir:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java.git.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.write("Hello world!");
DocSaveOptions saveOptions = new DocSaveOptions();
saveOptions.setPassword("password");
doc.save(getArtifactsDir() + "WorkingWithDocSaveOptions.EncryptDocumentWithPassword.docx", saveOptions);

Bir Dokümanın Şifrelenmiş olup olmadığını Kontrol Et

Bazı durumlarda, okunaksız bir belgeye sahip olabilirsiniz ve belgenin şifrelenmiş ve bozuk veya sıkıştırılmış olmadığından emin olmak isteyebilirsiniz.

Bir belge şifrelendiğinde ve bir parola gerektiğinde tespit etmek için IsEncrypted özelliğini FileFormatInfo sınıfını kullanabilirsiniz. Bu özellik ayrıca bir belge yüklenmeden önce bir eylem gerçekleştirmenize de olanak tanır, örneğin bir kullanıcıya bir parolayı sağlamasını bildirmek.

Aşağıdaki kod örneği, bir belge şifrelemesini nasıl tespit edeceğini göstermektedir:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java.git.
FileFormatInfo info = FileFormatUtil.detectFileFormat(getMyDir() + "Encrypted.docx");
System.out.println(info.isEncrypted());

Şifre Kullanarak veya Kullanmadan Bir Belgeyi Açın

Bir belgenin şifrelendiğini doğruladıktan sonra, bir parola olmadan bu belgeyi açmaya çalışabiliriz ki bu da bir istisna yaratmalıdır.

Aşağıdaki kod örneği, bir parolası olmadan şifreli bir belgeyi nasıl açmaya çalışılacağını göstermektedir:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java.git.
// We will not be able to open this document with Microsoft Word or
// Aspose.Words without providing the correct password.
Document doc = new Document(getMyDir() + "Encrypted.docx");

Şifreli bir belgenin şifresi olmadan açılamayacağını gördükten sonra, şifreyi girmek suretiyle açmayı deneyebiliriz.

Aşağıdaki kod örneğinde bir şifreli belgeyi parolayla açmaya nasıl denemede bulunulur gösterilmektedir:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-Java.git.
Document doc = new Document(getMyDir() + "Encrypted.docx", new LoadOptions("docPassword"));
doc.save(getArtifactsDir() + "WorkingWithLoadOptions.LoadAndSaveEncryptedOdt.odt", new OdtSaveOptions("newPassword"));