From:             
Operating system: Linux
PHP version:      5.3.3
Package:          *General Issues
Bug Type:         Bug
Bug description:ssh2_auth_pubkey_file() requires both public and private keys

Description:
------------
Every other ssh client I've ever dealt with, only requires the private key
to 

authenticate to a remote server with ssh2.



Have a look at the ganymed Java SSH2 library, class name 

ch.ethz.ssh2.Connection, function signature "boolean 

authenticateWithPublicKey(java.lang.String user, java.io.File pemFile, 

java.lang.String password)".  All that is needed is the private-key pem
file in 

order to authenticate.  I've been using this library for years in Java, and
it 

works great.



What is the reason for requiring both the public and private keys for 

authenticating, when in reality only the private key is required?  The
public 

key should be easily extracted from private key, and should be handled
silently 

by PHP.



Also, have a look at function signature "boolean        

authenticateWithPublicKey(java.lang.String user, char[] pemPrivateKey, 

java.lang.String password)".  This provides a way to pass in the private
key as 

an array of char.  In PHP, this would be really useful.  You could store
your 

private keys in a secured database and use it for all kinds of server 

authentication.  The absence of this functionality in PHP actually presents
a 

security risk, because to get it to work, you'd actually have to write your


private key to a temp file, then delete the temp file when done.  Not as
secure 

as reading it from a string which came from a secure database.


-- 
Edit bug report at http://bugs.php.net/bug.php?id=52804&edit=1
-- 
Try a snapshot (PHP 5.2):            
http://bugs.php.net/fix.php?id=52804&r=trysnapshot52
Try a snapshot (PHP 5.3):            
http://bugs.php.net/fix.php?id=52804&r=trysnapshot53
Try a snapshot (trunk):              
http://bugs.php.net/fix.php?id=52804&r=trysnapshottrunk
Fixed in SVN:                        
http://bugs.php.net/fix.php?id=52804&r=fixed
Fixed in SVN and need be documented: 
http://bugs.php.net/fix.php?id=52804&r=needdocs
Fixed in release:                    
http://bugs.php.net/fix.php?id=52804&r=alreadyfixed
Need backtrace:                      
http://bugs.php.net/fix.php?id=52804&r=needtrace
Need Reproduce Script:               
http://bugs.php.net/fix.php?id=52804&r=needscript
Try newer version:                   
http://bugs.php.net/fix.php?id=52804&r=oldversion
Not developer issue:                 
http://bugs.php.net/fix.php?id=52804&r=support
Expected behavior:                   
http://bugs.php.net/fix.php?id=52804&r=notwrong
Not enough info:                     
http://bugs.php.net/fix.php?id=52804&r=notenoughinfo
Submitted twice:                     
http://bugs.php.net/fix.php?id=52804&r=submittedtwice
register_globals:                    
http://bugs.php.net/fix.php?id=52804&r=globals
PHP 4 support discontinued:          http://bugs.php.net/fix.php?id=52804&r=php4
Daylight Savings:                    http://bugs.php.net/fix.php?id=52804&r=dst
IIS Stability:                       
http://bugs.php.net/fix.php?id=52804&r=isapi
Install GNU Sed:                     
http://bugs.php.net/fix.php?id=52804&r=gnused
Floating point limitations:          
http://bugs.php.net/fix.php?id=52804&r=float
No Zend Extensions:                  
http://bugs.php.net/fix.php?id=52804&r=nozend
MySQL Configuration Error:           
http://bugs.php.net/fix.php?id=52804&r=mysqlcfg

Reply via email to