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


PHP c_ws_plugin__s2member_utils_encryption::xdecrypt方法代碼示例

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


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

示例1: s2member_xdecrypt

 function s2member_xdecrypt($base64 = FALSE, $key = FALSE)
 {
     return c_ws_plugin__s2member_utils_encryption::xdecrypt($base64, $key);
 }
開發者ID:EliasGoldberg,項目名稱:troop-sim,代碼行數:4,代碼來源:api-functions.inc.php

示例2: decrypt

 /**
  * RIJNDAEL 256: two-way encryption/decryption, with a URL-safe base64 wrapper.
  *
  * Falls back on XOR encryption/decryption when mcrypt is not available.
  *
  * @package s2Member\Utilities
  * @since 3.5
  *
  * @param str $base64 A string of data to decrypt. Should still be base64 encoded.
  * @param str $key Optional. Key used originally for encryption. Defaults to the one configured for s2Member. Short of that, defaults to: ``wp_salt()``.
  * @return str Decrypted string.
  */
 public static function decrypt($base64 = FALSE, $key = FALSE)
 {
     $base64 = is_string($base64) ? $base64 : "";
     $e = strlen($base64) ? c_ws_plugin__s2member_utils_strings::base64_url_safe_decode($base64) : "";
     if (function_exists("mcrypt_decrypt") && in_array("rijndael-256", mcrypt_list_algorithms()) && in_array("cbc", mcrypt_list_modes()) && strlen($e) && preg_match("/^~r2\\:([a-zA-Z0-9]+)(?:\\:([a-zA-Z0-9]+))?\\|(.*?)\$/s", $e, $iv_md5_e)) {
         $key = c_ws_plugin__s2member_utils_encryption::key($key);
         $key = substr($key, 0, mcrypt_get_key_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_CBC));
         if (strlen($iv_md5_e[3]) && (!$iv_md5_e[2] || $iv_md5_e[2] === md5($iv_md5_e[3]))) {
             $d = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key, $iv_md5_e[3], MCRYPT_MODE_CBC, $iv_md5_e[1]);
         }
         if (isset($d) && is_string($d) && strlen($d)) {
             if (strlen($d = preg_replace("/^~r2\\|/", "", $d, 1, $r2)) && $r2) {
                 $d = rtrim($d, "");
             } else {
                 // Else we need to empty this out.
                 $d = "";
             }
         }
         return isset($d) && is_string($d) && strlen($d) ? $string = $d : "";
     } else {
         // Fallback on XOR decryption.
         return c_ws_plugin__s2member_utils_encryption::xdecrypt($base64, $key);
     }
 }
開發者ID:donwea,項目名稱:nhap.org,代碼行數:36,代碼來源:utils-encryption.inc.php

示例3: decrypt

 /**
  * RIJNDAEL 256: two-way encryption/decryption, with a URL-safe base64 wrapper.
  *
  * Falls back on XOR encryption/decryption when mcrypt is not available.
  *
  * @package s2Member\Utilities
  * @since 3.5
  *
  * @param string $base64 A string of data to decrypt. Should still be base64 encoded.
  * @param string $key Optional. Key used originally for encryption. Defaults to the one configured for s2Member. Short of that, defaults to: ``wp_salt()``.
  *
  * @return string Decrypted string.
  */
 public static function decrypt($base64 = '', $key = '')
 {
     $base64 = is_string($base64) ? $base64 : '';
     $e = isset($base64[0]) ? c_ws_plugin__s2member_utils_strings::base64_url_safe_decode($base64) : '';
     if (function_exists('mcrypt_decrypt') && in_array('rijndael-256', mcrypt_list_algorithms()) && in_array('cbc', mcrypt_list_modes())) {
         if (isset($e[0]) && preg_match('/^~r2\\:([a-zA-Z0-9]+)(?:\\:([a-zA-Z0-9]+))?\\|(.*)$/s', $e, $iv_md5_e)) {
             $key = c_ws_plugin__s2member_utils_encryption::key($key);
             $key = substr($key, 0, mcrypt_get_key_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_CBC));
             if (isset($iv_md5_e[3][0]) && (empty($iv_md5_e[2]) || $iv_md5_e[2] === md5($iv_md5_e[3]))) {
                 $d = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key, $iv_md5_e[3], MCRYPT_MODE_CBC, $iv_md5_e[1]);
             }
             if (isset($d) && is_string($d) && isset($d[0])) {
                 if (strlen($d = preg_replace('/^~r2\\|/', '', $d, 1, $r2)) && $r2) {
                     $d = rtrim($d, "");
                 } else {
                     $d = '';
                 }
             }
             // Force empty string; bad decryption.
             return isset($d) && is_string($d) && isset($d[0]) ? $string = $d : '';
             // Default to empty string.
         }
     }
     return c_ws_plugin__s2member_utils_encryption::xdecrypt($base64, $key);
 }
開發者ID:adnandot,項目名稱:intenseburn,代碼行數:38,代碼來源:utils-encryption.inc.php


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