Linux lionsclub 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64
Apache/2.4.29 (Ubuntu)
: 161.35.52.75 | : 18.189.195.219
Cant Read [ /etc/named.conf ]
7.4.28
www-data
shells.trxsecurity.org
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
Backdoor Scanner
Backdoor Create
Alfa Webshell
CPANEL RESET
CREATE WP USER
README
+ Create Folder
+ Create File
/
var /
www /
lionsclub-dev123 /
core /
vendor /
brick /
math /
[ HOME SHELL ]
Name
Size
Permission
Action
src
[ DIR ]
drwxr-xr-x
CHANGELOG.md
16.07
KB
-rw-r--r--
LICENSE
1.06
KB
-rw-r--r--
SECURITY.md
448
B
-rw-r--r--
composer.json
762
B
-rw-r--r--
random-tests.php
5.35
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : random-tests.php
<?php /** * This script stress tests calculators with random large numbers and ensures that all implementations return the same * results. It is designed to run in an infinite loop unless a bug is found. */ declare(strict_types=1); require __DIR__ . '/vendor/autoload.php'; use Brick\Math\Internal\Calculator; (new class(30) { // max digits private $gmp; private $bcmath; private $native; private $maxDigits; public function __construct(int $maxDigits) { $this->gmp = new Calculator\GmpCalculator(); $this->bcmath = new Calculator\BcMathCalculator(); $this->native = new Calculator\NativeCalculator(); $this->maxDigits = $maxDigits; } public function __invoke() : void { for (;;) { $a = $this->generateRandomNumber(); $b = $this->generateRandomNumber(); $c = $this->generateRandomNumber(); $this->runTests($a, $b); $this->runTests($b, $a); if ($a !== '0') { $this->runTests("-$a", $b); $this->runTests($b, "-$a"); } if ($b !== '0') { $this->runTests($a, "-$b"); $this->runTests("-$b", $a); } if ($a !== '0' && $b !== '0') { $this->runTests("-$a", "-$b"); $this->runTests("-$b", "-$a"); } if ($c !== '0') { $this->test("$a POW $b MOD $c", function(Calculator $calc) use($a, $b, $c) { return $calc->modPow($a, $b, $c); }); } } } /** * @param string $a The left operand. * @param string $b The right operand. */ private function runTests(string $a, string $b) : void { $this->test("$a + $b", function(Calculator $c) use($a, $b) { return $c->add($a, $b); }); $this->test("$a - $b", function(Calculator $c) use($a, $b) { return $c->sub($a, $b); }); $this->test("$a * $b", function(Calculator $c) use($a, $b) { return $c->mul($a, $b); }); if ($b !== '0') { $this->test("$a / $b", function(Calculator $c) use($a, $b) { return $c->divQR($a, $b); }); $this->test("$a MOD $b", function(Calculator $c) use($a, $b) { return $c->mod($a, $b); }); } if ($b !== '0' && $b[0] !== '-') { $this->test("INV $a MOD $b", function(Calculator $c) use($a, $b) { return $c->modInverse($a, $b); }); } $this->test("GCD $a, $b", function(Calculator $c) use($a, $b) { return $c->gcd($a, $b); }); if ($a[0] !== '-') { $this->test("SQRT $a", function(Calculator $c) use($a, $b) { return $c->sqrt($a); }); } $this->test("$a AND $b", function(Calculator $c) use($a, $b) { return $c->and($a, $b); }); $this->test("$a OR $b", function(Calculator $c) use($a, $b) { return $c->or($a, $b); }); $this->test("$a XOR $b", function(Calculator $c) use($a, $b) { return $c->xor($a, $b); }); } /** * @param string $test A string representing the test being executed. * @param Closure $callback A callback function accepting a Calculator instance and returning a calculation result. */ private function test(string $test, Closure $callback) : void { static $testCounter = 0; static $lastOutputTime = 0.0; static $currentSecond = 0; static $currentSecondTestCounter = 0; static $testsPerSecond = 0; $gmpResult = $callback($this->gmp); $bcmathResult = $callback($this->bcmath); $nativeResult = $callback($this->native); if ($gmpResult !== $bcmathResult) { self::failure('GMP', 'BCMath', $test); } if ($gmpResult !== $nativeResult) { self::failure('GMP', 'Native', $test); } $testCounter++; $currentSecondTestCounter++; $time = microtime(true); $second = (int) $time; if ($second !== $currentSecond) { $currentSecond = $second; $testsPerSecond = $currentSecondTestCounter; $currentSecondTestCounter = 0; } if ($time - $lastOutputTime >= 0.1) { echo "\r", number_format($testCounter), ' (', number_format($testsPerSecond) . ' / s)'; $lastOutputTime = $time; } } /** * @param string $c1 The name of the first calculator. * @param string $c2 The name of the second calculator. * @param string $test A string representing the test being executed. */ private static function failure(string $c1, string $c2, string $test) : void { echo PHP_EOL; echo 'FAILURE!', PHP_EOL; echo $c1, ' vs ', $c2, PHP_EOL; echo $test, PHP_EOL; die; } private function generateRandomNumber() : string { $length = random_int(1, $this->maxDigits); $number = ''; for ($i = 0; $i < $length; $i++) { $number .= random_int(0, 9); } $number = ltrim($number, '0'); if ($number === '') { return '0'; } return $number; } })();
Close