Sha256 + алгоритм соли в Windows Phone 7

Я хочу зашифровать свой идентификатор пользователя и пароль, используя алгоритм SHA256 и сольный ключ для отправки на сервер через xml. Как я могу этого добиться?

Я сделал пример кода с SHA256 и вставил его. Как я использую ключ соли в этом?

      void myBtn_Click(object sender, RoutedEventArgs e)
      {
        var sha = new  SHA256Managed();
        var bytes = System.Text.Encoding.UTF8.GetBytes(testPass.Text);
        byte[] resultHash = sha.ComputeHash(bytes);
        string sha256 = ConvertToString(resultHash);
      }

       public static string ConvertToString(byte[] buff)
       {
         string sbinary = "";

         for (int i = 0; i < buff.Length; i++)
         {
             //hex-formatted
            sbinary += buff[i].ToString("X2");
         }
         return (sbinary);
       }

person Arun    schedule 27.06.2012    source источник
comment
SHA256 не является шифрованием. Это хеширование. Они очень разные.   -  person Jon Skeet    schedule 27.06.2012
comment
Обратите внимание, что это только (слегка) защитит вас от людей, пытающихся найти ваш текстовый пароль. Поскольку процедуру входа в систему можно повторить, она не защитит вас от хакеров, пытающихся повторно использовать вашу аутентификацию. Вы должны использовать TLS/SSL для защиты от повторных атак и использовать scrypt, bcrypt или PBKDF2 на сервере для лучшей защиты.   -  person Maarten Bodewes    schedule 29.06.2012


Ответы (1)


SHA — это алгоритм хеширования, а не алгоритм шифрования. Пароль не может быть извлечен из вашей строки результата. Вы уверены, что выбрали правильный подход? Не могли бы вы объяснить сценарий немного лучше?

person Jeremy Pullicino    schedule 27.06.2012
comment
Ах хорошо. но это нормально. Я не хочу извлекать его из результата. На стороне сервера они тоже сравнивают это с результатом после использования sha256 + соль. - person Arun; 27.06.2012
comment
@ Сталлин Теперь я понимаю лучше. Возможно, вы захотите взглянуть на алгоритм Keyed Hash, который зашифрует ваш хэш с помощью ключа. Это равносильно засолке. Вот ссылка: ссылка - person Jeremy Pullicino; 27.06.2012