Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...
Топ:
Теоретическая значимость работы: Описание теоретической значимости (ценности) результатов исследования должно присутствовать во введении...
Оснащения врачебно-сестринской бригады.
Особенности труда и отдыха в условиях низких температур: К работам при низких температурах на открытом воздухе и в не отапливаемых помещениях допускаются лица не моложе 18 лет, прошедшие...
Интересное:
Как мы говорим и как мы слушаем: общение можно сравнить с огромным зонтиком, под которым скрыто все...
Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья...
Принципы управления денежными потоками: одним из методов контроля за состоянием денежной наличности является...
Дисциплины:
2019-06-06 | 65 |
5.00
из
|
Заказать работу |
|
|
Разработать систему управления делами и задачами.
Задачи группируются в проекты (тематические группы с определенными названиями). Каждая задача имеет описание, время и дату выполнения, статус (выполнено/в процессе/не выполнено), приоритет (обычный/важный/ отложенный).
Задачи и проекты можно добавлять/редактировать/удалять.
Просмотр списка задач реализовать с помощью DataGridView и возможностью сортировки
· по датам в хронологическом порядке;
· по статусу;
· по приоритету.
Реализовать просмотр списка проектов (с количеством невыполненных задач в каждом) и списков задач «на сегодня»/«на неделю»/«просроченные».
Если пользователь изменил статус/приоритет задачи, то устанавливает в системе соответствующий маркер.
Реализовать возможность сохранения всего списка задач на сервере. Информация хранится на сервере в произвольном формате. Например, вся информация в одном файле или в нескольких файлах по проектам.
После запуска клиентского приложения пользователь может загрузить список задач с сервера, или создать новый список.
Хранитель паролей
Разработать надежную систему хранения паролей, организованную в виде набора записей. Каждая запись состоит из названия, имени пользователя, пароля, комментария. Записи группируются по тематическим группам с определенными названиями (например: пин-коды, интернет, почта, прочее).
Записи и группы можно добавлять/редактировать/удалять. При добавлении/редактировании поля пароля, его значение шифруется.
Алгоритм шифрования пароля реализовать с помощью симметричного алгоритма шифрования RC4 (один ключ используется как для шифрации, так и для дешифрации), путем суммирования исходных данных и ключа по модулю 2 – XOR (“^” в коде С#): <Шифр>=<Исходник> XOR <ключ1>. Для дешифрации используется тот же алгоритм: <Исходник> = <Шифр> XOR <ключ1>. Ключ1 должен совпадать по размеру с исходником, получается циклическим заполнением ключа до нужного размера. Например для ключа «123» ключ1 размером 5 байт будет «12312».
|
Список записей и групп хранится в файле на сервере, для кодирования всех паролей в списке используется один ключ.
Просмотр списка записей реализовать с помощью DataGridView. В списке вместо пароля выводится «*******», при нажатии на данную ячейку пароль расшифровывается и отображается.
При первом подключении к серверу требуется ввести 2 раза новый пользовательский пароль, который шифруется по алгоритму MD5 (MD5CryptoServiceProvider в пространстве имен System.Security.Cryptography) и сохраняется в отдельном файле на сервере. При последующих подключениях необходимо запросить у пользователя пароль и сравнить его с сохраненным на сервере.
После запуска клиентского приложения пользователь может загрузить список с сервера, или создать новый список.
По алгоритму шифрования MD5, возвращается значение в виде 32-разрядной шестнадцатеричной строки. Данный метод конвертирует, например, символ «1» в значение «06d49632c9dc9bcb62aeaef99612ba6b».
Обратного алгоритма не существует. Расшифровке зашифрованные по MD5 данные не поддаются, а потому проверять пароль зарегистрированного пользователя при попытке входа следует также шифровать по MD5 (приводить вводимый пароль к хеш-значению) и только после этого сравнивать с находящимся на сервере.
Пример использования функции шифрования
using System.Security.Cryptography;
string GetHashString(string s)
{
//переводим строку в байт-массив
byte[] bytes = Encoding.Unicode.GetBytes(s);
//создаем объект для получения средств шифрования
MD5CryptoServiceProvider CSP =
new MD5CryptoServiceProvider();
//вычисляем хеш-представление в байтах
byte[] byteHash = CSP.ComputeHash(bytes);
string hash = string.Empty;
//формируем одну цельную строку из массива
foreach (byte b in byteHash)
|
hash += string.Format("{0:x2}", b);
return hash;
}
Адресная книга
Разработать приложение для хранения набора записей-контактов.
Контакты объединяются в тематические группы по названиям (например: дом, друзья, работа).
Каждый контакт содержит: ФИО, псевдоним, адрес, дом. тел., раб. тел., сот. тел., email, рабочие реквизиты, комментарий. Обязательными полями являются Фамилия и Имя.
Контакты и группы можно добавлять/редактировать/удалять.
Просмотр списка контактов реализовать с помощью DataGridView с возможностью сортировки. Реализовать режимы отображения имени: «ФИО», «Фамилия, Имя», «Имя, Фамилия», «Псевдоним».
Реализовать возможность отправки электронной почты выбранному контакту: указывается тема и вводится текст сообщения.
Список контактов хранится в файле на сервере. После запуска клиентского приложения пользователь может загрузить список с сервера, или создать новый список.
Контроль корректности ввода данных осуществляется на стороне клиента с помощью регулярных выражений.
Отправку почты можно реализовать через специальные функции.NET Framework.
Пример кода:
using System.Web;
using System.Net;
using System.Net.Mail;
using System.Net.Mime;
//Авторизация на SMTP сервере
SmtpClient Smtp = new SmtpClient("smtp.mail.ru", 25);
Smtp.Credentials = new NetworkCredential("login", "pass");
//Smtp.EnableSsl = false;
//Формирование письма
MailMessage Message = new MailMessage();
Message.From = new MailAddress("[email protected]");
Message.To.Add(new MailAddress("[email protected]"));
Message.Subject = "Заголовок";
Message.Body = "Сообщение";
Smtp.Send(Message);//отправка
Учет финансов
Разработать систему учета домашних финансов, основанную на учете статей доходов и расходов.
Статьи делятся на 2 типа доходы и расходы. Каждая статья представляет собой запись, содержащую данные для расходов: дата, сумма в руб., назначение платежа. Для доходов: дата, сумма в руб., источник. Каждой записи можно присвоить свой тег (например, для расходов: платежи, еда, развлечения, спорт). Реализовать список записей с остатками на счетах в виде пары значений: счет (например: наличные, электронные деньги, кредитка), значение в руб.
Записи, остатки и теги можно добавлять/редактировать/удалять. При занесении значения в поле суммы реализовать конвертер валют (из долларов, евро в рубли) по фиксированному курсу. Для доходов и расходов реализовать интерфейс занесения депозитов и кредитов. У пользователя запрашивается дата возврата, объем начальных средств и годовой процент. При этом, в зависимости от даты возврата, в список заносятся k ежемесячных записей с автоматически рассчитываемыми значениями сумм.
|
Реализовать подсчет статистики и баланса за выбранный период времени (неделя/месяц/год/произвольный): статистика по тегам в процентном и суммарном отношении (с возможностью сортировки), суммарные объемы доходов, расходов, прибыли. Выводить предупреждение, если объем расходов превышает объем доходов и суммарный остаток на счетах.
Данные хранятся в файле на сервере. После запуска клиентского приложения пользователь может загрузить список с сервера, или создать новый список.
Контроль корректности ввода данных осуществляется на стороне клиента.
Методика выполнения работы
· Ознакомиться с кратким теоретическим материалом;
· определить номер выполняемого варианта;
· для заданного варианта разработать консольное приложение:
· для заданного варианта выполнить программу. Результат выполнения программы необходимо отразить в протоколе выполнения программы
Порядок выполнения работы
· Изучить панели инструментов и принципы размещения и группировки окон среды. Изучить свойства проекта и решения.
· Создать проект и основной программный файл.
· Скомпилировать и запустить проект.
· Составить отчет.
Содержание отчета
Отчет должен содержать следующее:
· титульный лист с указанием наименования и цели занятия; фамилии, имени, отчества и номера группы студента; а также номер выполняемого варианта;
· дату выполнения работы;
· цель занятия;
· условие предложенной задачи;
· реализацию соответствующего алгоритма;
· листинг программы;
· выводы о проделанной работе.
|
|
Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...
Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...
Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!