Ответ 1
Из ваших комментариев видно, что то, что вы хотели бы сделать, - это зашифровать файл, который содержит конфиденциальную информацию, используя схему шифрования на основе пароля, с паролем, предоставленным пользователем в режиме дешифрования. В этом случае конфиденциальная информация также является паролем, но это не имеет особого значения. (Вероятно, вы должны обновить вопрос, чтобы сделать это более понятным).
Вы поступаете правильно, ваша проблема в том, что поставщик криптографии Java SunJCE не поддерживает AES для шифрования на основе пароля. Вам нужно использовать альтернативный провайдер, который: например, вы можете использовать Bouncy Castle с алгоритмом "PBEWITHSHA256AND128BITAES-CBC-BC"
. (Несмотря на причудливое имя, замок Bouncy пользуется уважением).
Что касается "DES достаточно безопасен для моих данных", хорошо, если данные, которые вы защищаете, стоили бы менее чем примерно 10 000 долларов для злоумышленника, а затем в 2009 году он был, вероятно, достаточно безопасным. И в 2014 году, если ваши данные вообще будут шифроваться, ответ будет отрицательным.