⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 crammd5.php

📁 一、修改产品详细页面的附件块 二、添加上浏览历史模块 三、在后台加入自定义首页、自定义页头、自定义页脚内容功能 四、在后台修改网站全局CSS样式文件功能 五、在后台修改每个模块的模板内容功能
💻 PHP
字号:
<?php/** * Swift Mailer CRAM-MD5 Authenticator Mechanism * Please read the LICENSE file * @author Chris Corbyn <chris@w3style.co.uk> * @package Swift_Authenticator * @license GNU Lesser General Public License */require_once dirname(__FILE__) . "/../ClassLoader.php";Swift_ClassLoader::load("Swift_Authenticator");/** * Swift CRAM-MD5 Authenticator * This form of authentication is a secure challenge-response method * @package Swift_Authenticator * @author Chris Corbyn <chris@w3style.co.uk> */class Swift_Authenticator_CRAMMD5 implements Swift_Authenticator{  /**   * Try to authenticate using the username and password   * Returns false on failure   * @param string The username   * @param string The password   * @param Swift The instance of Swift this authenticator is used in   * @return boolean   */  public function isAuthenticated($user, $pass, Swift $swift)  {    try {      $encoded_challenge = substr($swift->command("AUTH CRAM-MD5", 334)->getString(), 4);      $challenge = base64_decode($encoded_challenge);      $response = base64_encode($user . " " . self::generateCRAMMD5Hash($pass, $challenge));      $swift->command($response, 235);    } catch (Swift_Connection_Exception $e) {      $swift->reset();      return false;    }    return true;  }  /**   * Return the name of the AUTH extension this is for   * @return string   */  public function getAuthExtensionName()  {    return "CRAM-MD5";  }  /**   * Generate a CRAM-MD5 hash from a challenge   * @param string The string to get a hash from   * @param string The challenge to use to make the hash   * @return string   */  public static function generateCRAMMD5Hash($password, $challenge)  {    if (strlen($password) > 64)      $password = pack('H32', md5($password));    if (strlen($password) < 64)      $password = str_pad($password, 64, chr(0));    $k_ipad = substr($password, 0, 64) ^ str_repeat(chr(0x36), 64);    $k_opad = substr($password, 0, 64) ^ str_repeat(chr(0x5C), 64);    $inner  = pack('H32', md5($k_ipad.$challenge));    $digest = md5($k_opad.$inner);    return $digest;  }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -