การเข้ารหัสเอกสาร
การเข้ารหัสลับเป็นกระบวนการที่แปลข้อความที่อ่านได้เป็นลำดับความหมายของไบต์ดังนั้ นการรักษาความปลอดภัยเนื้อหาของคุณ. ช่วยในการเข้ารหัสเนื้อหา,ตรวจสอบที่มาของเอกสาร,พิสูจน์ว่าเนื้อหายังไม่ได้รับการแก้ไขหลังจากที่มันถูกส่ง,และให้แน่ใจว่าข้อมูลจากเอกสารมีความปลอดภัย.
บทความนี้อธิบายวิธีที่Aspose.Wordsช่วยให้คุณสามารถเข้ารหัสเอกสารและวิธีการตรวจสอบว่าเอกสารมี.
เข้ารหัสด้วยรหัสผ่าน
เมื่อต้องการเข้ารหัสเอกสารใช้คุณสมบัติPasswordเพื่อระบุรหัสผ่านที่ทำหน้าที่เป็นคีย์การเข้ารหัส นี้จะปรับเปลี่ยนเนื้อหาของเอกสารของคุณและทำให้ไม่สามารถอ่านได้ เอกสารที่เข้ารหัสจะต้องมีการป้อนรหัสผ่านนี้ก่อนที่จะสามารถเปิดได้.
ตารางด้านล่างแสดงรูปแบบและอัลกอริทึมการเข้ารหัสที่สนับสนุนโดยAspose.Words:
รูปแบบ | การเข้ารหัสที่รองรับขณะกำลังโหลด | การเข้ารหัสที่รองรับขณะบันทึก |
---|---|---|
DOC, DOT | XORการเข้ารหัส40 บิตRC4 EncryptionCryptoAPI RC4 การเข้ารหัส | RC4การเข้ารหัส(40 บิต) |
DOCX, DOTX, DOCM, DOTM, แฟลตทอป, FlatOpcTemplate, FlatOpcMacroEnabled, FlatOpcTemplateMacroEnabled | ECMA-376 การเข้ารหัสมาตรฐานECMA-376 การเข้ารหัสแบบคล่องตัว | ECMA-376 การเข้ารหัสมาตรฐาน(AES128+SHA1) |
ODT, OTT | ODFการเข้ารหัส(ปลาปักเป้า/AES) | ODFการเข้ารหัส(AES256+SHA256) |
RC4การเข้ารหัส(40/128 บิต) |
ตัวอย่างรหัสต่อไปนี้แสดงวิธีการเข้ารหัสลับเอกสารด้วยรหัสผ่าน:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C.git. | |
auto doc = MakeObject<Document>(); | |
auto builder = MakeObject<DocumentBuilder>(doc); | |
builder->Write(u"Hello world!"); | |
auto saveOptions = MakeObject<DocSaveOptions>(); | |
saveOptions->set_Password(u"password"); | |
doc->Save(ArtifactsDir + u"WorkingWithDocSaveOptions.EncryptDocumentWithPassword.docx", saveOptions); |
ตรวจสอบว่าเอกสารถูกเข้ารหัสหรือไม่
ในบางกรณีคุณอาจมีเอกสารที่ไม่สามารถอ่านได้และต้องการให้แน่ใจว่าเอกสารถูกเข้ารหั.
หากต้องการตรวจจับว่าเอกสารได้รับการเข้ารหัสหรือไม่และจำเป็นต้องใส่รหัสผ่านหรือไม่ คุณสามารถใช้คุณสมบัติ IsEncrypted ของคลาส FileFormatInfo คุณสมบัตินี้ยังช่วยให้คุณดำเนินการบางอย่างก่อนโหลดเอกสาร เช่น แจ้งผู้ใช้ให้ใส่รหัสผ่าน.
ตัวอย่างรหัสต่อไปนี้แสดงวิธีการตรวจหาการเข้ารหัสเอกสาร:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C.git. | |
SharedPtr<FileFormatInfo> info = FileFormatUtil::DetectFileFormat(MyDir + u"Encrypted.docx"); | |
std::cout << System::Convert::ToString(info->get_IsEncrypted()) << std::endl; |
เปิดเอกสารที่มีหรือไม่มีรหัสผ่าน
เมื่อเราได้ทำให้แน่ใจว่าเอกสารที่มีการเข้ารหัส,เราสามารถพยายามที่จะเปิดเอกสารนี้.
ตัวอย่างรหัสต่อไปนี้แสดงวิธีการลองเปิดเอกสารที่เข้ารหัสโดยไม่มีรหัสผ่าน:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C.git. | |
// We will not be able to open this document with Microsoft Word or | |
// Aspose.Words without providing the correct password. | |
auto doc = MakeObject<Document>(MyDir + u"Encrypted.docx"); |
หลังจากที่เราได้เห็นว่าเอกสารที่เข้ารหัสไม่สามารถเปิดได้โดยไม่ต้องใช้รหัสผ่าน,เราส.
ตัวอย่างรหัสต่อไปนี้แสดงวิธีการลองเปิดเอกสารที่เข้ารหัสด้วยรหัสผ่าน:
// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C.git. | |
auto doc = MakeObject<Document>(MyDir + u"Encrypted.docx", MakeObject<LoadOptions>(u"docPassword")); | |
doc->Save(ArtifactsDir + u"WorkingWithLoadOptions.LoadAndSaveEncryptedOdt.odt", MakeObject<OdtSaveOptions>(u"newPassword")); |