Dokumentasi HotXLS

Properti EncryptionPassword

Mengembalikan atau menetapkan kata sandi yang digunakan untuk mengenkripsi workbook BIFF8 (.xls) saat SaveAs. Menetapkan nilai non-kosong mengaktifkan enkripsi RC4 BIFF8 kompatibel Office 97/2000 untuk panggilan SaveAs berikutnya. Baca/tulis WideString

Sintaks

property EncryptionPassword: WideString;

Keterangan

Jalur tulis memancarkan rekaman BIFF8 FILEPASS ($002F) segera setelah workbook BOF dan mengenkripsi RC4 setiap badan rekaman berikutnya. Format kawat adalah vMajor=1, vMinor=1 (enkripsi "Office 97/2000 Compatible"). Salt 16-byte dan Verifier dihasilkan melalui CryptGenRandom Windows, bukan Random Pascal. Penurunan kunci blok setiap batas 1024-byte dipertahankan sehingga workbook besar, rantai SST CONTINUE, dan stream multi-sheet dienkripsi dengan benar

Enkripsi berlaku untuk BIFF8 (xlExcel97) saja — jalur simpan BIFF5 tetap plaintext. EncryptionPassword kosong mempertahankan output plaintext warisan dan merupakan default, sehingga aplikasi yang ada yang tidak pernah memanggil setter tidak terpengaruh

Catatan keamanan: BIFF8 RC4 dengan vMajor=1/vMinor=1 menggunakan kunci 40-bit, yang dianggap sudah dibobol berdasarkan standar 2025. Gunakan fitur ini untuk kompatibilitas dengan UI perlindungan kata sandi klasik Excel, bukan untuk kerahasiaan data sensitif. Untuk keamanan nyata, lebih baik gunakan output XLSX dengan AES

Contoh

Contoh ini menyimpan file .xls yang dilindungi kata sandi

Workbook.EncryptionPassword := 'secret';
Workbook.SaveAs('Confidential.xls', xlExcel97);