当前位置: 首页>>代码示例>>PHP>>正文


PHP _hash_encode64函数代码示例

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


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

示例1: _hash_gensalt_private

function _hash_gensalt_private($input, &$itoa64, $iteration_count_log2 = 6)
{
    if ($iteration_count_log2 < 4 || $iteration_count_log2 > 31) {
        $iteration_count_log2 = 8;
    }
    $output = '$H$';
    $output .= $itoa64[min($iteration_count_log2 + (PHP_VERSION >= 5 ? 5 : 3), 30)];
    $output .= _hash_encode64($input, 6, $itoa64);
    return $output;
}
开发者ID:rmajasol,项目名称:SindicatoClicks,代码行数:10,代码来源:hash_pass.php

示例2: _hash_crypt_private

function _hash_crypt_private($password, $setting, &$itoa64)
{
    $output = '*';
    // Check for correct hash
    if (substr($setting, 0, 3) != '$H$' && substr($setting, 0, 3) != '$P$') {
        return $output;
    }
    $count_log2 = strpos($itoa64, $setting[3]);
    if ($count_log2 < 7 || $count_log2 > 30) {
        return $output;
    }
    $count = 1 << $count_log2;
    $salt = substr($setting, 4, 8);
    if (strlen($salt) != 8) {
        return $output;
    }
    /**
     * We're kind of forced to use MD5 here since it's the only
     * cryptographic primitive available in all versions of PHP
     * currently in use.  To implement our own low-level crypto
     * in PHP would result in much worse performance and
     * consequently in lower iteration counts and hashes that are
     * quicker to crack (by non-PHP code).
     */
    if (PHP_VERSION >= 5) {
        $hash = md5($salt . $password, true);
        do {
            $hash = md5($hash . $password, true);
        } while (--$count);
    } else {
        $hash = pack('H*', md5($salt . $password));
        do {
            $hash = pack('H*', md5($hash . $password));
        } while (--$count);
    }
    $output = substr($setting, 0, 12);
    $output .= _hash_encode64($hash, 16, $itoa64);
    return $output;
}
开发者ID:netsocDIT,项目名称:serversetup,代码行数:39,代码来源:phpbbhash.php

示例3: vanilla_crypt_private

function vanilla_crypt_private($password, $setting)
{
    $itoa64 = './0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
    $output = '*0';
    if (substr($setting, 0, 2) == $output) {
        $output = '*1';
    }
    if (substr($setting, 0, 3) != '$P$') {
        return $output;
    }
    $count_log2 = strpos($itoa64, $setting[3]);
    if ($count_log2 < 7 || $count_log2 > 30) {
        return $output;
    }
    $count = 1 << $count_log2;
    $salt = substr($setting, 4, 8);
    if (strlen($salt) != 8) {
        return $output;
    }
    # We're kind of forced to use MD5 here since it's the only
    # cryptographic primitive available in all versions of PHP
    # currently in use.  To implement our own low-level crypto
    # in PHP would result in much worse performance and
    # consequently in lower iteration counts and hashes that are
    # quicker to crack (by non-PHP code).
    if (PHP_VERSION >= '5') {
        $hash = md5($salt . $password, TRUE);
        do {
            $hash = md5($hash . $password, TRUE);
        } while (--$count);
    } else {
        $hash = pack('H*', md5($salt . $password));
        do {
            $hash = pack('H*', md5($hash . $password));
        } while (--$count);
    }
    $output = substr($setting, 0, 12);
    $output .= _hash_encode64($hash, 16, $itoa64);
    return $output;
}
开发者ID:styv300,项目名称:ToRepublic2.5,代码行数:40,代码来源:loginconvert.php

示例4: _hash_crypt_private

function _hash_crypt_private($password, $setting, &$itoa64)
{
    $output = '*';
    if (substr($setting, 0, 3) != '$H$') {
        return $output;
    }
    $count_log2 = strpos($itoa64, $setting[3]);
    if ($count_log2 < 7 || $count_log2 > 30) {
        return $output;
    }
    $count = 1 << $count_log2;
    $salt = substr($setting, 4, 8);
    if (strlen($salt) != 8) {
        return $output;
    }
    if (PHP_VERSION >= 5) {
        $hash = md5($salt . $password, true);
        do {
            $hash = md5($hash . $password, true);
        } while (--$count);
    } else {
        $hash = pack('H*', md5($salt . $password));
        do {
            $hash = pack('H*', md5($hash . $password));
        } while (--$count);
    }
    $output = substr($setting, 0, 12);
    $output .= _hash_encode64($hash, 16, $itoa64);
    return $output;
}
开发者ID:Amine12boutouil,项目名称:Kleeja-2.0.0-alpha,代码行数:30,代码来源:phpbb.php


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