Я пытаюсь создать частный и открытый ключ RSA, поэтому я могу передать его поставщику и подключиться к их SFTP-серверу. Я использую phpseclib для этого, но независимо от того, какой ключ я создаю, поставщик получает сообщение об ошибке, в котором указано, что введенный ключ SSH недействителен и не поддерживается. Пожалуйста, введите действительный ключ (OpenSSH или PuTTYgen)phpseclib Генерация ключей OpenSSH или PuTTYgen
Я пробовал:
<?php
include('Crypt/RSA.php');
$rsa = new Crypt_RSA();
$rsa->setPrivateKeyFormat(CRYPT_RSA_PRIVATE_FORMAT_PUTTY);
$rsa->setPublicKeyFormat(CRYPT_RSA_PUBLIC_FORMAT_OPENSSH);
//define('CRYPT_RSA_EXPONENT', 65537);
//define('CRYPT_RSA_SMALLEST_PRIME', 982451653); // makes it so multi-prime RSA is used
extract($rsa->createKey()); // == $rsa->createKey(1024) where 1024 is the key size
echo $privatekey;
echo "\n\n\n";
echo $publickey;
?>
Это пример сгенерированный ключ:
PuTTY-User-Key-File-2: ssh-rsa
Encryption: none
Comment: phpseclib-generated-key
Public-Lines: 4
AAAAB3NzaC1yc2EAAAADAQABAAAAgQDFkOp+otBkW4gkiNZ9xbWrWjzAok+iD+gc
GESAyE3FLMFteQtJbpHlsix2eeBTCTjgPXiaRHABtzeqyr6nuO44uXLotJ4WVHOJ
5G75QFWZL0j61LLWZmHB7oxF2Vdt7BFAINu/UbGAhBVRdBaNDRxKSW/10KToOC+b
1yhEAR9MXw==
Private-Lines: 8
AAAAgEZ1qXvieynfjw1glAalFWZ4N0SIXpgwzhn++adoSHwyuwVc7w6QVY4y3jKe
wsc6ecNXiQSTtdKW0k6iIh7VEHggCwMjVIi752jYhiV2wc2gSaP5PnjYyrRpsVb8
JjXZToYeRvWNvNPh4aS4x3CTSpB4BLcZ+7V451bNUy84XIM5AAAAQQDm+1RLu5o3
NmUazpJT3a/KpEtfO5Fg4RuBgFu0dXM6+lfueFUMxpVJ1JY1eWRtCD7gr0EqYC3U
HtNxuOoBk1pdAAAAQQDa9wkbrpQparL9GAoqWU4rP2bjBZ9Nd6fVozswgzGU4cUx
nuxvirPdQfwBAKk8czSH1bY64NVfNF8nhNXCTS3rAAAAQC3Sse80v03IRDg/gT29
VDeCj0P7chs7A0yQ3i4O/jf+s76hBGmpnif1bkkXENfue3Rswxsbq7CVy6Tww7W1
BFk=
Private-MAC: 89412f0a7977af0b8bd29bb67522628b4ab49ca8
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQDFkOp+otBkW4gkiNZ9xbWrWjzAok+iD+gcGESAyE3FLMFteQtJbpHlsix2eeBTCTjgPXiaRHABtzeqyr6nuO44uXLotJ4WVHOJ5G75QFWZL0j61LLWZmHB7oxF2Vdt7BFAINu/UbGAhBVRdBaNDRxKSW/10KToOC+b1yhEAR9MXw== phpseclib-generated-key
Что я делаю неправильно?
Это действительно не вопрос программирования, но какая часть вы отправляете им? – Devon
Открытый ключ, поскольку я буду подключаться к их серверу. Должен ли я отправлять им секретный ключ? – Petrik
Нет, открытый ключ правильный, но он просто не был указан. – Devon