Overview

Namespaces

  • Chippyash
    • Authentication
      • Manager
        • Digest
        • Encoder
        • Exceptions
        • Traits

Classes

  • BasicEncoder

Interfaces

  • DigestEncoderInterface
  • Overview
  • Namespace
  • Class
  • Tree
  • Todo
 1: <?php
 2: /**
 3:  * Chippyash Digest Authentication Manager
 4:  * 
 5:  * @copyright Ashley Kitson, UK, 2014
 6:  * @license GPL 3.0+
 7:  */
 8: namespace Chippyash\Authentication\Manager\Encoder;
 9: 
10: use Chippyash\Authentication\Manager\Encoder\DigestEncoderInterface;
11: use Chippyash\Authentication\Manager\Traits\RealmHandler;
12: use Chippyash\Type\String\StringType;
13: 
14: /**
15:  * Encoding for Basic Digest
16:  */
17: class BasicEncoder implements DigestEncoderInterface
18: {
19:     use RealmHandler;
20: 
21:     /**
22:      * A digest format string uid:realm:md5(uid:realm:pwd)
23:      * @var string
24:      */
25:     protected $digestTemplate = '%s:%s:%s';
26:     
27:     /**
28:      * Return encoded digest
29:      * 
30:      * @param StringType $uid
31:      * @param StringType $pwd
32:      * 
33:      * @return StringType
34:      */
35:     public function encode(StringType $uid, StringType $pwd)
36:     {
37:         $encoded = md5(sprintf($this->digestTemplate, $uid, $this->realm(), $pwd));
38:         return new StringType(sprintf($this->digestTemplate, $uid, $this->realm(), $encoded));
39:     }
40: }
41: 
Chippyash Authentication Manager Library API API documentation generated by ApiGen 2.8.0