• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP mhash函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了PHP中mhash函数的典型用法代码示例。如果您正苦于以下问题:PHP mhash函数的具体用法?PHP mhash怎么用?PHP mhash使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了mhash函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。

示例1: sha256

/**
 * Create a SHA256 hash of a string
 * 
 * Uses the PHP mhash library to create SHA256 hashes.  It's better than MD5 
 * and SHA1, and for small amounts of data isn't much slower.
 *
 * @param   string  $string     String to hash
 * @return  string  Hexadecimal representation of SHA256 hash
 */
function sha256($string)
{
    if (!function_exists('mhash')) {
        trigger_error('mhash not supported by this PHP installation');
    }
    return bin2hex(mhash(MHASH_SHA256, $string));
}
开发者ID:alanbriolat,项目名称:CSF,代码行数:16,代码来源:csf_misc_functions.php


示例2: payment

 public function payment($data, $order_data, $auto_submit = false)
 {
     $data['order_id'] = $order_data['order_id'];
     if ($order_data['currency_id'] != 'USD') {
         throw new waPaymentException(_w('Order currency is not USD but payment gateway provide only USD transactions'));
     }
     $type_trans = array_flip(self::$type_trans);
     if (!empty($data['type']) && !empty($type_trans[$data['type']])) {
         $type = $type_trans[$data['type']];
     } else {
         $type = self::OPERATION_AUTH_ONLY;
     }
     if (empty($order_data['description_en'])) {
         $order_data['description_en'] = 'Order #' . $order_data['order_id'] . ' (' . gmdate('F, d Y') . ')';
     }
     $c = new waContact($order_data['contact_id']);
     $locale = $c->getLocale();
     $form_fields = array('x_login' => $this->login, 'x_amount' => number_format($order_data['amount'], 2, '.', ''), 'x_description' => $order_data['description_en'], 'x_invoice_num' => $order_data['order_id'], 'x_fp_sequence' => rand(1, 1000), 'x_fp_timestamp' => time(), 'x_test_request' => 'false', 'x_show_form' => 'PAYMENT_FORM', 'x_type' => $type, 'x_version' => '3.1', 'x_method' => 'CC', 'x_cust_id' => $order_data['contact_id'], 'x_customer_ip' => wa()->getRequest()->server('REMOTE_ADDR'), 'x_duplicate_window' => '28800', 'x_first_name' => waLocale::transliterate($c->get('firstname'), $locale), 'x_last_name' => waLocale::transliterate($c->get('lastname'), $locale), 'x_company' => waLocale::transliterate($c->get('company'), $locale), 'x_address' => waLocale::transliterate($c->get('address:street', 'default'), $locale), 'x_city' => waLocale::transliterate($c->get('address:city', 'default'), $locale), 'x_state' => waLocale::transliterate($c->get('address:region', 'default'), $locale), 'x_zip' => waLocale::transliterate($c->get('address:zip', 'default'), $locale), 'x_country' => waLocale::transliterate($c->get('address:country', 'default'), $locale), 'x_phone' => $c->get('phone', 'default'), 'x_email' => $c->get('email', 'default'), 'x_relay_response' => isset($data['x_relay_response']) ? $data['x_relay_response'] : 'true', 'x_relay_url' => $this->getRelayUrl(), 'wa_success_url' => $this->getAdapter()->getBackUrl(waAppPayment::URL_SUCCESS, $data), 'wa_decline_url' => $this->getAdapter()->getBackUrl(waAppPayment::URL_DECLINE, $data), 'wa_cancel_url' => $this->getAdapter()->getBackUrl(waAppPayment::URL_FAIL, $data), 'wa_app_id' => $this->app_id, 'wa_merchant_id' => $this->merchant_id);
     $form_fields['x_fp_hash'] = '';
     // @TODO: get from common 'address' field
     if (phpversion() >= '5.1.2') {
         $form_fields['x_fp_hash'] = hash_hmac('md5', $this->login . "^" . $form_fields['x_fp_sequence'] . "^" . $form_fields['x_fp_timestamp'] . "^" . $form_fields['x_amount'] . "^", $this->trans_key);
     } else {
         $form_fields['x_fp_hash'] = bin2hex(mhash(MHASH_MD5, $this->login . "^" . $form_fields['x_fp_sequence'] . "^" . $form_fields['x_fp_timestamp'] . "^" . $form_fields['x_amount'] . "^", $this->trans_key));
     }
     if ($this->form_header) {
         $form_fields['x_header_html_payment_form'] = $this->form_header;
     }
     $view = wa()->getView();
     $view->assign('url', wa()->getRootUrl());
     $view->assign('form_fields', $form_fields);
     $view->assign('form_url', $this->getEndpointUrl());
     $view->assign('auto_submit', $auto_submit);
     return $view->fetch($this->path . '/templates/payment.html');
 }
开发者ID:cjmaximal,项目名称:webasyst-framework,代码行数:35,代码来源:authorizenetsimPayment.class.php


示例3: encrypt

 public function encrypt($data, $settings)
 {
     $cipher = $settings['cipher'] ?? 'sha256';
     $key = $settings['key'] ?? PROJECT_CONFIG['key'];
     $cipher = Converter::toConstant($cipher, 'MHASH_');
     return base64_encode(trim(mhash($cipher, $data, $key)));
 }
开发者ID:znframework,项目名称:znframework,代码行数:7,代码来源:Mhash.php


示例4: generateRequestSign

 /**
  * Generates the fingerprint for request.
  *
  * @param string $merchantApiLoginId
  * @param string $merchantTransactionKey
  * @param string $amount
  * @param string $fpSequence An invoice number or random number.
  * @param string $fpTimestamp
  * @return string The fingerprint.
  */
 public function generateRequestSign($merchantApiLoginId, $merchantTransactionKey, $amount, $currencyCode, $fpSequence, $fpTimestamp)
 {
     if (phpversion() >= '5.1.2') {
         return hash_hmac("md5", $merchantApiLoginId . "^" . $fpSequence . "^" . $fpTimestamp . "^" . $amount . "^" . $currencyCode, $merchantTransactionKey);
     }
     return bin2hex(mhash(MHASH_MD5, $merchantApiLoginId . "^" . $fpSequence . "^" . $fpTimestamp . "^" . $amount . "^" . $currencyCode, $merchantTransactionKey));
 }
开发者ID:blazeriaz,项目名称:youguess,代码行数:17,代码来源:Request.php


示例5: Cipher

 function Cipher($textkey)
 {
     $this->enc = MCRYPT_RIJNDAEL_128;
     $this->mode = MCRYPT_MODE_ECB;
     $this->securekey = mhash(MHASH_SHA256, $textkey);
     $iv_size = mcrypt_get_iv_size($this->enc, $this->mode);
     $this->iv = mcrypt_create_iv($iv_size, MCRYPT_DEV_RANDOM);
 }
开发者ID:billstclair,项目名称:loomclient,代码行数:8,代码来源:Cipher.php


示例6: ComparePassword

function ComparePassword($password, $hash)
{
    $hash = base64_decode(substr($hash, 6));
    $original_hash = substr($hash, 0, 20);
    $salt = substr($hash, 20);
    $new_hash = mhash(MHASH_SHA1, $password . $salt);
    return strcmp($original_hash, $new_hash);
}
开发者ID:seyyah,项目名称:f3ldap,代码行数:8,代码来源:ldap_fun.php


示例7: generatePrivateKey

 public static function generatePrivateKey($s, $size)
 {
     if (function_exists('mhash') && defined('MHASH_SHA256')) {
         return convertStringToByteArray(substr(mhash(MHASH_SHA256, $s), 0, $size));
     } else {
         throw new Exception('cryptoHelpers::generatePrivateKey currently requires mhash');
     }
 }
开发者ID:riddya85,项目名称:rentail_upwrk,代码行数:8,代码来源:cryptoHelpers.php


示例8: validateHash

 /**
  * Проверка подписи платежа
  */
 public function validateHash($validator, $values)
 {
     $sign = base64_encode(mhash(MHASH_SHA1, sfConfig::get('app_sentry_password') . $values['MerID'] . $values['AcqID'] . $values['OrderID']));
     if ($sign === @$values['Signature']) {
         return $sign;
     }
     throw new sfValidatorError($validator, 'Invalid.');
 }
开发者ID:pycmam,项目名称:myPaymentPlugin,代码行数:11,代码来源:SentryResultForm.class.php


示例9: encrypt

 public function encrypt($data = '', $settings = array())
 {
     $cipher = isset($settings['cipher']) ? $settings['cipher'] : 'sha256';
     $key = isset($settings['key']) ? $settings['key'] : Config::get('Encode', 'projectKey');
     // MHASH_ ön eki ilave ediliyor.
     $cipher = Convert::toConstant($cipher, 'MHASH_');
     return base64_encode(trim(mhash($cipher, $data, $key)));
 }
开发者ID:bytemtek,项目名称:znframework,代码行数:8,代码来源:Mhash.php


示例10: extractTokenFromMetadata

 /**
  * @param Metadata $metadata metadata
  *
  * @return string
  */
 private function extractTokenFromMetadata(Metadata $metadata)
 {
     $phrase = $metadata->key;
     if ($metadata->passphrase) {
         $phrase .= ':' . $metadata->passphrase;
     }
     return mhash(MHASH_SHA256, $phrase);
 }
开发者ID:rezzza,项目名称:vaultage,代码行数:13,代码来源:Cipher.php


示例11: make_md4_password

function make_md4_password($password)
{
    if (function_exists('hash')) {
        $hash = strtoupper(hash("md4", iconv("UTF-8", "UTF-16LE", $password)));
    } else {
        $hash = strtoupper(bin2hex(mhash(MHASH_MD4, iconv("UTF-8", "UTF-16LE", $password))));
    }
    return $hash;
}
开发者ID:acaranta,项目名称:ldap-selfservice,代码行数:9,代码来源:functions.inc.php


示例12: punHash

 /**
  * old punbb hash function
  * @return string
  */
 public static function punHash($str)
 {
     if (function_exists('sha1')) {
         return sha1($str);
     } elseif (function_exists('mhash')) {
         return bin2hex(mhash(MHASH_SHA1, $str));
     }
     return md5($str);
 }
开发者ID:snouhaud,项目名称:camptocamp.org,代码行数:13,代码来源:Punbb.class.php


示例13: createAuthToken

 public function createAuthToken()
 {
     $datePart = gmdate("Ymd");
     $timePart = gmdate("H");
     
     $authString = $this->securityWord . ":" . $datePart . ":" . $timePart;
     $sha256     = bin2hex(mhash(MHASH_SHA256, $authString));
     return strtoupper($sha256);
 }
开发者ID:hungnv0789,项目名称:vhtm,代码行数:9,代码来源:apiagent.php


示例14: _digestMhash

 protected static function _digestMhash($algorithm, $data, $binaryOutput)
 {
     $constant = constant('MHASH_' . strtoupper($algorithm));
     $binary = mhash($constant, $data);
     if ($binaryOutput) {
         return $binary;
     }
     return bin2hex($binary);
 }
开发者ID:kaseya-university,项目名称:efront,代码行数:9,代码来源:Crypt.php


示例15: create_form

 /**
  * 新增
  */
 function create_form($list)
 {
     $pname = get_class($this);
     $this_script = "http://{$_SERVER['HTTP_HOST']}";
     $this->add_field('v_mid', GetValue($pname . "_id"));
     //商户编号
     $this->add_field('v_oid', date('Ymd') . '-' . GetValue($pname . "_id") . '-' . $list['sn']);
     //订单编号
     $this->add_field('v_rcvname', $list['delivery_firstname'] . " " . $list['delivery_lastname']);
     //收货人姓名
     $this->add_field('v_rcvaddr', $list['delivery_address']);
     //收货人地址
     $this->add_field('v_rcvtel', $list['delivery_telephone']);
     //收货人电话
     $this->add_field('v_rcvpost', $list['delivery_zip']);
     //收货人邮编
     $this->add_field('v_amount', $list['orders_total']);
     //订单总金额
     //$this->add_field('v_language','en');//订单语言
     $this->add_field('v_ymd', date('Ymd', $list['dateline']));
     //订单产生日期
     $this->add_field('v_orderstatus', 1);
     //配货状态
     $this->add_field('v_ordername', $list['delivery_firstname'] . " " . $list['delivery_lastname']);
     //订货人姓名
     $this->add_field('v_moneytype', 1);
     //币种,0为人民币,1为美元,2为欧元,3为英镑,4为日元,5为韩元,6为澳大利亚元
     $this->add_field('v_url', $this_script . U('Payment/payeasy_return'));
     //支付动作完成后返回到该url,支付结果以GET方式发送
     $this->add_field('v_md5info', bin2hex(mhash(MHASH_MD5, "1" . date('Ymd', $list['dateline']) . $list['orders_total'] . $list['delivery_firstname'] . " " . $list['delivery_lastname'] . date('Ymd') . '-' . GetValue($pname . "_id") . '-' . $list['sn'] . GetValue($pname . "_id") . $this_script . U('Payment/payeasy_return'), GetValue($pname . "_key"))));
     //订单数字指纹
     $this->add_field('v_shipstreet', $list['delivery_address']);
     //送货街道地址
     $this->add_field('v_shipcity', $list['delivery_city']);
     //送货城市
     //$this->add_field('v_shipstate',$_POST['']);//送货省/州
     $this->add_field('v_shippost', $list['delivery_zip']);
     //送货邮编
     //$this->add_field('v_shipcountry','840');//送货国家
     $this->add_field('v_shipphone', $list['delivery_telephone']);
     //送货电话
     $this->add_field('v_shipemail', $list['delivery_email']);
     //送货Email
     $this->form .= "<form method=\"post\" name=\"pay_form\" ";
     $this->form .= "action=\"" . $this->submit_url . "\">\n";
     foreach ($this->fields as $name => $value) {
         $this->form .= "<input type=\"hidden\" name=\"{$name}\" value=\"{$value}\"/>\n";
     }
     $this->form .= "</form>\n";
     if (GetValue($list['payment_module_code'] . '_autosubmit') == 1) {
         $delay = GetValue($list['payment_module_code'] . '_delay');
         $delay = $delay ? $delay : 5;
         $this->form .= $this->submit($delay);
         //是否自动提交,延迟5秒
     }
     return $this->form;
 }
开发者ID:anshidai,项目名称:bagsloves,代码行数:60,代码来源:payeasy3d.class.php


示例16: mhashhex

 function mhashhex($hash, $data, $key = '')
 {
     static $mhash_loaded = null;
     if ($mhash_loaded === null) {
         $mhash_loaded = extension_loaded('mhash');
     }
     if ($mhash_loaded) {
         if ($key) {
             return bin2hex(mhash($hash, $data, $key));
         } else {
             return bin2hex(mhash($hash, $data));
         }
     }
     switch ($hash) {
         case MHASH_MD5:
             if (strlen($key) == 0) {
                 return md5($data);
             }
             // Source: http://www.php.net/manual/en/function.mhash.php
             // RFC 2104 HMAC implementation for php. Hacked by Lance Rushing
             $b = 64;
             // byte length for md5
             if (strlen($key) > $b) {
                 $key = pack('H*', md5($key));
             }
             $key = str_pad($key, $b, "");
             $ipad = str_pad('', $b, "6");
             $opad = str_pad('', $b, "\\");
             $k_ipad = $key ^ $ipad;
             $k_opad = $key ^ $opad;
             return md5($k_opad . pack('H*', md5($k_ipad . $data)));
         case MHASH_SHA1:
             if (!function_exists('sha1')) {
                 trigger_error(sprintf('Unsupported mhash type: %s', $hash), E_USER_WARNING);
                 return false;
             }
             if (strlen($key) == 0) {
                 return sha1($data);
             }
             $b = 64;
             // byte length for sha1
             // see /usr/src/mhash-0.8.17/lib/mhash.c
             if (strlen($key) > $b) {
                 $key = pack('H*', sha1($key));
             }
             $key = str_pad($key, $b, "");
             $ipad = str_pad('', $b, "6");
             $opad = str_pad('', $b, "\\");
             $k_ipad = $key ^ $ipad;
             $k_opad = $key ^ $opad;
             return sha1($k_opad . pack('H*', sha1($k_ipad . $data)));
         default:
             trigger_error(sprintf('Unsupported mhash type: %s', $hash), E_USER_WARNING);
             return false;
     }
 }
开发者ID:Artea,项目名称:freebeer,代码行数:56,代码来源:Mhash.php


示例17: hash

 function hash($data)
 {
     if ($this->__sha1Exists) {
         return sha1($data);
     }
     if (${$this}->__mhashExists) {
         return bin2hex(mhash(MHASH_SHA1, $data));
     }
     return md5($data);
 }
开发者ID:slab-php,项目名称:slab,代码行数:10,代码来源:security.php


示例18: getFingerprint

 /**
  * Generates a fingerprint needed for a hosted order form or DPM.
  *
  * @param string $api_login_id    Login ID.
  * @param string $transaction_key API key.
  * @param string $amount          Amount of transaction.
  * @param string $fp_sequence     An invoice number or random number.
  * @param string $fp_timestamp    Timestamp.
  * @param string $fp_currency_code    Currency Code.
  *
  * @return string The fingerprint.
  */
 public static function getFingerprint($api_login_id, $transaction_key, $amount, $fp_sequence, $fp_timestamp, $fp_currency_code = null)
 {
     $api_login_id = $api_login_id ? $api_login_id : (defined('AUTHORIZENET_API_LOGIN_ID') ? AUTHORIZENET_API_LOGIN_ID : "");
     $transaction_key = $transaction_key ? $transaction_key : (defined('AUTHORIZENET_TRANSACTION_KEY') ? AUTHORIZENET_TRANSACTION_KEY : "");
     $currency_code = !is_null($fp_currency_code) ? $fp_currency_code : "";
     if (function_exists('hash_hmac')) {
         return hash_hmac("md5", $api_login_id . "^" . $fp_sequence . "^" . $fp_timestamp . "^" . $amount . "^" . $currency_code, $transaction_key);
     }
     return bin2hex(mhash(MHASH_MD5, $api_login_id . "^" . $fp_sequence . "^" . $fp_timestamp . "^" . $amount . "^" . $currency_code, $transaction_key));
 }
开发者ID:ramzyvirani,项目名称:yii2-authorizenet,代码行数:22,代码来源:AuthorizeNetSIM_Form.php


示例19: registerFormSubmitted

function registerFormSubmitted()
{
    require 'include/configGlobals.php';
    connectDatabase();
    slashAllInputs();
    //This makes sure they did not leave any fields blank
    if (!$_POST['username'] | !$_POST['email'] | !$_POST['firstName'] | !$_POST['lastName']) {
        die('You did not complete all of the required fields');
    }
    if (!isUsernameValid($_POST['username'])) {
        die('Sorry, that username is invalid. Please go back and try again.');
    }
    // checks if the username is in use
    $usercheck = $_POST['username'];
    $check = mysql_query("SELECT username FROM users WHERE username = '{$usercheck}'") or die(mysql_error());
    $check2 = mysql_num_rows($check);
    //if the name exists it gives an error
    if ($check2 != 0) {
        die('Sorry, the username ' . $_POST['username'] . ' is already in use. Please go back and try again.');
    }
    $emailcheck = $_POST['email'];
    $check = mysql_query("SELECT email FROM users WHERE email = '{$emailcheck}'") or die(mysql_error());
    $check2 = mysql_num_rows($check);
    //if the email exists it gives an error
    if ($check2 != 0) {
        die('Sorry, the email ' . $_POST['email'] . ' has already been registered. Please go back and try again.');
    }
    $tempPassword = rand_string(16);
    // here we encrypt the password and add slashes if needed
    $hashPassword = md5($tempPassword);
    $hashUsername = md5($_POST['username']);
    $hash256Password = bin2hex(mhash(MHASH_SHA256, $tempPassword));
    $hash256Username = bin2hex(mhash(MHASH_SHA256, $_POST['username']));
    $creationDate = date('Y-m-d');
    // now we insert it into the database
    $insert = "INSERT INTO users (username, pass, sha256_user, sha256_pass, fname, lname, addr1, addr2, city, state, zip, hphone, cphone, email, econtact, econtact_phone, econtact_rel, creation) VALUES (\n           '" . $_POST['username'] . "',\n           '" . $hashPassword . "',\n\t\t   '" . $hash256Username . "',\n\t\t   '" . $hash256Password . "',\n           '" . $_POST['firstName'] . "',\n           '" . $_POST['lastName'] . "',\n           '" . $_POST['address1'] . "',\n           '" . $_POST['address2'] . "',\n           '" . $_POST['city'] . "',\n           '" . $_POST['state'] . "',\n           '" . $_POST['zipCode'] . "',\n           '" . $_POST['homePhone'] . "',\n           '" . $_POST['cellPhone'] . "',\n           '" . $_POST['email'] . "',\n           '" . $_POST['econtact'] . "',\n           '" . $_POST['econtactPhone'] . "',\n           '" . $_POST['econtactRel'] . "',\n           '" . $creationDate . "'\n           )";
    $add_member = mysql_query($insert);
    $to = $_POST['email'];
    $from = $email_Administrator;
    $subject = 'Registered on ' . $club_Abbr . ' Online Registration Site';
    $message = "--{$mime_boundary}\n";
    $message .= "Content-Type: text/plain; charset=UTF-8\r\n";
    $message .= "Content-Transfer-Encoding: 8bit\r\n";
    $message .= 'Thank you for registering on the ' . $club_Abbr . ' Online Registration site.' . "\n" . "\n" . 'Your username is: [ ' . $usercheck . " ]\n" . 'Your temporary password is: [ ' . $tempPassword . " ]\n" . "\n" . 'Login at ' . $http_Logout . ' to change your password and register for events.' . "\n" . "\n" . 'Thank you!' . "\n" . '- ' . $club_Abbr . ' Administration' . "\n";
    $message .= "--{$mime_boundary}--\n\n";
    if (sendEmail($to, $from, $subject, $message) != false) {
        echo "<h1>Registered</h1>\n";
        echo "Thank you, you have registered. An email has been sent to " . $to . " \n";
        echo "with your username and temporary password. Depending on internal server traffic, this may take some time.<br><br>\n";
        echo "When you receive your temporary password you may <a href=\"index.php\">login</a> to continue.\n";
    } else {
        echo "<h1>Internal Email Error. Please contact administrator at " . $email_Administrator . "</h1>\n";
    }
}
开发者ID:sarahbx,项目名称:moers,代码行数:54,代码来源:register.php


示例20: hash_sha256

function hash_sha256($string)
{
    if (function_exists('hash')) {
        return hash('sha256', $string, true);
    }
    if (function_exists('mhash')) {
        return mhash(MHASH_SHA256, $string);
    }
    // insert native php implementation of sha256 here
    throw new Exception('Too lazy to fallback when the guy who configured php was lazy too');
}
开发者ID:kkirsche,项目名称:Etcetera,代码行数:11,代码来源:bitcoin.php



注:本文中的mhash函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP mhash_count函数代码示例发布时间:2022-05-15
下一篇:
PHP mgroup函数代码示例发布时间:2022-05-15
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap