Subversion Repositories php_clientchallenge

Rev

Rev 4 | Blame | Compare with Previous | Last modification | View Log | RSS feed

  1. <?php
  2.  
  3. /*
  4.  * php_clientchallenge
  5.  * Copyright 2021-2022 Daniel Marschall, ViaThinkSoft
  6.  *
  7.  * Licensed under the Apache License, Version 2.0 (the "License");
  8.  * you may not use this file except in compliance with the License.
  9.  * You may obtain a copy of the License at
  10.  *
  11.  *     http://www.apache.org/licenses/LICENSE-2.0
  12.  *
  13.  * Unless required by applicable law or agreed to in writing, software
  14.  * distributed under the License is distributed on an "AS IS" BASIS,
  15.  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  16.  * See the License for the specific language governing permissions and
  17.  * limitations under the License.
  18.  */
  19.  
  20. if (file_exists(__DIR__ . '/../vendor/autoload.php')) {
  21.         require_once __DIR__ . '/../vendor/autoload.php';
  22. }
  23.  
  24. require_once __DIR__ . '/../ClientChallenge.class.php';
  25.  
  26. require_once __DIR__ . '/config.inc.php';
  27.  
  28. try {
  29.         $res = \ViaThinkSoft\RateLimitingChallenge\ClientChallenge::createChallenge(COMPLEXITY, VTS_CS_SERVER_SECRET);
  30. } catch (\Exception $e) {
  31.         $res = array("error" => $e->getMessage());
  32. }
  33.  
  34. header('Content-Type:application/json');
  35. die(json_encode($res));
  36.