nick322/secure-spreadsheet

Encrypt and password protect sensitive XLSX files

1.0.11 2023-11-01 08:15 UTC

README

🔥 Secure your data exports - encrypt and password protect sensitive XLSX files

The Office Open XML format provides a standard for encryption and password protection

Works with Excel, Numbers, and LibreOffice Calc

Build Status

Installation

To install the package:

Run composer require nick322/secure-spreadsheet to add the package to your project.

Or run composer global require nick322/secure-spreadsheet to add the package to your system.

This will automatically install the package to your vendor folder.

Use

In cli

secure-spreadsheet run --password=1 --input=/Users/nick/Encryptor/Book1.xlsx --output=/Users/nick/Encryptor/bb.xlsx

In php

require "vendor/autoload.php";

use Nick\SecureSpreadsheet\Encrypt;

$test = new Encrypt();
$test->input('Book1.xlsx')
    ->password('111')
    ->output('bb.xlsx');

If you want to only use memory/variable output and input, and no file interaction

$test = new Encrypt($nofile = true);
$output = $test->input($binaryData)
    ->password('111')
    ->output();

Credits

Thanks to xlsx-populate for providing the encryption and password protection.

History

View the changelog

Contributing

Everyone is encouraged to help improve this project. Here are a few ways you can help:

To get started with development:

git clone https://github.com/nick322/secure-spreadsheet.git
cd secure-spreadsheet
./secure-spreadsheet