當前位置: 首頁>>代碼示例>>PHP>>正文


PHP Factory::getMediumStrengthGenerator方法代碼示例

本文整理匯總了PHP中RandomLib\Factory::getMediumStrengthGenerator方法的典型用法代碼示例。如果您正苦於以下問題:PHP Factory::getMediumStrengthGenerator方法的具體用法?PHP Factory::getMediumStrengthGenerator怎麽用?PHP Factory::getMediumStrengthGenerator使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在RandomLib\Factory的用法示例。


在下文中一共展示了Factory::getMediumStrengthGenerator方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: generateString

 /**
  * Generate a medium-strength random string of the given length.
  *
  * @param int $length length of the generated string
  * @param string $characters characters to use to generate the string
  * @return string
  */
 public function generateString($length, $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ')
 {
     if (is_null($this->_factory)) {
         $this->_factory = new \RandomLib\Factory();
         $this->_generator = $this->_factory->getMediumStrengthGenerator();
     }
     return $this->_generator->generateString($length, $characters);
 }
開發者ID:josephsnyder,項目名稱:Midas,代碼行數:15,代碼來源:RandomComponent.php

示例2: getGenerator

 public function getGenerator($strength)
 {
     switch ($strength) {
         case 'low':
             return $this->factory->getLowStrengthGenerator();
         case 'medium':
             return $this->factory->getMediumStrengthGenerator();
         case 'high':
             throw new \InvalidArgumentException('"high" strength is currently unavailable');
         default:
             throw new \InvalidArgumentException('Could not find a generator for the specified strength');
     }
 }
開發者ID:zittix,項目名稱:StringGeneratorBundle,代碼行數:13,代碼來源:SecureStringGenerator.php

示例3: generateKey

 /**
  * Create a medium strength key
  *
  * Generates a medium strength random number of size $bytes and hash with the
  * algorithm specified in $hash.
  *
  * @param string  $hash  hash function to use
  * @param integer $bytes the number of random bytes to generate
  *
  * @return string hashed token
  */
 public static function generateKey($hash = 'sha512', $bytes = 128)
 {
     $factory = new Factory();
     $generator = $factory->getMediumStrengthGenerator();
     $token = hash($hash, $generator->generate($bytes));
     return $token;
 }
開發者ID:ming-hai,項目名稱:XoopsCore,代碼行數:18,代碼來源:Random.php

示例4: saveTokenAction

 /**
  * @param Request $request
  *
  * @return \Symfony\Component\HttpFoundation\JsonResponse
  */
 public function saveTokenAction(Request $request)
 {
     $apiToken = new ApiToken();
     $apiToken->setUser($this->getUser());
     $formBuilder = $this->createFormBuilder($apiToken, array('action' => $this->generateUrl('api_key_create'), 'data_class' => 'CSBill\\UserBundle\\Entity\\ApiToken'));
     $formBuilder->add('name');
     $form = $formBuilder->getForm();
     $form->handleRequest($request);
     $response = array();
     if ($form->isValid()) {
         $factory = new Factory();
         $generator = $factory->getMediumStrengthGenerator();
         $token = $generator->generateString(64, Generator::CHAR_ALNUM);
         $apiToken->setToken($token);
         $this->save($apiToken);
         $response['status'] = 0;
         $response['token'] = array('token' => $apiToken->getToken(), 'name' => $apiToken->getName(), 'id' => $apiToken->getId());
         return $this->json($response);
     } else {
         $response['status'] = 1;
     }
     $content = $this->renderView('CSBillUserBundle:Api:create.html.twig', array('form' => $form->createView()));
     $response['content'] = $content;
     return $this->json($response);
 }
開發者ID:Codixis,項目名稱:CSBill,代碼行數:30,代碼來源:ApiController.php

示例5: let

 function let(Factory $factory, Generator $low, Generator $medium)
 {
     $factory->getMediumStrengthGenerator()->willReturn($medium);
     $factory->getLowStrengthGenerator()->willReturn($low);
     $this->beConstructedWith($factory);
     $defaults = ['length' => 32, 'chars' => '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', 'strength' => 'medium'];
     $this->setOptions($defaults);
 }
開發者ID:zittix,項目名稱:StringGeneratorBundle,代碼行數:8,代碼來源:SecureStringGeneratorSpec.php

示例6: testGetSetKeyGenerator

 public function testGetSetKeyGenerator()
 {
     $this->assertInstanceOf('QueryAuth\\KeyGenerator', $this->requestSigner->getKeyGenerator());
     $randomFactory = new RandomFactory();
     $keyGenerator = new KeyGenerator($randomFactory->getMediumStrengthGenerator());
     $this->requestSigner->setKeyGenerator($keyGenerator);
     $this->assertSame($keyGenerator, $this->requestSigner->getKeyGenerator());
 }
開發者ID:jeremykendall,項目名稱:query-auth,代碼行數:8,代碼來源:RequestSignerTest.php

示例7: __construct

 public function __construct(Generator $generator = null)
 {
     $this->generator = $generator;
     if ($this->generator == null) {
         $factory = new Factory();
         $this->generator = $factory->getMediumStrengthGenerator();
     }
 }
開發者ID:00f100,項目名稱:uuid,代碼行數:8,代碼來源:RandomLibAdapter.php

示例8: random

 /**
  * Generates a random number in the provided range, where all possible values are equally likely. (Even distribution.)
  *
  * NOTE: If $max is more than PHP_INT_MAX or $min is less than PHP_INT_MIN, no additional entropy will be gained for
  * the random number, and the distribution will become less evenly distributed across all possible values due to
  * rounding.
  *
  * @param $min
  * @param $max
  * @return NumberInterface
  */
 public function random($min = 0, $max = PHP_INT_MAX)
 {
     $min = Numbers::makeOrDont(Numbers::IMMUTABLE, $min);
     $max = Numbers::makeOrDont(Numbers::IMMUTABLE, $max);
     $difference = new ImmutableNumber(BCProvider::add($max->absValue(), $min->absValue()));
     $randFactory = new Factory();
     if ($max->compare(PHP_INT_MAX) != 1 && $min->compare(PHP_INT_MIN) != -1 && $difference->compare(PHP_INT_MAX) != 1) {
         $x = $randFactory->getMediumStrengthGenerator()->generateInt($min, $max);
         return Numbers::makeFromBase10($this->numberType, $x, null, $this->contextBase);
     } else {
         $x = $randFactory->getMediumStrengthGenerator()->generateInt();
         $fraction = BCProvider::divide($x, PHP_INT_MAX);
         $addedValue = BCProvider::multiply($fraction, $difference->getValue());
         $randVal = Numbers::makeFromBase10($this->numberType, BCProvider::add($min->getValue(), $addedValue), null, $this->contextBase);
         return $randVal->round();
     }
 }
開發者ID:JordanRL,項目名稱:Fermat,代碼行數:28,代碼來源:UniformContext.php

示例9: RandomLib

 function __construct()
 {
     parent::__construct();
     $factory = new RandomLib();
     $this->RandomLib = $factory->getMediumStrengthGenerator();
     $this->load->module('template');
     $this->load->module('categories');
 }
開發者ID:karsanrichard,項目名稱:zerotech,代碼行數:8,代碼來源:MY_Controller.php

示例10: generateLink

 public static function generateLink($event)
 {
     $model = $event->getModel();
     if (!$model->link) {
         $factory = new Factory();
         $generator = $factory->getMediumStrengthGenerator();
         $model->link = $generator->generateString(32, Generator::CHAR_ALNUM);
     }
 }
開發者ID:idealistsoft,項目名稱:framework-auth,代碼行數:9,代碼來源:UserLink.php

示例11: getAlternativeGenerator

 public function getAlternativeGenerator()
 {
     if (isset($this->generator)) {
         return $this->generator;
     }
     $factory = new RandomLib\Factory();
     $this->generator = $factory->getMediumStrengthGenerator();
     return $this->generator;
 }
開發者ID:Aasit,項目名稱:DISCOUNT--SRV-I,代碼行數:9,代碼來源:RandomUtils.php

示例12: getAlternativeGenerator

 public function getAlternativeGenerator()
 {
     if (isset($this->generator)) {
         return $this->generator;
     }
     $factory = new RandomLib\Factory();
     $factory->registerSource('HashTiming', '\\SecurityMultiTool\\Random\\Source\\HashTiming');
     $this->generator = $factory->getMediumStrengthGenerator();
     return $this->generator;
 }
開發者ID:emma5021,項目名稱:toba,代碼行數:10,代碼來源:Generator.php

示例13: testGetMediumStrengthGenerator

 /**
  * @covers RandomLib\Factory::getMediumStrengthGenerator
  * @covers RandomLib\Factory::getGenerator
  * @covers RandomLib\Factory::findMixer
  * @covers RandomLib\Factory::findSources
  */
 public function testGetMediumStrengthGenerator()
 {
     $factory = new Factory();
     $generator = $factory->getMediumStrengthGenerator();
     $this->assertTrue($generator instanceof Generator);
     $mixer = call_user_func(array(get_class($generator->getMixer()), 'getStrength'));
     $this->assertTrue($mixer->compare(new Strength(Strength::MEDIUM)) <= 0);
     foreach ($generator->getSources() as $source) {
         $strength = call_user_func(array(get_class($source), 'getStrength'));
         $this->assertTrue($strength->compare(new Strength(Strength::MEDIUM)) >= 0);
     }
 }
開發者ID:dukt,項目名稱:craft-oauth,代碼行數:18,代碼來源:FactoryTest.php

示例14: getAlternativeGenerator

 /**
  * Retrieve a fallback/alternative RNG generator
  *
  * @return RandomLib\Generator
  */
 public static function getAlternativeGenerator()
 {
     if (null !== static::$generator) {
         return static::$generator;
     }
     if (!class_exists('RandomLib\\Factory')) {
         throw new Exception\RuntimeException('The RandomLib fallback pseudorandom number generator (PRNG) ' . ' must be installed in the absence of the OpenSSL and ' . 'Mcrypt extensions');
     }
     $factory = new RandomLib\Factory();
     $factory->registerSource('HashTiming', 'Zend\\Math\\Source\\HashTiming');
     static::$generator = $factory->getMediumStrengthGenerator();
     return static::$generator;
 }
開發者ID:shabbirvividads,項目名稱:magento2,代碼行數:18,代碼來源:Rand.php

示例15: login

 public function login(Request $request, Response $response, array $arguments)
 {
     $body = $request->getParsedBody();
     $user = User::where('email', $body['email'])->first();
     if (!$user) {
         return $response->withJson(['message' => 'no_such_email'], 400);
     }
     if (!password_verify($body['password'], $user->password)) {
         return $response->withJson(['message' => 'incorrect_password'], 400);
     }
     $factory = new Factory();
     $generator = $factory->getMediumStrengthGenerator();
     $tokenValue = $generator->generateString(128, Generator::CHAR_ALNUM);
     $token = new UserToken();
     $token->value = $tokenValue;
     $user->user_tokens()->save($token);
     $output = ['user' => $user, 'token' => $token->value];
     return $response->withJson($output, 200);
 }
開發者ID:joppuyo,項目名稱:Dullahan,代碼行數:19,代碼來源:UserController.php


注:本文中的RandomLib\Factory::getMediumStrengthGenerator方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。