use iota_stronghold::KeyProvider;
use zeroize::Zeroize;
pub(super) const SECRET_VAULT_PATH: &[u8] = b"iota-wallet-secret";
pub(super) const SEED_RECORD_PATH: &[u8] = b"iota-wallet-seed";
pub(super) const DERIVE_OUTPUT_RECORD_PATH: &[u8] = b"iota-wallet-derived";
pub(super) const PRIVATE_DATA_CLIENT_PATH: &[u8] = b"iota_seed";
const PBKDF_SALT: &[u8] = b"wallet.rs";
const PBKDF_ITER: usize = 100;
pub(super) fn key_provider_from_password(password: &str) -> KeyProvider {
let mut buffer = [0u8; 64];
crypto::keys::pbkdf::PBKDF2_HMAC_SHA512(password.as_bytes(), PBKDF_SALT, PBKDF_ITER, buffer.as_mut()).unwrap();
let key_provider = KeyProvider::with_passphrase_truncated(buffer[..32].to_vec()).unwrap();
buffer.zeroize();
key_provider
}