Внедрите хэш SHA 512 с помощью средства зажигания - PullRequest
2 голосов
/ 11 марта 2012

У меня есть контроллер: landingpage.php

<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class LandingPage extends CI_Controller {

    public function index(){
          $data = array(
            'head' => $this->load->view('Landing_Header', '', true),
            'guts' => $this->load->view('Landing_Guts', '', true),
            'foot' => $this->load->view('Landing_Footer', '', true)
          );
          $this->load->view('index', $data);
    }

    public function validateInput(){
        #load help libraries for use
        $this->load->helper("form");
        $this->load->helper("form_validation");

        /////////////////////////////////////////////////////////////////
        /////////////////////// New User Validation /////////////////////
        /////////////////////// Format for Validation :  ////////////////
        ////////// "field name","Error Value","validation method" ///////
        $this->form_validation->set_rules('fullname','Your Name','required|min_length[2]|max_length[20]');
        $this->form_validation->set_rules('email','Your Email','required|valid_email|is_unique[users.email]');
        $this->form_validation->set_rules('emailConf','Email Confirm','required|matches[email]');
        $this->form_validation->set_rules('password','Password','required|min_length[2]|max_length[20]');
    }
}

Мне было интересно, как я могу реализовать хеширование SHA 512, как это было раньше, когда я делал свое приложение процедурно, кроме этого временив CODEIGNITER ??

isset($_POST['password'])
$dynamSalt = mt_rand(20,100); 
$userPassword = hash('sha512',$dynamSalt.$userPassword);

Есть ли в коде воспламенителя встроенная функция для этого ???или что-то подобное?

1 Ответ

5 голосов
/ 11 марта 2012

Есть ли в коде воспламенителя встроенная функция для этого?

Нет, но поскольку PHP это делает - он вам не нужен.

hash('sha512', $string);

Это не может быть намного легче или короче, чем это. Зачем переписывать существующий функционал?

Однако для хеширования паролей в PHP я предлагаю phpass:

http://www.openwall.com/phpass/

...