| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- <?php
- /*
- Sistema de Portales de Soler y Palau SA de CV
- (2015) Desarrollos y Servicios en Tecnología Inteligente S de RL de CV
- Versión 1.0
- Última Actualización: 29/06/2015
- Código del Módulo: SHA002
- */
- // Función de encriptación
- function encriptar($cadena, $clave = 'SPA861201DK4') {
- if(strlen($clave)>32) {
- $clave = substr($clave,0,32);
- }
- while(strlen($clave)<32) {
- $clave .= $_SESSION['diaAcceso1'];
- }
- $cifrado = MCRYPT_RIJNDAEL_256;
- $modo = MCRYPT_MODE_ECB;
- return rawurlencode(base64_encode(mcrypt_encrypt($cifrado, $clave, $cadena, $modo,mcrypt_create_iv(mcrypt_get_iv_size($cifrado, $modo), MCRYPT_RAND))));
- }
- // Función para desencriptación
- function desencriptar($cadena, $clave = 'SPA861201DK4') {
- if(strlen($clave)>32) {
- $clave = substr($clave,0,32);
- }
- $claveA = $clave;
- while(strlen($clave)<32) {
- $clave .= $_SESSION['diaAcceso1'];
- }
- // Esta sección administra los cambios en el carácter de relleno
- if($_SESSION['diaAcceso0']!=$_SESSION['diaAcceso1']) {
- while(strlen($claveA)<32) {
- $claveAnterior .= $_SESSION['diaAcceso0'];
- }
- $_SESSION['diaAcceso0'] = $_SESSION['diaAcceso1'];
- foreach($arrEncriptadas as $strEncriptada) {
- if(isset($_SESSION[$strEncriptada])) {
- $_SESSION[$strEncriptada] = encriptar(desencriptar($_SESSION[$strEncriptada],$claveAnterior),$clave);
- }
- }
- }
- $cifrado = MCRYPT_RIJNDAEL_256;
- $modo = MCRYPT_MODE_ECB;
- return str_replace(chr(0),'',mcrypt_decrypt($cifrado,$clave,base64_decode(rawurldecode($cadena)), $modo,mcrypt_create_iv(mcrypt_get_iv_size($cifrado, $modo), MCRYPT_RAND)));
- }
- ?>
|