Microsoft Windows 2000 и более поздние версии предоставляют Data Protection 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.
Какие у меня есть альтернативы, если таковой нет?