Хеширование пароля в Приложении Windows C#, отсутствуйте FormsAuthentication ASP.NET?

Вы можете выполнить поиск в настройках веб-интерфейса в URL-адресе репозитория вашего проекта и проверить, совпадает ли он с вашим локальным пультом.

.git / config

[remote "heroku"]
        url = https://dir/repo.git
        fetch = +refs/heads/*:refs/remotes/heroku/*
8
задан mdb 9 November 2008 в 15:53
поделиться

5 ответов

FormsAuthentication определяется в Системе. Сеть. Пространство имен безопасности, которое находится в блоке System.Web.dll.

Просто, потому что Вы пишете, что приложение WinForm не мешает Вам использовать то пространство имен или сослаться на тот блок; они просто не сделаны по умолчанию, как они были бы для приложения WebForms.

3
ответ дан 5 December 2019 в 05:35
поделиться
using System.Security.Cryptography;

public static string EncodePasswordToBase64(string password)
{  byte[] bytes   = Encoding.Unicode.GetBytes(password);
   byte[] inArray = HashAlgorithm.Create("SHA1").ComputeHash(bytes);
   return Convert.ToBase64String(inArray);
}  
22
ответ дан 5 December 2019 в 05:35
поделиться

Я думаю, что это должно работать. Все, что необходимо сделать, является ссылочной Системой. Сеть. Безопасность в Вашем коде (и добавляют его как ссылку в Вашем Проекте Visual Studio).

1
ответ дан 5 December 2019 в 05:35
поделиться

Если на самом деле необходимо 'поставляться', это формирует приложение, возможно, добавляя Систему. Сеть. Безопасность не является такой хорошей идеей...

При необходимости в хеше SHA1 существует очень простая в использовании библиотека криптографии .NET с примерами на MSDN. Ключ к

  1. возьмите то, что Вы хотите зашифровать
  2. превратите его в байты для того, какой бы ни кодирующий (ASCII, utf*) Вы используете
  3. Используйте одну из многих схем хеширования, встроенных к .NET для получения хешированных байтов
  4. возвратите те байты в строку в том же кодировании на шаге 2
  5. Сохраните получающуюся хешированную строку где-нибудь для более позднего сравнения

//step 1 and 2
byte[] data = System.Text.Encoding.Unicode.GetBytes(tbPassword.Text,);
byte[] result; 

//step 3
SHA1 sha = new SHA1CryptoServiceProvider(); 
result = sha.ComputeHash(data);

//step 4
string storableHashResult = System.Text.Encoding.Unicode.ToString(result);

//step 5
    // add your code here
1
ответ дан 5 December 2019 в 05:35
поделиться

Разве Вы не могли использовать функцию BitConverter вместо "x2" цикла?

например.

возвратите BitConverter. ToString (хеш).Replace (" - ", " ");

1
ответ дан 5 December 2019 в 05:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: