* master:
Crypt/Base: readability improvement
RSA: CS adjustments
RSA: rename PUBLIC_FORMAT_PKCS1_RAW -> PUBLIC_FORMAT_PKCS8
RSA: add PKCS8 unit tests
RSA: add support for saving encrypted PKCS8 keys
Crypt/Base: adjust default key size for pbkdf1
RSA: add support for loading PKCS8 encrypted private keys
Crypt/Base: add support for pbkdf1
RSA: add support for saving to PKCS8 (unencrypted)
RSA: add support for PKCS8 encoded private keys
* terrafrost/pkcs8:
Crypt/Base: readability improvement
RSA: CS adjustments
RSA: rename PUBLIC_FORMAT_PKCS1_RAW -> PUBLIC_FORMAT_PKCS8
RSA: add PKCS8 unit tests
RSA: add support for saving encrypted PKCS8 keys
Crypt/Base: adjust default key size for pbkdf1
RSA: add support for loading PKCS8 encrypted private keys
Crypt/Base: add support for pbkdf1
RSA: add support for saving to PKCS8 (unencrypted)
CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW and CRYPT_RSA_PUBLIC_FORMAT_PKCS1
produce two very similar looking keys but they are not the same.
As dissection OpenSSL's asn1parse would reveal CRYPT_RSA_PUBLIC_FORMAT_PKCS1
has the fact that it is an RSA key embedded within it whereas
CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW does not. phpseclib now resolves
this ambiguity in the same way that OpenSSH's ssh-keygen does.
Despite this change CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW is still incompatible
with OpenSSL's rsautl (CRYPT_RSA_PUBLIC_FORMAT_PKCS1 is compatible). I guess
this incompatibility isn't just due to the headers but is also due to the
overall structure of the format.
* master:
X509: Unit test CS changes
X509: move location of SPKAC unit test
X509: CS adjustments
X509: PHP4 compat changes
RSA: PHP4 compat changes
X509: rm trailing white space from unit test
X509: add SPKAC unit test
X509: add signSPKAC() and saveSPKAC() methods
bad timezone settings can make phpinfo() throw errors so we'll just
suppress them. if there are legit non-timezone errors with php install
those will probably be hit in other parts of the code
- PHP4 doesn't allow method chaining
- $_SESSION isn't always defined
- on PHP5.1 and earlier using 0x100000000 instead of 4294967296 gives E_NOTICE
- array('Net_SSH2', 'func_name') doesn't work so we fix this by passing $this to it.
to make that work on PHP4 pass by call-time reference. normally this would result
in a fatal error on PHP5.4+ but doesn't seem to in this case. the following URL
elaborates:
http://stackoverflow.com/q/20732563/569976