Как сказал jlliagre, это возможно.
Сгенерируйте пару ключей для вашего приложения, сделайте открытый ключ известным серверу (часто это можно ввести в ~/.ssh/authorized_keys
, и *)1004 * передайте оба ключа клиентскому объекту JSch либо в виде файлов, либо в виде байта [].Возможно, вы также захотите изменить опцию PreferredAuthentications, чтобы разрешить только аутентификацию с открытым ключом, чтобы не запрашивать пароль или пытаться что-то еще.
Примечание: Если вы доставляете свое приложение на хосты, а неКонтролируемый вами, любой, кто может получить доступ к файлам приложения, может использовать закрытый ключ для входа на ваш сервер.
Таким образом, вы должны убедиться, что учетная запись не может сделать ничего вредного, или что клиентский компьютер (ваша учетная записьи любой привилегированный) находится под вашим (или только известным Friendlies ') полным контролем.(Шифрование секретного ключа парольной фразой не помогает, если парольная фраза распространяется вместе с вашей программой. Также ее нельзя поместить в файл jar программы.)