msoffice
1.0.0
sudo apt install libssl-dev
bin/msoffice-crypt.exe
Linux
mkdir work
git clone https://github.com/herumi/cybozulib
git clone https://github.com/herumi/msoffice
cd msoffice
make -j RELEASE=1
如果使用舊的OpenSSL庫,則將make OLD_OPENSSL=1
。
視窗
mkdir work
git clone https://github.com/herumi/cybozulib
git clone https://github.com/herumi/msoffice
git clone https://github.com/herumi/cybozulib_ext # for openssl
cd msoffice
mk.bat ; or open msoffice12.sln and build
test
加密test.xlsx。 bin/msoffice-crypt.exe -e -p test test.xlsx enc.xlsx
test
解密enc.xlsx。 bin/msoffice-crypt.exe -d -p test enc.xlsx dec.xlsx
usage:msoffice-crypt.exe [opt] input output
-h : show this message
-p password in only ascii
-encMode 0:use AES128(default), 1: use AES256 for encoding
-ph8 password in utf8 hex. ex. 68656C6C6F for 'hello'
-ph16 password in utf16 hex. ex. u3042u3044u3046 for 'aiu' in hiragana
-k (experimental) secret key in hex. ex. 0123456789ABCDEF0123456789ABCDEF
-by (experimental) extract secret key from this file
-e encode
-d decode
-c spin count
-psk print secret key
-v print debug info
-vv print debug info and save binary data
Office 2010或更高版本的Office文檔格式,後綴為PPTX,DOCX,XLSX。
msoc.dll(Microsoft Office Crypto)
msoc.dll
MSOC.H
通過pass
inFile
並使其outFile
。
MSOC_encrypt(outFile, inFile, pass, NULL);
pass
inFile
並使其outFile
。 MSOC_decrypt(outFile, inFile, pass, NULL);
inFile
, outFile
和pass
的類型為const wchar_t*
(UTF-16字符串)。請參閱Csample代碼和Python示例代碼。
libmsoc.lib
通過pass
inFile
並使其outFile
。
MSOC_encryptA(outFile, inFile, pass, NULL);
pass
inFile
並使其outFile
。 MSOC_decryptA(outFile, inFile, pass, NULL);
inFile
, outFile
和pass
的類型是const char*
(ASCII字符串)。請參閱迷你C示例代碼。
BSD 3條規定許可證
版權所有(C)2015 Cybozu Labs,Inc。保留所有權利。