mirror of
https://github.com/storytold/craft-libs.git
synced 2026-11-12 15:52:12 +00:00
Moved from WordCraft's crates/docx/src/crypt.rs (07f97737): agile and standard decryption, agile encryption, the ISO and legacy protection password hashes. The compound file is read and written with craft-cfb and the descriptor parsed with craft-xml. From GridCraft's crates/xlsx/src/crypto.rs (5cf52c5f): check(), named unsupported schemes, rights-managed files, the password key encryptor chosen by its URI, and independent key vectors.
28 lines
830 B
TOML
28 lines
830 B
TOML
[package]
|
|
name = "craft-offcrypto"
|
|
description = "Clean-room Office document cryptography ([MS-OFFCRYPTO]): password-encrypted OOXML packages (agile and standard encryption) and the password hashes of document and sheet protection."
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
license.workspace = true
|
|
rust-version.workspace = true
|
|
repository.workspace = true
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[dependencies]
|
|
craft-cfb = { workspace = true }
|
|
craft-xml = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
base64 = "0.23"
|
|
aes = "0.9"
|
|
sha1 = "0.11"
|
|
sha2 = "0.11"
|
|
hmac = "0.13"
|
|
getrandom = "0.3"
|
|
zeroize = "1"
|
|
|
|
[target.'cfg(all(target_arch = "wasm32", target_os = "unknown"))'.dependencies]
|
|
# The browser's `crypto.getRandomValues` for the salts and keys of encrypted saves.
|
|
getrandom = { version = "0.3", features = ["wasm_js"] }
|