terrafrost
ee619e8f47
Merge branch 'x509-serialnumber-1.0' into x509-serialnumber-2.0
...
Conflicts:
phpseclib/File/X509.php
2015-07-16 11:53:15 -05:00
terrafrost
693804e62a
X509: move where Crypt/Random loading is done
2015-07-16 11:50:22 -05:00
terrafrost
374f8db2e3
X509: use a random serial number
2015-07-16 11:31:20 -05:00
Andreas Fischer
483c253879
Merge branch '1.0' into 2.0
...
* 1.0:
X509: set one more parameter to null
X509: set another parameters field to null
2015-06-30 12:27:06 +02:00
terrafrost
77c757d095
X509: set one more parameter to null
2015-06-29 22:10:18 -05:00
terrafrost
6c2798be90
X509: set another parameters field to null
2015-06-29 21:53:27 -05:00
terrafrost
815f443ed1
Merge branch 'x509-rsa-null-1.0' into x509-rsa-null-2.0-2
...
Conflicts:
tests/Unit/File/X509/X509Test.php
2015-06-28 16:10:40 -05:00
terrafrost
46a3c0fbbb
X509: set parameter field to null for RSA keys
2015-06-28 11:32:42 -05:00
Andreas Fischer
ecdd97f8a8
Merge pull request #702 from terrafrost/asn1-fix-2.0
...
ASN1 parsing fix for issue mainly effecting CSR's for 2.0 branch
* terrafrost/asn1-fix-2.0:
Tests/X509: PHP5 adjustments
ASN1: handle malformed input better
Tests/X509/CSR: add unit test for ASN1 changes
ASN1: constructed context-specific tags can have x sub elements
2015-06-16 16:30:46 +02:00
Andreas Fischer
a79b4ac6ad
Merge pull request #699 from terrafrost/asn1-fix-1.0
...
ASN1 parsing fix for issue mainly effecting CSR's for 1.0 branch
* terrafrost/asn1-fix-1.0:
ASN1: handle malformed input better
Tests/X509/CSR: add unit test for ASN1 changes
ASN1: constructed context-specific tags can have x sub elements
2015-06-16 16:30:35 +02:00
terrafrost
22b10c6a3a
Merge branch 'asn1-fix-1.0' into asn1-fix-2.0
2015-06-07 10:24:11 -05:00
terrafrost
11000a93b9
ASN1: handle malformed input better
2015-06-07 09:59:13 -05:00
terrafrost
d3a5398fe4
ASN1: constructed context-specific tags can have x sub elements
...
previously it only worked for when there was one sub element.
2015-06-03 23:48:43 -05:00
terrafrost
649d469c1c
ANSI: use default namespace for stdClass
2015-05-23 21:01:45 -05:00
terrafrost
6c345acc1d
ANSI: PHP5 updates
2015-05-23 18:23:40 -05:00
terrafrost
e4fee53c93
Merge branch 'ansi-updates-1.0' into ansi-updates-2.0
2015-05-23 18:18:22 -05:00
terrafrost
48191bdeec
ANSI: fix typo
2015-05-23 17:39:17 -05:00
terrafrost
2bb70a1c22
ANSI: rendering improvements
2015-05-23 16:51:57 -05:00
terrafrost
cc0420b36b
ANSI: improve vt100 terminal emulation
...
store each coordinate's attributes independently and add support
for a few more escape codes
2015-05-23 11:55:03 -05:00
Andreas Fischer
661f3ce3b9
Merge branch '1.0' into 2.0
...
* 1.0:
Replace ; with : in case statement.
Conflicts:
phpseclib/Net/SFTP.php
phpseclib/Net/SSH2.php
2015-05-03 14:13:56 +02:00
Andreas Fischer
5d2590feb0
Replace ; with : in case statement.
2015-05-03 13:18:23 +02:00
terrafrost
d75f703c0a
rm PHP v4 compatability claim
2015-04-02 05:57:52 -05:00
Andreas Fischer
f57e01df65
Merge branch '1.0' into 2.0
...
* 1.0:
Tests/X509: add unit test
X509: make it so you can use File_ASN1_Element for custom X.509 extensions
2015-03-10 13:46:15 +01:00
terrafrost
7ac2470c98
Merge branch '1.0' of https://github.com/phpseclib/phpseclib into x509-custom-extensions
2015-03-09 01:38:33 -05:00
Andreas Fischer
63ed03b119
Merge branch '1.0' into 2.0
...
* 1.0:
Tests/X509: swap expected and actual value
Tests/X509: fix unit test
Tests/X509: add unit test for unsupported extension encoding
X509: always base64-encode extensions for which _getMapping returns a bool
2015-03-05 15:37:46 +01:00
terrafrost
e686c095b6
X509: always base64-encode extensions for which _getMapping returns a bool
2015-03-01 12:05:49 -06:00
terrafrost
7e2dd90140
X509: make it so you can use File_ASN1_Element for custom X.509 extensions
2015-03-01 11:57:36 -06:00
Andreas Fischer
38e6196127
Merge branch 'master' into php5
...
* master:
ASN1: empty constructed context-specific tags error'd out
Conflicts:
phpseclib/File/ASN1.php
2015-01-11 16:09:50 +01:00
terrafrost
84325d415e
ASN1: empty constructed context-specific tags error'd out
...
eg. an attributes field in a CSR that's blank
2015-01-10 23:58:50 -06:00
Clint Nelissen
f3565346fa
Replaced get_class() calls with instanceof operators
2014-12-24 13:07:14 -08:00
Clint Nelissen
fe742e18d7
Namespaced Crypt Package
2014-12-16 16:16:54 -08:00
Clint Nelissen
628949fb73
Namespaced classes
2014-12-15 14:29:20 -08:00
Andreas Fischer
3f912eed59
Merge pull request #554 from cnelissen/NamespaceFilePackage
...
Namespace file package
* cnelissen/NamespaceFilePackage:
Namespaced classes
2014-12-12 17:55:44 +01:00
Clint Nelissen
cea5e317b6
Namespaced classes
2014-12-09 16:53:05 -08:00
Andreas Fischer
36999bd25a
Change copyright years from roman numeral to decimal numbers for php5.
2014-12-10 00:07:46 +01:00
Andreas Fischer
c4b103468c
Merge pull request #549 from bantu/fix-547
...
Change copyright years from roman numeral to decimal numbers.
* bantu/fix-547:
Change copyright years from roman numeral to decimal numbers.
Conflicts:
phpseclib/System/SSH_Agent.php
2014-12-10 00:06:08 +01:00
Andreas Fischer
0efae5a91e
Change copyright years from roman numeral to decimal numbers.
2014-12-10 00:04:08 +01:00
Clint Nelissen
0305a4827c
Moved globally defined constants to class constants
2014-12-09 10:46:30 -08:00
Clint Nelissen
e8c93d8cfe
Docblock fix
2014-12-04 08:30:07 -08:00
Clint Nelissen
a9925941b0
Moved global constants into class constants and updated all references
2014-12-03 18:20:10 -08:00
Andreas Fischer
638e62d60a
Remove LICENSE text from source code files.
2014-12-03 18:49:33 +01:00
Andreas Fischer
dbbc21cb64
Merge pull request #510 from cnelissen/FixFileAsn1Classes
...
Split File_ASN1 and File_ASN1_Element into separate files
* cnelissen/FixFileAsn1Classes:
Code sniffer php version fix
Removed duplicated docblock text
Codesniff fix
Split File_ASN1 and File_ASN1_Element into separate files
2014-12-03 18:38:23 +01:00
Clint Nelissen
9bb9f54773
Code sniffer php version fix
2014-12-03 08:57:41 -08:00
Clint Nelissen
f5ed86e385
Renamed Random::crypt_random_string to Random::string
2014-12-02 09:20:40 -08:00
Clint Nelissen
c70702afbb
Namespaced Crypt\Random
2014-12-02 08:41:30 -08:00
Clint Nelissen
7fe4007053
Removed duplicated docblock text
2014-12-02 08:17:53 -08:00
Clint Nelissen
3129faf05d
Codesniff fix
2014-12-01 19:28:02 -08:00
Clint Nelissen
feca21da2b
Split File_ASN1 and File_ASN1_Element into separate files
2014-12-01 19:26:52 -08:00
Clint Nelissen
9c0c3faeb7
Initial commit
2014-12-01 18:54:44 -08:00
Andreas Fischer
eff5f64560
Merge branch 'master' into php5
...
* master:
ASN1: fix unit test
ASN1: add unit test for non-constructed context-specific change
ASN1: fix issue with non-constructed context-specific tags
README: update download link to 0.3.8
2014-09-24 16:50:12 +02:00
terrafrost
a2f4a2cbba
ASN1: add unit test for non-constructed context-specific change
2014-09-22 23:03:06 -05:00
terrafrost
c6ad2b69ba
ASN1: fix issue with non-constructed context-specific tags
2014-09-22 01:01:34 -05:00
Andreas Fischer
6cb0528d6e
Merge branch 'master' into php5
...
* master:
ASN1: one more unit test change
ASN1: another unit test update
ASN1: unit test adjustments
ASN1: cs adjustments to unit test
ASN1: add unit tests for indefinite length decoding
ASN1: CS adjustment (rm whitespace at eol)
ASN1: rewrite _decode_der
Conflicts:
phpseclib/File/ASN1.php
2014-09-04 22:22:16 +02:00
terrafrost
3bb123c3d5
ASN1: CS adjustment (rm whitespace at eol)
2014-08-30 19:44:12 -05:00
terrafrost
e258e001fa
ASN1: rewrite _decode_der
...
this rewrite makes phpseclib better able to handle indef lengths,
which had previously been untested.
2014-08-25 10:12:56 -05:00
Andreas Fischer
8ba3dd0846
Merge branch 'master' into php5
...
* 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)
2014-06-17 00:36:54 +02:00
Andreas Fischer
67aedc240b
Change constructors from class name to __construct().
...
This has been produced as follows:
<?php
$replace = $files = [];
$it = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($argv[1]));
foreach ($it as $fileinfo) {
if ($fileinfo->getExtension() === 'php') {
$file = $fileinfo->getPathname();
$content = file_get_contents($file);
$files[$file] = $content;
$tokens = token_get_all($content);
foreach ($tokens as $key => $value) {
if ($value[0] === T_CLASS) {
$class = $tokens[$key + 2][1];
$replace += array(
"$class::$class(" => "$class::__construct(",
"parent::$class(" => "parent::__construct(",
"function $class(" => "function __construct(",
);
}
}
}
}
foreach ($files as $file => $content) {
file_put_contents(
$file,
str_replace(
array_keys($replace),
array_values($replace),
$content
)
);
}
2014-06-16 17:06:34 +02:00
terrafrost
83301097ea
RSA: rename PUBLIC_FORMAT_PKCS1_RAW -> PUBLIC_FORMAT_PKCS8
...
also make CRYPT_RSA_PUBLIC_FORMAT_PKCS8 the default format
2014-06-13 13:11:59 -05:00
Andreas Fischer
76ac2a863d
Merge branch 'master' into php5
...
* master:
RSA: slight adjustment to CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW format
2014-06-11 08:05:49 +02:00
terrafrost
72a0913d39
RSA: slight adjustment to CRYPT_RSA_PUBLIC_FORMAT_PKCS1_RAW format
...
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.
2014-06-10 22:16:59 -05:00
Andreas Fischer
b217994534
Add missing use BigInteger statement to X509.
2014-06-05 17:08:36 +02:00
Andreas Fischer
2a9d7e5e03
Merge branch 'master' into php5
...
* 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
2014-06-05 16:56:36 +02:00
terrafrost
b1ad911d20
X509: CS adjustments
2014-06-05 08:33:27 -05:00
terrafrost
aabc5cf822
X509: PHP4 compat changes
2014-06-05 08:10:52 -05:00
terrafrost
dce03bb003
X509: add signSPKAC() and saveSPKAC() methods
2014-06-03 23:44:09 -05:00
Andreas Fischer
a643e5bfb5
Correct the remaining case by using instanceof.
2014-06-02 20:24:25 +02:00
Andreas Fischer
f2f5fcd70a
Update users of Math_BigInteger.
2014-06-02 20:19:00 +02:00
terrafrost
1b9c599476
ASN1: let strings in as well
2014-05-05 17:38:33 -05:00
terrafrost
7a9ea673ca
ASN1: make File_ASN1 accept int primitives and not just Math_BigInteger objects when an integer is expected
...
The code to convert the regular integer type into the appropriate format could all just be in-line'd when an integer primitive is used but this approach is easier to read.
2014-05-05 16:39:35 -05:00
terrafrost
10be403aff
ASN1: CS update
2014-04-12 12:01:04 -05:00
terrafrost
61cd5e4f5a
ASN1: make developing new ASN.1 scripts a little easier
2014-04-10 13:49:28 -05:00
terrafrost
c8bf68ac02
ASN1: make it so bit string's can have an optional minimum size
2014-04-05 18:07:35 -05:00
terrafrost
a478b74860
ASN1: explicit application tags didn't work (although implicit ones did)
2014-03-30 01:11:47 -05:00
terrafrost
dfa583b9ea
X509: Array -> array (CS consistency)
2014-03-29 15:26:50 -05:00
Michael Braun
457f8fbb99
fix certificate date encoding
...
RFC 3280 requires in section
- 4.1.2.5 Validity
- 5.1.2.4 This Update
- 5.1.2.5 Next Update
- 5.1.2.6 Revoked Certificates
that dates are to be encoded as utcTime iff they are before 2050 and
as generalTime otherwise.
Currently, phpseclib does not respect this by always choosing generalTime.
Further, the format used interally to represent dates only keeps two digits,
so dates in 2050 and later cannot be represented in this format.
This patch fixes this by
1. changing the interal format to be capable of unambiguously representing
dates in 2050 or later (i.e. use four digits to represent the year),
2. choosing between utcTime and generalTime accordingly.
Without this patch, openssl_x509_parse complains:
Warning: openssl_x509_parse(): illegal ASN1 data type for timestamp
2014-03-28 15:02:50 +01:00
Andreas Fischer
fb1296bbec
Drop meaningless, outdated, inconsistent version tags in doc blocks.
...
find phpseclib -type f -name "*.php" -exec sed -i '/@version/d' {} \;
2014-03-11 15:58:33 +01:00
Veres Lajos
930a3fb4d2
typofixes - https://github.com/vlajos/misspell_fixer
2014-03-05 23:41:20 +00:00
Graham Campbell
1c2796e3eb
Cleaned up whitespace
2014-01-18 17:29:25 +00:00
terrafrost
d2c4ccfc28
Merge branch 'master' of https://github.com/phpseclib/phpseclib
2013-12-27 10:24:47 -06:00
terrafrost
b23a693ae5
RSA: update comments for _extractBER
2013-12-26 01:46:58 -06:00
Andreas Fischer
8bb80b3df0
CS: Add useful whitespace CodeSniffer rules.
2013-12-26 00:33:08 +01:00
Andreas Fischer
f0f029b2c1
CS: Fix "PEAR.Commenting.ClassComment.WrongTagOrder" sniff.
2013-12-11 18:33:18 +01:00
Andreas Fischer
3db1fbb072
CS: Fix "PEAR.Commenting.FileComment.TagIndent" sniff.
2013-12-10 20:10:37 +01:00
Andreas Fischer
cee0f3343b
CS: Fix "PEAR.Formatting.MultiLineAssignment.EqualSignLine" sniff.
2013-12-07 20:47:30 +01:00
Andreas Fischer
6d1fb9f7db
CS: Fix "PEAR.Files.IncludingFile.UseIncludeOnce" sniff.
2013-12-06 01:03:34 +01:00
Andreas Fischer
bc6ff96292
Fix "PEAR.Files.IncludingFile.BracketsNotRequired" sniff.
2013-12-05 23:17:40 +01:00
Andreas Fischer
161bb7d362
CS: Fix PEAR.ControlStructures.ControlSignature sniff.
2013-12-03 21:04:13 +01:00
Andreas Fischer
9ca5f83dec
CS: Fix Generic.Functions.FunctionCallArgumentSpacing.NoSpaceAfterComma sniff.
2013-12-03 20:52:08 +01:00
Andreas Fischer
e09f1b730e
CodeSniffer: Fix PEAR.Classes.ClassDeclaration.OpenBraceNewLine sniff.
2013-12-03 19:34:41 +01:00
Andreas Fischer
ca9c8b107b
CodeSniffer: Fix Generic.PHP.LowerCaseConstant.Found sniff.
2013-12-03 18:54:43 +01:00
Marc Philip Scholten
3bfd884813
Removed vim comments
...
Reformated files
2013-11-23 19:42:26 +01:00
terrafrost
22502c24cd
ASN1: variable functions had to be strings before PHP 5.4
2013-10-12 12:19:54 -05:00
terrafrost
a577a09a4f
X509: make it so ip addresses and domain names can be used together
2013-10-09 14:51:34 -05:00
terrafrost
9b53c45f04
ASN1,X509: add support for ip addresses in subjaltname
...
(among other places)
2013-10-09 14:25:52 -05:00
terrafrost
d2f6362878
X509: assume anything being passed into setPublicKey() is a public key
2013-10-05 21:28:33 -05:00
terrafrost
55d43a9972
ANSI: </underline> -> </u>
2013-08-11 09:07:22 -05:00
terrafrost
7b5542cc8a
X509: re-use existing BER extraction code
2013-08-02 10:52:58 -05:00
terrafrost
73f167e99e
X509: load Math/BigInteger for ASN1 description
2013-07-30 16:07:40 -05:00
terrafrost
d714dd35f0
X509: $csr -> $spkac in loadSPKAC() function
2013-07-26 16:10:34 -05:00
terrafrost
d52f217512
X509: change return value for validateSignature when cert isn't loaded
2013-07-26 15:40:16 -05:00