Microsoft Windows 2000 и более поздние версии предоставляют API защиты данных (DPAPI), который шифрует данные для контекста пользователя или системы. Вызывающая сторона не предоставляет ключ для шифрования данных. Скорее, данные шифруются ключом, полученным из учетных данных пользователя или системы.
Этот API удобно предоставляется в .NET через класс ProtectedData :
// Encrypts the data in a specified byte array and returns a byte array
// that contains the encrypted data.
public static byte[] Protect(
byte[] userData,
byte[] optionalEntropy,
DataProtectionScope scope
)
// Decrypts the data in a specified byte array and returns a byte array
// that contains the decrypted data.
public static byte[] Unprotect(
byte[] encryptedData,
byte[] optionalEntropy,
DataProtectionScope scope
)
Существует ли эквивалентный API в Linux? Преимуществом было бы то, что он удобно интегрируется с Java.
Каковы мои альтернативы, если их нет?