Вступление
Все люди пользуются интернетом. Или вскоре начнут им пользоватся. А зайдя в интернет они полюбому будут ичпользовать сервисы типа почты, одноклассников, интернет магазинов или вебмани (web money). А здесь везде и всюду нужно вписывать свой пароль. А надежный пароль сходу так и не придумаешь. Но если пароль не надежен, то и система где его используют не может считатся надежной.
Надежным пароль считается, когда он:
- не состоит из простых слов типа "pavel", "armagedon" и др.
- содержит цифры,
- содержит знаки препинания,
- содержит большие и маленькие буквы.
Вот мне и пришла идея использовать стандартные средства C#, что-бы сделать простой генератор паролей. Все преимущества такой программы налицо - нажал на кнопочку - вот тебе надежный пароль, притом в программе можно выбрать любую длину. Потом можно записать его куда-нибудь в надежное место, или просто скинуть в блокнот себе на компе, а файл для надежности закодировать.
Общая инфа
В программе используется пространство имен System.Security.Cryptography. Оно предоставляет криптографические службы, включающие безопасное кодирование и декодирование данных, а также целый ряд других функций, таких как хэширование, генерация случайных чисел и проверка подлинности сообщений.
Программа выглядит следующим образом:
Все просто - выбираем длину пароля и жмем "Roll Dice".
Программный код (исходники)
Form1.cs
using System;
using System.Windows.Forms;
namespace Char_generator_for_VS2008
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click_1(object sender, EventArgs e)
{
if (Convert.ToInt32(textBox2.Text) < 35)
{
try
{
textBox1.Clear();
byte[] temp = Generator.RollDice(Convert.ToInt32(textBox2.Text));
for (int i = 0; i < temp.Length; i++)
{
textBox1.Text += (char)temp[i];
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
else
MessageBox.Show("Введите число меньше 35!!!");
}
private void Form1_Load(object sender, EventArgs e)
{
textBox2.Text = "16";
}
}
}
Мы вызываем метод RollDice() класса Generator. Програмный код этого класса:
Generator.cs
using System.Security.Cryptography;
namespace Char_generator_for_VS2008
{
class Generator
{
public static byte[] RollDice(int passLenght)
{
byte[] randomNumber = new byte[passLenght];
byte[] password = new byte[passLenght];
// Create a new instance of the RNGCryptoServiceProvider.
RNGCryptoServiceProvider Gen = new RNGCryptoServiceProvider();
// Fill the array with a random value.
Gen.GetBytes(randomNumber);
for (int i = 0; i < randomNumber.Length; i++)
{
if ((int)randomNumber[i] > 48 && (int)randomNumber[i] < 57 ||
(int)randomNumber[i] > 65 && (int)randomNumber[i] < 90 ||
(int)randomNumber[i] > 97 && (int)randomNumber[i] < 122)
{
password[i] = randomNumber[i];
}
else
{
Gen.GetBytes(randomNumber);
i--;
}
}
return password;
}
}
}
Логика следующая:
- Генерируем число от 0 до 256
- Если сгенерированное число входит в интервалы
от 48 до 57,
от 65 до 90 и
от 97 до 122,
сохраняем его в текстбокс.
В противном случае снова генерируем число от 0 до 256.
Скачать исходники можно здесь - http://upload.com.ua/get/901646946/
или здесь - http://rapidgator.net/133533/Char_generator_for_VS2008.rar.html
Исходники c# скачать - блог Павел Белоус - блог по программированию на C# .NET, C++
Немного о идее
Сегодня исходники по C# скачать бесплатно практически не возможно. Но мне пришла идея разместить исходники программ, что я делал в универе, здесь на сайте. Скачать можно с файлообменника, просто нужно подождать минуту - и вуааля - скачивайте и сдавайте вашему преподавателю, или эксперементируйте с исходниками... Оставляйте комментарии или давайте идеи - буду пробовать написать и выложить исходники. Также планирую в дальнейшем выложить для скачивания исходники по C++. Вообщем пожелайте мне удачи. :)
вторник, мая 18, 2010
Генератор паролей RNGCryptoServiceProvider
Автор:
Pavel Bilous
Ярлыки:
исходники c# скачать,
C#,
C# sources
Подписаться на:
Комментарии к сообщению (Atom)
2 комментария:
Использовал различные генератор паролей, всё время забывал пароли, потом решил сделать свои генератор паролей основанный на тэгах и теперь счастлив.
Сам генератор естественно в онлайн — http://psw.wirtel.ru/
Вся система основана на тэгах, вводятся статистические и динамические тэги.
Под статистические попадают все тэги (ключевые слова) которые Я никогда не забуду, например: день рождения, цвет своих глаз, своё имя. В динамические тэги (ключевые слова) попадают изменяющиеся данные, например: адрес сайта или его название.
Затем всё просто надо знать схему тэгов и можно спокойно восстанавливать сложные пароли.
Спасибо! На основе этого я сделал свой генератор паролей!))))))
Отправить комментарий