Foros del Web » Programando para Internet » Android »

Comparar contraseña codificada en sha512

Estas en el tema de Comparar contraseña codificada en sha512 en el foro de Android en Foros del Web. Hola. No estoy seguro de si esto va aquí o en Symfony. Desde un framework de php llamado Symfony genero y almaceno contraseñas en sha512. ...
  #1 (permalink)  
Antiguo 13/02/2015, 16:30
 
Fecha de Ingreso: febrero-2014
Ubicación: Edo. México
Mensajes: 85
Antigüedad: 10 años, 9 meses
Puntos: 0
Pregunta Comparar contraseña codificada en sha512

Hola. No estoy seguro de si esto va aquí o en Symfony.

Desde un framework de php llamado Symfony genero y almaceno contraseñas en sha512. Esto me genera un password codificado y un Salt que almaceno en una BD. Hasta aquí todo bien.

Estoy haciendo una aplicación en android donde descargo los usuarios, contraseñas y el Salt a un SQLite dentro del dispositivo (La aplicación ha de funcionar offline por lo que se necesita hacerlo así). Mi pregunta es; ¿Como hago la comparación de las contraseñas en android?
  #2 (permalink)  
Antiguo 13/02/2015, 17:17
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: Comparar contraseña codificada en sha512

Tienes que comprender como hace la comparación en Symfony y luego implementarlo en Android.

Aquí la parte donde se hace el digest del password. Ahora te toca implementarlo en Android buena suerte.

https://github.com/symfony/symfony/b...ordEncoder.php
  #3 (permalink)  
Antiguo 13/02/2015, 18:59
 
Fecha de Ingreso: febrero-2014
Ubicación: Edo. México
Mensajes: 85
Antigüedad: 10 años, 9 meses
Puntos: 0
Respuesta: Comparar contraseña codificada en sha512

Gracias Razpeitia.
De acuerdo a lo que me comentabas he llegado hasta aquí

Código PHP:
 public static String encryptPassword(String password,String salt) {
        
MessageDigest md null;
        try {
            
md MessageDigest.getInstance("SHA-512");
        } catch (
NoSuchAlgorithmException e) {
            
e.printStackTrace();
        }
        if (
md != null) {
            
String salted password '{'+salt+'}';

            
md.update(salted.getBytes());
            
byte byteData[] = md.digest();

            for (
int i 15000 i++) {
                
¿?
            }

            
String base64 Base64.encodeToString(byteDataBase64.NO_WRAP);

            return 
base64;
        }
        return 
password;
    } 
Pero no logro averiguar como hacer los 5000 ciclos del digest . Podrías echarme una mano?

Saludos

Etiquetas: androi, contraseña
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:33.