問題タブ [phpseclib]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1564 参照

php - 結果に基づく phpseclib $ssh->read() ループ

phpseclib (apt-get を使用) を使用してアプリケーションをインストールしようとしていますが、受け取ることができるさまざまな出力結果を処理したいと考えています...しかし、それを機能させる方法がわかりません。私は現在、次のものを持っています:

この if ループは最初の「if」でのみ機能します...つまり、予期しない出力がある場合 (「続行しますか」と尋ねられずにシェルに戻る、つまり、既にインストールされているなど)、このスクリプトはうまく動作します。

ただし、アプリケーションがインストールされていない場合は、elseif ループに移動することはありません。その理由は、最初の ssh->read が php タイムアウトまで継続し、その結果を待っているためだと確信しています...両方のオプションを同時に見て、正しいものを選択するようにするにはどうすればよいですか。

これにCASEを使おうと考えているのですが、書き方がわかりません...

phpseclib を使用してこれを行うより良い方法もあるかもしれませんが、その方法がわかりません。

ありがとう!

0 投票する
1 に答える
3879 参照

php - PHPを使用したSFTPローカルファイルのアップロード

以下のスクリプトを使用して、FTP経由でファイルのアップロードを模倣しようとしましたが、phpseclibを使用してSFTP用に変更しました。

スクリプトは、次の行まで正常にエコーアウトします。

$ upload = $ conn_id-> put($paths。'/'。$name、$ filep、NET_SFTP_LOCAL_FILE); echo "upload=="。$upload。"\n";

何も起こらないか、印刷されます。

完全なスクリプトは次のとおりです。

0 投票する
1 に答える
2526 参照

php - phpseclib / jsbn:PHPでは公開鍵で暗号化し、jsbnでは秘密鍵で復号化します

クライアント側でjsbnを使用して、パブリック/プライベートキーペアを正常に生成できます。これらのキーを使用したクライアント側の暗号化と復号化は問題ありません。その公開鍵をサーバーに送信し、PHP経由でMySQLに保存することもできます。

jsbn公開鍵を使用してPHPで何かを暗号化し、jsbn秘密鍵を使用してクライアント側で復号化することはできません。

そして、これがクライアント側の暗号化です。

JavaScriptで「$ciphertext_web_safe」値を復号化しようとすると、空の文字列が表示されます。コンソールログなどにエラーはありません。

PHPで使用される「bin2hex」に問題はありますか?暗号化されたバイナリデータを16進数に変換する前に、何らかのパディングなどを適用する必要がありますか?

乾杯、デイブ

0 投票する
2 に答える
8330 参照

include-path - phpseclib をインクルードしようとしているときに、ストリーム エラー メッセージを開くことができませんでした

phpseclib をインストールするための指示に従おうとしています。

すべてをアンパッケージし、新しいphpseclibフォルダーを に作成しました/usr/share/pear。だから私は次の構造を持っています:

メソッド/usr/share/pearを確認してパスを決定しました。get_include_path

そして今、phpsec ライブラリを使用するページを作成しようとしています。

これが私が遊んでいるphpページです:

ページは次のようなエラー メッセージで爆発します。

警告: include(Net/SSH2.php): ストリームを開けませんでした: No such file or directory in /var/www/test/sshtest.php on line 4. Warning include(): failed opening 'Net/SSH2.php' 4 行目の /var/www/test/sshtest.php に含める (include_path='.:/usr/share/pear:phpseclib')。

/var/www/test私のページがあるウェブフォルダ。提案や指針をいただければ幸いです。

0 投票する
1 に答える
1596 参照

javascript - RSA in javascript different from PHP

I have a problem with RSA now. I have same modulus and exponent in Javascript and PHP., both use PKCS#1 in javascript, I use http://www-cs-students.stanford.edu/~tjw/jsbn/rsa.js

and in PHP, I use http://phpseclib.sourceforge.net/

But 2 result are different. Can any please tell me the reason. Thank you very much

0 投票する
1 に答える
683 参照

php - phpseclib rsaキー生成 指数は同じ

http://phpseclib.sourceforge.netでは、生成さ れる指数は同じです..キーが生成されるたびに..これはJava(Android)側で復号化できません..

0 投票する
1 に答える
5444 参照

php - codeigniter で phpseclib をロードする方法

タイトル通り、これを達成した人はいますか?このライブラリを codeigniter (v2.1.2) に含める際のベスト プラクティスは何ですか?

他の PHP アプリケーションと同様に include/require ステートメントを使用するだけで実行できることはわかっていますが、このプロジェクトは完了したら複数の開発者に引き渡されるため、CI 開発者が意図した設計パターンを使用して正しくビルドされるようにしたいと考えています。

テストコントローラーで次のことを試しました

ただし、次のように迎えられます。

存在しないクラス: SFTP

ここから取られたphpseclib 。

0 投票する
1 に答える
4005 参照

php - phpseclib - HP procurve スイッチに接続しようとすると、エラーが返されます: SSH コマンドの実行はサポートされていません

phpseclib の NET_SSH2 ライブラリを使用して HP スイッチに接続しようとしています。テスト/開始するために、ログオンしてから、スイッチで「show interfaces brief」コマンドを実行しようとしています。しかし、ログオンした後、エラーメッセージが表示されます:

コードは次のとおりです。

これが返す出力は次のとおりです。

ssh2.php の 1941 行目は、以下に示す「user_error」行です。

私がこれまでに行ったこと:

  1. ssh 経由で手動でログインし、同じコマンドを実行できることを確認しました。
  2. スイッチの Web 構成ページを調べて、ssh で有効にする必要があるものが他にないことを確認しました。
  3. 同様の問題がないか、phpseclib のフォーラムをチェックしています。

phpseclib のバージョン 1.53 2010/10/24 01:24:30 を使用しています。

どんな助けでも大歓迎です。ありがとう。

0 投票する
2 に答える
206 参照

ssh - phpseclib で使用する ssh パスワードを安全に保存して使用する方法

phpseclib を使用して SSH 経由でサーバーに接続する必要がありますが、サーバーのパスワードは私にとって世界で最も機密性が高いことは明らかです。安全であることがわかっている場合、次のコードでどのように使用できますか?

私はハッシュやパスワードなどについて十分に知っていますが、本当に重要なものを保護する必要はありませんでした! 何か案は?

0 投票する
2 に答える
2738 参照

php - 致命的なエラー:194行目の/var/www/phpseclib/Net/SSH2.phpでクラスNet_SSH2を再宣言できません

渡されるパラメーターに応じて特定のクラスを動的にロードするCIモデルを作成しました。これらのクラスは、さまざまなデバイスへのssh接続を行うためのphpseclibのラッパークラスです。私が気付いているのは、特定のメソッドを実行しようとすると、上記のエラーメッセージが表示されることです。

これが私がしていることを理解するのに役立つサンプルコードです。これは私のモデルがどのように見えるかです:

ご覧のとおり、渡されたスイッチ名に応じて、ロードするクラスを動的に決定しています。このコードは、「device123.php」というクラスを正常にロードします。次に、クラスdevice123は、phpseclibに付属するSSH2オブジェクトをインスタンス化し、それを使用してsshコマンドをデバイスに送信します。

これがデバイス123からのコードのクリップです:

SSH2クラスを再宣言する方法がよくわからないと思いますが、自分の後で適切に破棄/クリーンアップしていないかどうかを確認したかったのです。トラブルシューティングに役立てるために、SSH2クラスとdevice123というラッパークラスの両方のコンストラクタとデストラクタにデバッグエコーステートメントを追加してみました。それはすべて適切に見えます...

私は正しい方向に進んでいないと思います...私がどこから探し始めるべきだと思うか教えていただけますか?両方のメソッドが次々に呼び出され、両方が同じクラスをロードできる可能性があるためですか?

ありがとう。