เข้ารหัส ถอดรหัสไฟล์ Excel

MS Excel มีกลไกการเข้ารหัสเพื่อปกป้องข้อมูลในสเปรดชีตจากผู้ใช้ที่ไม่ได้รับอนุญาต นอกจากการใช้การเข้ารหัสแล้ว คุณยังสามารถระบุรหัสผ่านที่จำเป็นในการเปิดไฟล์ Excel ได้ บทความนี้กล่าวถึงวิธีการเข้ารหัสไฟล์ Excel จากภายในแอปพลิเคชัน .NET โดยเฉพาะอย่างยิ่ง คุณจะได้เรียนรู้วิธีเข้ารหัสและถอดรหัสไฟล์ Excel โดยใช้ C#

C# API เพื่อเข้ารหัสหรือถอดรหัสไฟล์ Excel

เพื่อดำเนินการเข้ารหัสและถอดรหัสในไฟล์ Excel บทความนี้ใช้ Aspose.Cells for .NET API API มีวิธีง่ายๆ ในการเข้ารหัสและรหัสผ่านป้องกันไฟล์ Excel ด้วยประเภทการเข้ารหัสที่ต้องการ คุณสามารถ ดาวน์โหลด API หรือติดตั้งภายในแอปพลิเคชัน .NET ของคุณโดยใช้ NuGet

Install-Package Aspose.Cells

เข้ารหัสไฟล์ Excel โดยใช้ C#

Aspose.Cells for .NET รองรับประเภทการเข้ารหัส SHA และ AES เพื่อเข้ารหัสไฟล์ Excel ในลักษณะเดียวกับที่ MS Excel ทำ สำหรับไฟล์ Excel 2003 คุณสามารถเลือกระหว่างประเภทการเข้ารหัสต่อไปนี้:

  • เอ็กซ์ออร์
  • เข้ากันได้ (เข้ากันได้กับ Office 97/2000)
  • ผู้ให้บริการการเข้ารหัสขั้นสูง V1
  • ผู้ให้บริการการเข้ารหัสที่แข็งแกร่ง

ต่อไปนี้เป็นขั้นตอนในการเข้ารหัสไฟล์ Excel โดยใช้ C#

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเข้ารหัสไฟล์ Excel โดยใช้ C#

// เปิดไฟล์ excel
Workbook workbook = new Workbook("Book1.xls");

// ระบุประเภทการเข้ารหัส XOR
workbook.SetEncryptionOptions(EncryptionType.XOR, 40);

// ระบุประเภทการเข้ารหัสที่รัดกุม (RC4, Microsoft Strong Cryptographic Provider)
workbook.SetEncryptionOptions(EncryptionType.StrongCryptographicProvider, 128);

// รหัสผ่านป้องกันไฟล์
workbook.Settings.Password = "1234";

// บันทึกไฟล์ excel
workbook.Save("encryptedBook.xls");

ถอดรหัสไฟล์ Excel โดยใช้ C#

ต่อไปนี้เป็นขั้นตอนในการถอดรหัสไฟล์ Excel โดยใช้ Aspose.Cells for .NET API

  • โหลดไฟล์ Excel โดยระบุเส้นทางและรหัสผ่านให้กับตัวสร้างของคลาส สมุดงาน
  • ตั้งรหัสผ่านเป็น null โดยใช้คุณสมบัติ Workbook.Settings.Password
  • บันทึกสมุดงานโดยใช้วิธี Workbook.Save(string)

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีถอดรหัสไฟล์ Excel โดยใช้ C#

// เปิดไฟล์ excel
Workbook workbook = new Workbook("encryptedBook.xlsx", new LoadOptions { Password="1234" });

// ตั้งรหัสผ่านเป็นโมฆะ
workbook.Settings.Password = null;

// บันทึกไฟล์ excel
workbook.Save("decryptedBook.xlsx");

ตรวจสอบรหัสผ่านของไฟล์ Excel ที่เข้ารหัสโดยใช้ C#

Aspose.Cells for .NET ยังให้คุณตรวจสอบรหัสผ่านของไฟล์ Excel ที่เข้ารหัสได้ สำหรับสิ่งนี้ คุณสามารถทำตามขั้นตอนด้านล่าง

  • โหลดไฟล์ Excel โดยใช้คลาส FileStream
  • ในการตรวจสอบรหัสผ่าน ใช้เมธอด FileFormatUtil.VerifyPassword(FileStream, string) ที่ส่งคืนค่าบูล
  • หากค่าที่ส่งกลับเป็นจริง แสดงว่ารหัสผ่านถูกต้อง มิฉะนั้นถือว่าไม่ถูกต้อง

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการตรวจสอบรหัสผ่านของไฟล์ Excel ที่เข้ารหัสโดยใช้ C#

// สร้างวัตถุสตรีม
FileStream fstream = new FileStream("EncryptedBook1.xlsx", FileMode.Open);

// ยืนยันรหัสผ่าน
bool isPasswordValid = FileFormatUtil.VerifyPassword(fstream, "1234");

// ผลการพิมพ์
Console.WriteLine("Password is Valid: " + isPasswordValid);

รับใบอนุญาตฟรี

คุณสามารถ รับใบอนุญาตชั่วคราวได้ฟรี เพื่อทดลองใช้ API โดยไม่มีข้อจำกัดในการประเมิน

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีเข้ารหัสและถอดรหัสไฟล์ Excel โดยใช้ C# จากภายในแอปพลิเคชัน .NET นอกจากนี้ คุณได้เห็นวิธีการตรวจสอบรหัสผ่านของไฟล์ Excel ที่เข้ารหัสแล้ว คุณสามารถสำรวจเพิ่มเติมเกี่ยวกับ C# Excel automation API ได้โดยใช้ เอกสารประกอบ

ดูสิ่งนี้ด้วย