iOS開発環境でlibssh2 1.4.3 を使うと 公開鍵認証に失敗する件について
去年引き継いだ2012年頃からのiOSのプロジェクトが
GitHub - x2on/libssh2-for-iOS: A script for compiling libssh2 for iOS Devices (iPhone, iPad, iPod Touch). The example app can connect to an server with SSH and execute commands.
これ使ってるんだけど、64bit 非対応なので、最新版に差し替えつつ64bit 対応にしてみた ・ω・
でもね…。
libssh2_userauth_publickey_fromfile
を呼び出すと -18 または -19が返ってくるの
LIBSSH2_ERROR_AUTHENTICATION_FAILED -18 LIBSSH2_ERROR_PUBLICKEY_UNRECOGNIZED -18 LIBSSH2_ERROR_PUBLICKEY_UNVERIFIED -19 |
要するに認証エラー
Issue while SSH with RSA key. ・ Issue #32 ・ x2on/libssh2-for-iOS ・ GitHub
I am using latest version of libssh2 (1.4.3) and I have build it with "libgcrypt" as per script "build-all.sh". Now it's all working fine but I am getting one issue with this is When I try to SSH with my server using RSA key it fails to authenticate and returns -18(LIBSSH2_ERROR_AUTHENTICATION_FAILED) in function "libssh2_userauth_publickey_fromfile(session, username, publickey, privatekey, passphrase)". Not sure What's wrong with new version of library? As Same thing working fine with the older version 1.4.2. But I had to update with latest one to make arm64 compatible. |
これと同じ症状
latest libssh2 library fails to authenticate with public key (RSA) libssh2_userauth_publickey_fromfile ・ Issue #68 ・ libssh2/libssh2 ・ GitHub
こっち見ると、 libssh2_userauth_publickey_fromfile_ex 使ったらエラー出ないって書いてあったけど駄目だわ。
Re: [libssh2] #295: latest libssh2 library with support 64 bit architecture fails to authenticate with public key (RSA) libssh2_userauth_publickey_fromfile
調べたらこんなのあった、
64bit 対応になったこのバージョンから1.4.3 から認証に失敗するとか
仕方ないので、新しい、libssh2 を iOS 開発環境で使える新しいバッチファイル探してみた
Xcode: 7.3.0 iOS SDK: 9.3 MacOS SDK: 10.11 Libssh2: 1.7.0 OpenSSL: 1.0.2g Architectures: armv7, armv7s, arm64, i386, x86_64 |
あら素敵・ω・!
とりあえず、コンパイルして、ライブラリ入れてみたところ、認証エラーから解放されたのでした。
Comments