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


PHP Crypt::mkHashPassword方法代码示例

本文整理汇总了PHP中Crypt::mkHashPassword方法的典型用法代码示例。如果您正苦于以下问题:PHP Crypt::mkHashPassword方法的具体用法?PHP Crypt::mkHashPassword怎么用?PHP Crypt::mkHashPassword使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Crypt的用法示例。


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

示例1: setTempMasterPass

 /**
  * Crea una clave temporal para encriptar la clave maestra y guardarla.
  *
  * @param int $maxTime El tiempo máximo de validez de la clave
  * @return bool|string
  */
 public static function setTempMasterPass($maxTime = 14400)
 {
     // Encriptar la clave maestra con hash aleatorio generado
     $randomKey = Crypt::generateAesKey(Util::generate_random_bytes());
     $pass = Crypt::mkCustomMPassEncrypt($randomKey, SessionUtil::getSessionMPass());
     if (!is_array($pass)) {
         return false;
     }
     ConfigDB::setCacheConfigValue('tempmaster_pass', bin2hex($pass[0]));
     ConfigDB::setCacheConfigValue('tempmaster_passiv', bin2hex($pass[1]));
     ConfigDB::setCacheConfigValue('tempmaster_passhash', Crypt::mkHashPassword($randomKey));
     ConfigDB::setCacheConfigValue('tempmaster_passtime', time());
     ConfigDB::setCacheConfigValue('tempmaster_maxtime', time() + $maxTime);
     ConfigDB::setCacheConfigValue('tempmaster_attempts', 0);
     if (!ConfigDB::writeConfig(true)) {
         return false;
     }
     // Guardar la clave temporal hasta que finalice la sesión
     Session::setTemporaryMasterPass($randomKey);
     return $randomKey;
 }
开发者ID:bitking,项目名称:sysPass,代码行数:27,代码来源:CryptMasterPass.class.php

示例2: updateUserMPass

 /**
  * Actualizar la clave maestra del usuario en la BBDD.
  *
  * @param string $masterPwd con la clave maestra
  * @return bool
  */
 public function updateUserMPass($masterPwd)
 {
     $configHashMPass = ConfigDB::getValue('masterPwd');
     if ($configHashMPass === false) {
         return false;
     }
     if (is_null($configHashMPass)) {
         $configHashMPass = Crypt::mkHashPassword($masterPwd);
         ConfigDB::setValue('masterPwd', $configHashMPass);
     }
     if (Crypt::checkHashPass($masterPwd, $configHashMPass, true)) {
         $cryptMPass = Crypt::mkCustomMPassEncrypt(self::getCypherPass(), $masterPwd);
         if (!$cryptMPass) {
             return false;
         }
     } else {
         return false;
     }
     $query = 'UPDATE usrData SET ' . 'user_mPass = :mPass,' . 'user_mIV = :mIV,' . 'user_lastUpdateMPass = UNIX_TIMESTAMP() ' . 'WHERE user_id = :id LIMIT 1';
     $data['mPass'] = $cryptMPass[0];
     $data['mIV'] = $cryptMPass[1];
     $data['id'] = $this->_userId;
     return DB::getQuery($query, __FUNCTION__, $data);
 }
开发者ID:bitking,项目名称:sysPass,代码行数:30,代码来源:User.class.php

示例3: createAdminAccount

 /**
  * Crear el usuario admin de sysPass.
  * Esta función crea el grupo, perfil y usuario 'admin' para utilizar sysPass.
  *
  * @throws SPException
  */
 private static function createAdminAccount()
 {
     // Datos del grupo
     Groups::$groupName = "Admins";
     Groups::$groupDescription = "Admins";
     if (!Groups::addGroup()) {
         self::rollback();
         throw new SPException(SPException::SP_CRITICAL, _('Error al crear el grupo "admin"'), _('Informe al desarrollador'));
     }
     $User = new User();
     // Establecer el id de grupo del usuario al recién creado
     $User->setUserGroupId(Groups::$queryLastId);
     $Profile = new Profile();
     $Profile->setName('Admin');
     $Profile->setAccAdd(true);
     $Profile->setAccView(true);
     $Profile->setAccViewPass(true);
     $Profile->setAccViewHistory(true);
     $Profile->setAccEdit(true);
     $Profile->setAccEditPass(true);
     $Profile->setAccDelete(true);
     $Profile->setConfigGeneral(true);
     $Profile->setConfigEncryption(true);
     $Profile->setConfigBackup(true);
     $Profile->setMgmCategories(true);
     $Profile->setMgmCustomers(true);
     $Profile->setMgmUsers(true);
     $Profile->setMgmGroups(true);
     $Profile->setMgmProfiles(true);
     $Profile->setEvl(true);
     if (!$Profile->profileAdd()) {
         self::rollback();
         throw new SPException(SPException::SP_CRITICAL, _('Error al crear el perfil "admin"'), _('Informe al desarrollador'));
     }
     // Datos del usuario
     $User->setUserLogin(self::$_username);
     $User->setUserPass(self::$_password);
     $User->setUserName('Admin');
     $User->setUserProfileId($Profile->getId());
     $User->setUserIsAdminApp(true);
     $User->setUserIsAdminAcc(false);
     $User->setUserIsDisabled(false);
     if (!$User->addUser()) {
         self::rollback();
         throw new SPException(SPException::SP_CRITICAL, _('Error al crear el usuario "admin"'), _('Informe al desarrollador'));
     }
     // Guardar el hash de la clave maestra
     ConfigDB::setCacheConfigValue('masterPwd', Crypt::mkHashPassword(self::$_masterPassword));
     ConfigDB::setCacheConfigValue('lastupdatempass', time());
     ConfigDB::writeConfig(true);
     if (!$User->updateUserMPass(self::$_masterPassword)) {
         self::rollback();
         throw new SPException(SPException::SP_CRITICAL, _('Error al actualizar la clave maestra del usuario "admin"'), _('Informe al desarrollador'));
     }
 }
开发者ID:bitking,项目名称:sysPass,代码行数:61,代码来源:Installer.class.php


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