2014-02-17 2 views
1

암호를 crypted_password와 비교하고 싶습니다. 암호가 has3 매개 변수 (문자열, 바이트 [], 바이트 [])가있는 passwordisvalid()라는 함수가 있습니다. 문자열 plaintextpassword, byte []에 대해 저장된 cryptedpassword 및 저장된 salt 및 crypted_password 및 salt 속성은 데이터베이스에 있습니다. 그래서 내 질문에 어떻게 varchar 데이터 유형을 byte []로 변환하여 passwordisvalid()에 전달할 수 있습니까? ?varchar 형식을 바이트 []로 변환 할 수 없습니다

public static bool IsPasswordValid(string passwordPlainText, byte[] savedSaltBytes, byte[] savedHashBytes) 
{ 
    byte[] array1 =GenerateSaltedHash(passwordPlainText,savedSaltBytes); 
    byte[] array2 = savedHashBytes; 

    if (array1.Length != array2.Length) 
     return false; 

    for (int i = 0; i < array1.Length; i++) 
    { 
     if (array1[i] != array2[i]) 
      return false; 
    } 

    return true; 
} 

도움이 되겠습니다.

+0

일부 코드를 공유 할 수 있습니까? –

+0

public static bool IsPasswordValid (문자열 passwordPlainText, 바이트 [] savedSaltBytes, 바이트 [] 저장된 HashBytes) { 바이트 [] array1 = GenerateSaltedHash (passwordPlainText, savedSaltBytes); byte [] array2 = savedHashBytes; if (array1.Length! = array2.Length) false를 반환합니다. (array1 [i]! = array2 [i]) false를 반환하는 경우 (int i = 0; i user3048066

답변

관련 문제