1
0
mirror of https://github.com/danog/tgseclib.git synced 2024-12-12 09:09:50 +01:00
Commit Graph

652 Commits

Author SHA1 Message Date
Andreas Fischer
727dba5905 [remove-svn-version-lines] Remove useless @version: $Id$ lines.
These lines served some purpose on SVN, but are now useless on Git. They
actually do harm as they might make people think their files are older
than they actually are.
2013-06-02 18:50:46 +02:00
Andreas Fischer
aa2e1ff177 [sourceforge-url-typo] {htp:// -> http://}phpseclib.sourceforge.net 2013-06-02 17:56:05 +02:00
Andreas Fischer
1733c3366c [fix-weak-ssh-dh-keys] bitwise_leftShift() expects number of bits, not bytes. 2013-06-02 16:55:19 +02:00
Andreas Fischer
252c6ec68d [fix-weak-ssh-dh-keys] $keyLength is in bytes. Do not compare to 160 bits. 2013-06-02 16:54:02 +02:00
Hans-Jürgen Petrich
fb8d185804 Base/AES/Rijndael: Optimizations
- Base/Rijndael/AES: Comments updated.

- Base: removed __desctructor(). Re:
https://github.com/phpseclib/phpseclib/issues/107

- Base: setPassword() will use >= php-5.5's new (faster) hash_pbkdf2()
function if availalbe/possible. 100% compatible to the internal
implementation. Strong testet with all
hashes/iterations/lengths/ciphers.

- Rijndael: Runtime engine-switch: Will now use mcrypt (in case of
128/192/256-bit block/keys), if possible. Otherwise MODE_INTERNAL.

AES: Soucecode reducing. After all, now, AES.php is virtually nothing
other than a wrapper to Rijndael.php::new
Crypt_Rijndael()->setBlockLength(128). No different in speed or
functionality, but fixed block_size.
2013-06-02 16:21:32 +07:00
Hans-Jürgen Petrich
53276ba4a1 AES: inconsistencey with 160 / 224-bits keys
re: https://github.com/phpseclib/phpseclib/issues/110
2013-06-01 08:00:04 +07:00
terrafrost
dc76cf5b8e SSH2: add $callable parameter to exec() 2013-05-28 17:02:27 -05:00
Hans-Jürgen Petrich
e71ec8f4c8 CS adjustments 2013-05-25 18:10:20 +07:00
Hans-Jürgen Petrich
35f1b8dc2b Method namings 2013-05-25 14:08:17 +07:00
Hans-Jürgen Petrich
5429504aee CS adjustment 2013-05-25 11:22:25 +07:00
Hans-Jürgen Petrich
995c09cb67 CS and method namings 2013-05-25 09:05:24 +07:00
Hans-Jürgen Petrich
72fa880aa2 BL/TF optimizations. 3DES: +20% speed
- Blowfish/Twofish small optimizations

- 3DES +20% speedup from Patrick's commit:
f596c577cf
2013-05-23 01:11:08 +07:00
Patrick Monnerat
f596c577cf DES: move IP/inverse IP transforms out of the round loop in inline_crypt_setup().
This is another 20% runtime gain on triple DES.
2013-05-21 16:01:10 +02:00
Hans-Jürgen Petrich
55ff00cc35 Crypt_Base
Crypt_Base() implementation
2013-05-20 13:19:38 +07:00
Hans-Jürgen Petrich
448be87e83 Twofish: bugfix in setPasswort()
fixed bug in setPasswort()... (occurred only in Twofish.php)
2013-05-19 23:35:06 +07:00
terrafrost
eabd0a8963 SFTP: add the same multi-factor auth support that Net_SSH2 enjoys 2013-05-14 17:32:31 -05:00
terrafrost
6fdac04fd1 SSH2: fix broken grammer from next to last commit
Thanks, bantu!
2013-05-14 17:15:23 -05:00
terrafrost
7fe989a449 Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-05-14 17:13:06 -05:00
terrafrost
cb10016291 SFTP: attempt to utilize SFTP via CLI if subsystem is unavailable 2013-05-14 17:08:54 -05:00
terrafrost
742fbc188f SSH2: return false (without error) on channel failure
Also update error message. SFTP, for example, makes a channel request even though it's not asking to open a pseudo-terminal.
2013-05-14 16:16:06 -05:00
terrafrost
b2262f731d Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-05-14 11:02:45 -05:00
terrafrost
33e415cb4d Merge remote-tracking branch 'vlajos/master' 2013-05-14 11:01:58 -05:00
terrafrost
af3f275f19 SFTP: $content isn't defined when file is being written to 2013-05-14 10:43:17 -05:00
terrafrost
ff88b7e685 ASN1: CS adjustments 2013-05-14 10:38:01 -05:00
terrafrost
40af708254 Merge pull request #106 from petrich/optimizations
Optimizations
2013-05-14 08:35:31 -07:00
terrafrost
2ab6497e41 Merge remote-tracking branch 'origin/largerfiles' 2013-05-13 22:38:11 -05:00
terrafrost
1e2d0ccd9f SSH2: window size is server -> client, not client -> server 2013-05-13 22:37:32 -05:00
Hans-Jürgen Petrich
b242259d17 optimizations 2013-05-13 12:41:52 +07:00
terrafrost
06044e8632 SSH2: 0x7FFFFFFF == 2GB not 4GB 2013-05-10 16:48:10 -05:00
terrafrost
a48871a865 SSH2: realtime_file logging update 2013-05-10 17:45:57 -04:00
Veres Lajos
ddaf520b3b typofixes 2013-05-10 11:51:49 +01:00
terrafrost
8aada4b30d SFTP: looks like some SFTP servers will fail unless write flag is also enabled 2013-05-09 16:35:47 -05:00
terrafrost
b4ebc5b931 SFTP: fix formatting of touch open call 2013-05-09 17:27:56 -04:00
terrafrost
d2d4e89ffc SFTP: typo 2013-05-09 13:23:54 -04:00
terrafrost
2c80ac8aca SFTP: Add support for files larger than 2GB
0x7FFFFFFF is about 2GB. To support larger files floating point is used
2013-05-09 00:02:04 -05:00
terrafrost
aa3e6c1a99 SSH2: rm last commit; _get_channel_packet() takes care of this lol 2013-05-08 15:13:18 -04:00
terrafrost
b440708a7b SSH2: check response in exec() 2013-05-08 11:44:34 -05:00
terrafrost
63ec6e2055 SFTP: remove $start = $offset line
$start isn't used anywhere in the function
2013-05-08 10:20:35 -05:00
terrafrost
0bdf39c83b Merge pull request #101 from johnsterling/rsa-comment
Add support for custom RSA key comments.
2013-05-08 08:11:20 -07:00
Veres Lajos
dd2a4ddff2 typofixes 2013-05-08 15:34:07 +01:00
terrafrost
9ac94a7b74 Merge pull request #103 from rlerdorf/patch-1
Fix a couple of minor logic problems
2013-05-08 05:19:49 -07:00
Hans-Jürgen Petrich
fe0cc95265 SSH2: Blowfish: typo... block_size adjustment
Changed: Blowfish block_size = 8
re: https://github.com/phpseclib/phpseclib/pull/100
2013-05-08 13:52:18 +07:00
Rasmus Lerdorf
b47109cf55 And here too, size-related logic problems 2013-05-07 23:21:53 -07:00
Rasmus Lerdorf
e24d7612a2 I think this is what you meant to do here 2013-05-07 23:19:50 -07:00
terrafrost
c89db52e39 Twofish: make CS more consistent 2013-05-07 23:23:07 -05:00
terrafrost
d396b0c503 Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-05-07 23:18:07 -05:00
terrafrost
e3a2772c30 SSH2: Add Crypt_Blowfish 2013-05-07 23:17:17 -05:00
John Sterling
c1244805cf Add support for custom RSA key comments.
Add ivar and set/getComment() instead of constant. Also parse comment from applicable formats in loadKey().
2013-05-05 19:38:34 -04:00
Hans-Jürgen Petrich
dcac12003a Blowfish
Blowfish implementation
2013-05-05 09:32:00 +07:00
Hans-Jürgen Petrich
a83166fe48 SSH2: Typo (Twofish related..)
Typo...
2013-05-05 08:59:44 +07:00
terrafrost
5dda3a088f SSH2: Twofish typos 2013-05-04 13:55:51 -05:00
terrafrost
2c43e9151c SSH2: add twofish support 2013-05-03 01:45:09 -05:00
terrafrost
3ac29adff1 Merge remote-tracking branch 'petrich/master' into twofish 2013-05-03 01:43:43 -05:00
terrafrost
232d3e2725 Random: remove comment for old code 2013-05-01 08:13:41 -05:00
terrafrost
65a6c85450 Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-05-01 00:33:13 -05:00
terrafrost
cb36b811a0 Random: use constant for windows test
BigInteger: Docblock adjustments
2013-05-01 00:30:01 -05:00
Hans-Jürgen Petrich
be47960908 Twofish
Twofish implementation
2013-04-30 17:26:14 +07:00
Hans-Jürgen Petrich
6b7c1da103 DES: removed debug code
removed debug code
2013-04-30 14:53:27 +07:00
terrafrost
960dbe4f62 Merge pull request #94 from petrich/DES-3DES-Performance-Update
DES/3DES performance update
2013-04-30 00:13:36 -07:00
terrafrost
08e987cede BigInteger: Docblock adjustments 2013-04-27 20:55:25 -05:00
terrafrost
3230a7b1f7 SSH2: Add getBannerMessage() function 2013-04-27 19:58:24 -05:00
terrafrost
83ebb08f0a SCP: Update example 2013-04-27 16:06:05 -05:00
terrafrost
9555ddc212 Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-04-27 16:04:27 -05:00
terrafrost
4c8173dc23 Add an SCP class 2013-04-27 16:03:35 -05:00
terrafrost
8cecaf2d2b SSH2: another CS adjustment 2013-04-27 14:12:59 -05:00
terrafrost
04f5a28bff SSH2: CS adjustments 2013-04-27 14:10:36 -05:00
terrafrost
46f3039217 SFTP: Fix broken mkdir
Thanks Antek88!
2013-04-26 18:36:00 -05:00
Hans-Jürgen Petrich
c4752cbeba DES / 3DES Performance Update
DES / 3DES Performance Update.
Inline en/decrypting gives additional ~25% performance.
100% compatible with the current DES/TribleDES.php
Strong testet on Windows/Linux 32/64bit with php4/5.0/5.1//5.2/5.3/5.4
2013-04-25 14:16:10 +07:00
Patrick Monnerat
a13684584c DES: fix file permissions. 2013-04-24 11:02:01 +02:00
Patrick Monnerat
a8e5ccf895 DES: pre-permuted tables version. 2013-04-24 11:00:11 +02:00
terrafrost
d6ee41d957 SSH2: fix E_NOTICE in keyboard interactive code
Thanks ravage84!
2013-04-24 01:07:32 -05:00
mdesign83
2b4e940885 SFTP: Adding missing status codes 2013-04-23 16:04:50 +02:00
terrafrost
a229b2a32d Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-04-20 20:45:00 -05:00
terrafrost
292340cdd5 SSH2: Improve timeout handling
(thanks, SergeyTsalkov!)
2013-04-20 20:43:05 -05:00
terrafrost
f16d8ba6b2 Hash: docblock updates 2013-04-20 20:09:42 -05:00
terrafrost
e0abab9bb4 SSH2: keyboard-interactive changes
Let's say your SSH server had a two-part keyboard-interactive auth. One prompt is for "Password" and the other is for "Verification code". Previously you'd have to do this:

$ssh->login($username, 'pass1', 'code1');

It'd try password authentication with pass1, fail, then do keyboard-interactive with pass1 and then keyboard-interacitve with code1.

ie. the order in which it tried stuff was dependent on the order it was past to the Net_SSH2 object.  And it'd always try password auth first.

Now you can go straight to keyboard-interactive and mix the order as follows:

$ssh->login($username, array('Password' => 'pass1'), array('Verification code' => 'code1'));
2013-04-20 14:35:08 -05:00
terrafrost
04c24f6bbc SSH2: More multi-factor authentication changes
Previously to do multi-factor authentication you'd have to do this:

$ssh->login($user, 'pass1');
$ssh->login($user, 'pass2');

Now you can do this too:

$ssh->login($user, 'pass1', 'pass2');
2013-04-20 14:33:07 -05:00
terrafrost
ccd4ce1d19 SSH2: add support for multi-factor authentication 2013-04-19 22:23:06 -05:00
terrafrost
7ff96b3946 Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-04-15 23:59:47 -05:00
terrafrost
a47c1c3980 Net_SFTP_Stream: Add limited support for notifications and...
...add NET_SFTP_STREAM_LOGGING
2013-04-15 23:58:13 -05:00
terrafrost
700d28f642 RSA: apply terite's changes to RSA.php too 2013-04-08 01:04:52 -05:00
terrafrost
39e5b1d029 Merge pull request #87 from terite/master
Fix SSH2 when autoloaded from Composer
2013-04-05 12:21:46 -07:00
terrafrost
1c7fb5bd67 Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-04-02 19:37:36 -05:00
terrafrost
fae87be6f5 X509: Revamp base64 handling 2013-04-02 19:36:52 -05:00
David Stensland
28f18f83ec SSH2: Be less overly clever loading Crypt/Random 2013-04-01 12:29:28 -04:00
terrafrost
5cd0191edd SFTP_Stream: update includes 2013-04-01 10:53:55 -05:00
terrafrost
147c3ebea4 ASN1: if an int val would be '' make it be "\0" 2013-03-26 19:50:24 -05:00
terrafrost
725a2e0b39 SFTP: add a few comments 2013-03-24 20:28:55 -05:00
terrafrost
05e832d14f SFTP_Stream: Better EOF detection
$result will be false on error and '' if the EOF is reached.
2013-03-24 20:25:58 -05:00
terrafrost
c5bd12dd14 RSA: Add CRYPT_RSA_PKCS15_COMPAT mode 2013-03-23 14:13:24 -05:00
terrafrost
a3e3682feb ASN.1: Add headerlength and fix start 2013-03-23 12:12:29 -05:00
Brett Thomas
cc8e3cdbc1 added getStdError method to get stdErr, even when quiet mode enabled 2013-03-21 17:18:31 -05:00
terrafrost
11a6b1a1af RSA: only use OpenSSL if openssl.cnf file exists 2013-03-21 10:43:27 -05:00
terrafrost
95f40d9c8f SFTP_Stream: Cache didn't work correctly 2013-03-13 23:30:52 -05:00
terrafrost
3153daf548 Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-03-12 20:58:37 -05:00
terrafrost
5212c78152 SFTP: Add Stream class 2013-03-12 20:57:40 -05:00
terrafrost
35f5c83d36 Random: CS adjustment 2013-03-09 21:15:01 -06:00
terrafrost
89cd8f09e7 SFTP: rename variable to correct case 2013-03-09 11:37:53 -06:00
terrafrost
b9787a81eb SFTP: make mode an alias of permissions for stat 2013-03-08 14:18:32 -06:00
terrafrost
0692d42980 SFTP: Use stat instead of lstat for size() 2013-03-08 11:20:39 -06:00
terrafrost
51d106b6ec SFTP: Revamp file type detection and add truncate method
Also clean up some code
2013-03-08 00:53:34 -06:00
terrafrost
d4f176b434 SFTP: CS adjustment 2013-03-07 22:46:58 -06:00
terrafrost
56f87c8f3a SFTP: Don't do stat if lstat fails 2013-03-07 10:56:24 -06:00
Hans-Jürgen Petrich
ee84c4b41d $plaintext should be $ciphertext 2013-03-06 18:14:27 +07:00
terrafrost
42f22a4e44 BigInteger: fix special case for base-10 / bcmath
echo new Math_BigInteger('-') when in bcmath mode would output '-' - not '0'
2013-03-05 08:37:59 -06:00
terrafrost
4e06ab52dd BigInteger: revamp base-10 regex
new Math_BigInteger('-09') gave 0 back as a number in GMP mode
2013-03-05 08:29:06 -06:00
terrafrost
994c2c6c79 Rijndael, TripleDES: $block not defined in these either 2013-03-05 00:19:11 -06:00
terrafrost
5f64ab67ab DES: $block wasn't defined 2013-03-04 08:25:40 -06:00
terrafrost
c4b3288851 TripleDES, Rijndael: Fix overflow in OFB mode 2013-03-03 17:30:30 -06:00
terrafrost
7ce05ed591 Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-03-03 11:30:54 -06:00
terrafrost
15817a416e DES: Fix memory leak in OFB mode 2013-03-03 11:30:03 -06:00
Hans-Jürgen Petrich
eff0bb21c5 3DES/Rijndael/AES: Fix memory leak with CTR mode
Related to: https://github.com/phpseclib/phpseclib/issues/77
2013-03-03 17:26:41 +07:00
terrafrost
bf3ca6312e DES: Fix memory leak with CTR mode 2013-03-03 00:31:48 -06:00
terrafrost
1d1c2782e9 SFTP: Fix bug whereby sometimes download amount would be ignored 2013-02-27 22:10:33 -06:00
terrafrost
eb860d275e RSA: Add support for AES-256-CBC 2013-02-27 20:00:20 -06:00
terrafrost
44864874e5 SFTP: Redo mkdir() and _realpath()
Also make it so nlist() caches directories as well
2013-02-27 00:47:17 -06:00
Hans-Jürgen Petrich
e90708297a Removed Debug function...
Removed Debug function...
2013-02-25 17:54:06 +07:00
Hans-Jürgen Petrich
afa5465e63 AES/Rijndael Performance Update [3]
Performance Update for AES/Rijndael
2013-02-25 12:19:51 +07:00
terrafrost
d7b348771c ANSI: Use user_error instead of echo 2013-02-22 08:29:17 -06:00
terrafrost
1231f58aa3 ANSI: Add support for more codes
Thanks chubby!
2013-02-22 01:50:46 -06:00
Patrick Monnerat
6b49b7d108 X509: Fix private key identifier computation on a File_ASN1_Element 2013-02-21 15:46:10 +01:00
terrafrost
d7cdea6282 BigInteger: CS adjustment 2013-02-20 15:11:36 -06:00
Patrick Monnerat
90ff746ad1 Make all sources 7-bit ASCII. 2013-02-20 19:25:47 +01:00
Gemorroj
8d5e7a3945 Fixed broken characters. 2013-02-20 18:11:23 +03:00
Gemorroj
1e3e44e3c6 revert == instead === 2013-02-20 17:55:44 +03:00
Gemorroj
cc2c844d0e some minor fixes 2013-02-20 16:46:13 +03:00
terrafrost
4334d381b9 BigInteger: E_NOTICE: bitwise_xor and bitwise_or had parameters of array_pad mixed up 2013-02-17 18:53:36 -06:00
terrafrost
60b66e3726 SFTP: Add chown and chgrp. 2013-02-17 18:23:35 -06:00
terrafrost
4a96cc8024 Use base-2**26 on systems with 32-bit ints and base-2**31 on systems with 64-bit ints 2013-02-17 17:52:59 -06:00
terrafrost
0333805f5c SSH2: Add isConnected() function 2013-02-16 14:58:12 -06:00
terrafrost
25c7e7bd96 SFTP: Add touch function
Also make it so chmod will auto-switch the filename / permissions if they're not in the "right" order (PHP's chmod and ftp_chmod order them differently from each other so this'll make phpseclib consistent with both)
2013-02-14 12:10:36 -06:00
terrafrost
faaa52774f SFTP: Add the ability to write to specific parts of files 2013-02-12 20:45:09 -06:00
Mike Kruk
d7e4678fc4 Use enablePTY() to get a PTY with exec() calls. While exec() is running
you can use read() and write() to interact with the shell.
2013-02-08 17:04:52 -05:00
Hans-Jürgen Petrich
93f9922410 Small CS fix [2] 2013-02-07 00:45:03 +07:00
terrafrost
dba98cd57f Merge branch 'master' of https://github.com/phpseclib/phpseclib 2013-02-05 07:55:06 -06:00
terrafrost
5910f7c14f Update date format in File/X509.php
Update it to be consistent with bdd42c448b

Thanks runaway518!
2013-02-05 07:53:36 -06:00
Hans-Jürgen Petrich
323396df3c Small CS fix 2013-02-03 23:19:09 +07:00
Hans-Jürgen Petrich
b4bbb27ef6 AES: Performance update
Performance update for AES
2013-01-31 00:59:53 +07:00
terrafrost
13eb688c90 AES, RC4: CS adjustments 2013-01-30 08:39:02 -06:00
terrafrost
248e3bb085 Undo last commit 2013-01-30 08:37:50 -06:00
terrafrost
bfb04dcf4d Add __construct() constructor to make namespace'ing easier for those wishing to do it 2013-01-29 22:09:31 -06:00
terrafrost
6765cb3b2b Rijndael, AES: CS adjustments 2013-01-27 01:21:28 -06:00
terrafrost
7894fd98f5 Merge pull request #65 from petrich/patch-3
Rijndael: Performance update
2013-01-26 16:29:26 -08:00
terrafrost
01be859b44 Merge pull request #66 from petrich/patch-5
AES: Performance update
2013-01-26 16:29:10 -08:00
terrafrost
d774476bcf RC4: keys were never being set in continuous mode 2013-01-26 11:16:42 -06:00
Hans-Jürgen Petrich
7dceef6ef4 AES: Performance update
Performance update for AES
Related to: https://github.com/phpseclib/phpseclib/pull/65
2013-01-26 16:58:31 +07:00
Hans-Jürgen Petrich
c95b997fa7 Rijndael: Performance update
Performance update for Rijndael
2013-01-26 16:54:19 +07:00
terrafrost
e7336e6b54 add size checking to binary packets in Net/SSH2.php (thanks ?????? ????????!) 2013-01-26 00:17:23 -06:00
terrafrost
111544428e Merge pull request #63 from petrich/patch-3
Rijndael: little code optimizing
2013-01-25 21:52:40 -08:00
Hans-Jürgen Petrich
376b2759c9 RC4: fixed ContinuousBuffer() using MODE_MCRYPT
Fixed multiple calls to ContinuousBuffer() using MODE_MCRYPT
2013-01-21 21:01:37 +07:00