Общие подходы к построению парольных систем. — КиберПедия 

Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...

Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...

Общие подходы к построению парольных систем.

2020-02-15 446
Общие подходы к построению парольных систем. 0.00 из 5.00 0 оценок
Заказать работу

Реферат

 

Пояснительная записка содержит 32 с., 2 рис., 4 источника, 4 прил.

MICROSOFT VISUAL С++, ПРОГРАММА, ПАРОЛЬНАЯ СИСТЕМА, КОЛИЧЕСТВЕННАЯ ОЦЕНКА СТОЙКОСТИ ПАРОЛЯ.

Объектом исследования является парольные системы.

Целью работы является разработка программы, генерирующей пароли пользователей с учётом количественной оценки стойкости пароля.

В процессе работы была произведена количественная оценка стойкости паролей пользователей и в соответствии с полученной оценкой была разработана программа, генерирующая пароли пользователей.

В результате работы была разработана программа, генерирующаяпароли пользователей (её текст приведён в приложении).


Содержание

 

Реферат

Задание

Введение

1. Количественная оценка стойкости пароля

2. Интерфейс

2.1 Понятие интерфейса и его назначение

2.2. Выбор интерфейса

3. Разработка алгоритма программы

4. Создание программы на базе разработанного алгоритма

5. Экспериментальная проверка количественных оценок стойкости пароля

6. Руководство пользователя

Заключение

Список использованных источников

ПРИЛОЖЕНИЕ А. Алгоритм программы

ПРИЛОЖЕНИЕ Б. Текст программы

ПРИЛОЖЕНИЕ В. Random.cpp

ПРИЛОЖЕНИЕ Г. PassGenDlg.cpp


Введение

 

Проблему компьютерной безопасности надуманной не назовешь. Практика показывает: чем более ценная информация доверяется компьютерам, тем больше находится желающих нарушить ее нормальное функционирование ради материальной выгоды или просто из праздного любопытства. Идет постоянная виртуальная война, в ходе которой организованности системных администраторов противостоит изобретательность компьютерных взломщиков.

Основным защитным рубежом против злонамеренных атак является система парольной защиты, которая имеется во всех современных программных продуктах. В соответствии с установившейся практикой, перед началом сеанса работы с операционной системой пользователь обязан зарегистрироваться, сообщив ей свое имя и пароль. Имя требуется для идентификации пользователя, а пароль служит подтверждением правильности произведенной идентификации. Информация, введенная пользователем в диалоговом режиме, сравнивается с той, что имеется в распоряжении операционной системы. Если проверка дает положительный результат, то пользователю становятся доступны все ресурсы операционной системы, связанные с его именем.

Несанкционированный доступ (Н.С.Д.) к информации - доступ к информации, нарушающий установленное правило разграничения доступа и осуществляемый с использованием нештатных средств, предоставляемых автоматизированной системой.

Выделяют 2 типа методов защиты от Н.С.Д.:

1) организационные меры - определяются документально.

2) Технические меры - группа методов, которые реализуются программными, аппаратными и программно - аппаратными средствами.

Существуют 3 группы методов аутентификации, которые основаны на обладании некоторого свойства или объекта

1) обладание определённым объектом;

2) основано на знании информации известной пользователю и проверяющей стороне;

3) основано на том, что у каждого пользователя есть уникальные биометрические характеристики.

Выбор паролей

Требования к выбору паролей:

 

требования к выбору пароля достигнутый результат
ограничение минимальной длины 1 усложняется подбор методом прямого перебора 2 усложняется подсматривание
Использование различных групп символов усложняется подбор методом прямого перебора
проверка и отбраковка по словарю затруднение подбора пароля по словарю
установление срока действия пароля усложняется подбор методом прямого перебора и подстановки старого
ведение журнала историй пароля повышается эффективность предыдущего
ограничение количества попыток ввода препятствует подбору пароля
поддержка режима принудительной смены пароля увеличение эффекта выполнения требования касающегося смены пароля
принцип смена пароля после 1-ой регистрации защита от злоумышленных действий администратора
запрет на выбор пароля самим пользователем защита от выбора пользователем лёгкого пароля
Задержка при вводе неправильного пароля затрудняется подбор пароля когда он вводится с клавиатуры непосредственно за компьютером

 


Интерфейс

Выбор интерфейса

 

Интерфейс взаимодействия с пользователем является важным элементом любой программы. От его продуманности и удобства часто зависит коммерческий успех программного продукта.

Интерфейс пользователя можно разделить на пакетный и интерактивные. Пакетные характеризуются тем, что пользователь должен сформировать пакет с заданиями, затем программа эти задания выполняет и выдаёт результат. Интерактивные характеризуются тем, что пользователь в ходе работы программы постоянно с ней взаимодействует. Существует интерфейс на базе меню, псевдографический интерфейс, интерактивно- командный интерфейс, эти интерфейсы описывать не будем, так как программа, которую необходимо создать по заданию требует графический интерфейс. Графический интерфейс следует выбирать только для многомодульных программ, которые, предположительно будут иметь массовое применение. В соответствии с заданием и для большего удобства и понятия принципа работы программы интерфейс должен содержать наименьшее количество кнопок. Вследствие чего выберем: 1 поле, в котором будем генерировать сам код, одну кнопку после нажатия, которой будет происходить генерация, и кнопку выход.

Интерфейс приведен на рисунке 1.


Создание класса диалога

Приступим к созданию класса диалога. Очень большую долю работы по созданию этого класса уже выполнил мастер AppWizard, а еще некоторую часть работы возьмет на себя мастер ClassWizard.

Оболочка Visual C++ сама создаст Password.cpp и Random.cpp. Далее необходимо будет заменить данные файлы, на файлы, приведённые в приложении Б и В соответственно.

Далее остаётся только сохранить и откомпилировать данную программу.

На этом создание программы на языке С++ закончилось.


Руководство пользователя

 

Для начала работы с программой необходимо запустить файл с названием PassGen. После запуска появится окно. Для генерации пароля необходимо нажать на клавишу “GENERIROVANIE”. После чего в окошке появится сгенеррированный пароль. Далее необходимо запомнить пароль и использовать по назначению. При повторном нажатии на клавишу пароль будет сгенерирован вновь. Для выхода из программы необходимо нажать на клавишу “Выход” или нажав на “крестик”.


Заключение

 

В процессе выполнения курсового проекта была разработана программа, генерирующая пароли пользователей. Программа была написана при помощи интегрированной среды разработки Visual C++. Программа соответствует всем функциональным требованиям, заданным на курсовое проектирование. Взаимодействие с пользователем осуществляется с помощью графического интерфейса.

Таким образом, задание на курсовое проектирование было полностью выполнено.


ПРИЛОЖЕНИЕ А

 

Алгоритм программы

 

 

 

 


Случайное генерирование 1-го символа из массива PassAlfavit[]  
-----------[с листа2

 

 

 


--------------[на лист 2

 

Рисунок А.1. Алгоритм программы


---------------------------------------[с листа 1

     
 


  Присоединение символов
------[на лист 1

 

 


Рисунок А.1. Лист №2


ПРИЛОЖЕНИЕ Б

 

Текст программы

// Password.cpp: implementation of the Password class.

//////////////////////////////////////////////////////////////////////

#include <afx.h>

#include "stdafx.h"

#include "PassGen.h"

#include "Password.h"

#include "Random.h"

#ifdef _DEBUG

#undef THIS_FILE

static char THIS_FILE[]=__FILE__;

#define new DEBUG_NEW

#endif

//////////////////////////////////////////////////////////////////////

// Construction/Destruction

//////////////////////////////////////////////////////////////////////

Password::Password(int l)

{length = l;

passwrd = new char [length+1];

dicstr = new char [length+1];

PassAlfavit = new char [36];

HowMuchn = new int [length];

dicstr[length]='\0';

ValueOfDictionary= 134547;}

Password::~Password()

{delete(passwrd);

delete(dicstr);

delete(PassAlfavit);

delete(HowMuchn);}

void Password::GenAlfavit()

{char symbol='A';

for (int index=0;index<36;index++)

{if (index==26)

symbol='0';

PassAlfavit[index]=symbol;

symbol++;}}

char * Password::GetPassword()

{return passwrd;}

void Password::GenPass()

{Random rnd1;

for (int index =0;index<length;index++)

passwrd[index]=PassAlfavit[rnd1.NextR(35)];

passwrd[index]='\0';}

BOOL Password::TestChar()

{ClearMass(length,HowMuchn);

for (int index1=0;index1<length;index1++)

for (int index2=0;index2<length;index2++)

if (passwrd[index1]==passwrd[index2])

HowMuchn[index1]++;

if (HowMuch(length,HowMuchn))

return TRUE;

else return FALSE;}

void Password::ClearMass(int length,int * mass)

{for (int index =0;index<length;index++)

mass[index]=0;}

BOOL Password::HowMuch(int length, int *HowMuch)

{for (int index =0;index<length;index++)

if (HowMuch[index]>1)

return FALSE;

return TRUE;}

BOOL Password::TestDictionary()

{CFile Dictionary;

Try

{Dictionary.Open("length08.txt",CFile.modeRead,NULL);}

catch(CFileException *e)

{Dictionary.Abort(); // close file safely and quietly

e->~CFileException();

MessageBox(0,"Не удается открыть словарь", "ошибка", MB_APPLMODAL|MB_OK|MB_ICONSTOP);

return FALSE;}

for (int index =0;index<ValueOfDictionary;index++)

{Dictionary.Read(dicstr,8);

Dictionary.Seek(2,CFile.current);

if (Compare(length))

return FALSE;}

Dictionary.Close();

return TRUE;}

int Password::Compare(int length)

{for (int index=0;index<length;index++)

if (passwrd[index]!=dicstr[index])

return 0;

return 1;}


ПРИЛОЖЕНИЕ В

 

Random.cpp

// Random.cpp: implementation of the Random class.

//////////////////////////////////////////////////////////////////////

#include <windows.h>

#include <Winbase.h>

#include <stdlib.h>

#include "stdafx.h"

#include "PassGen.h"

#include "Random.h"

#ifdef _DEBUG

#undef THIS_FILE

static char THIS_FILE[]=__FILE__;

#define new DEBUG_NEW

#endif

//////////////////////////////////////////////////////////////////////

// Construction/Destruction

//////////////////////////////////////////////////////////////////////

Random::Random()

{srand(GetTickCount());}

Random::~Random()

{}

int Random::NextR(int x)

{int rnd1;

rnd1=rand();

srand(rnd1);

rnd1=rand() % x;

return rnd1;}


ПРИЛОЖЕНИЕ Г

 

PassGenDlg.cpp

// PassGenDlg.cpp: implementation file

#include "stdafx.h"

#include "PassGen.h"

#include "PassGenDlg.h"

#include "Password.h"

#ifdef _DEBUG

#define new DEBUG_NEW

#undef THIS_FILE

static char THIS_FILE[] = __FILE__;

#endif

/////////////////////////////////////////////////////////////////////////////

// CPassGenDlg dialog

CPassGenDlg::CPassGenDlg(CWnd* pParent /*=NULL*/)

: CDialog(CPassGenDlg::IDD, pParent)

{//{{AFX_DATA_INIT(CPassGenDlg)

// NOTE: the ClassWizard will add member initialization here

//}}AFX_DATA_INIT

// Note that LoadIcon does not require a subsequent DestroyIcon in Win32

m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);}

void CPassGenDlg::DoDataExchange(CDataExchange* pDX)

{CDialog::DoDataExchange(pDX);

//{{AFX_DATA_MAP(CPassGenDlg)

// NOTE: the ClassWizard will add DDX and DDV calls here

//}}AFX_DATA_MAP}

BEGIN_MESSAGE_MAP(CPassGenDlg, CDialog)

//{{AFX_MSG_MAP(CPassGenDlg)

ON_WM_PAINT()

ON_WM_QUERYDRAGICON()

ON_BN_CLICKED(IDGEN, OnGen)

//}}AFX_MSG_MAP

END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////

// CPassGenDlg message handlers

BOOL CPassGenDlg::OnInitDialog()

{CDialog::OnInitDialog();

// Set the icon for this dialog. The framework does this automatically

// when the application's main window is not a dialog

SetIcon(m_hIcon, TRUE);                   // Set big icon

SetIcon(m_hIcon, FALSE);        // Set small icon

// TODO: Add extra initialization here

return TRUE; // return TRUE unless you set the focus to a control}

// If you add a minimize button to your dialog, you will need the code below

// to draw the icon. For MFC applications using the document/view model,

// this is automatically done for you by the framework.

void CPassGenDlg::OnPaint()

{if (IsIconic())

{CPaintDC dc(this); // device context for painting

SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);

// Center icon in client rectangle

int cxIcon = GetSystemMetrics(SM_CXICON);

int cyIcon = GetSystemMetrics(SM_CYICON);

CRect rect;

GetClientRect(&rect);

int x = (rect.Width() - cxIcon + 1) / 2;

int y = (rect.Height() - cyIcon + 1) / 2;

// Draw the icon

dc.DrawIcon(x, y, m_hIcon);}

else

{CDialog::OnPaint();}}

// The system calls this to obtain the cursor to display while the user drags

// the minimized window.

HCURSOR CPassGenDlg::OnQueryDragIcon()

{return (HCURSOR) m_hIcon;}

void CPassGenDlg::OnGen()

{Password ps (8);

ps.GenAlfavit();

do

{ps.GenPass();

if (!ps.TestChar())

continue;

else

if (ps.TestDictionary())

break;

else

continue;}

while (TRUE);

SetDlgItemText(IDC_EDIT1,ps.GetPassword());}

Реферат

 

Пояснительная записка содержит 32 с., 2 рис., 4 источника, 4 прил.

MICROSOFT VISUAL С++, ПРОГРАММА, ПАРОЛЬНАЯ СИСТЕМА, КОЛИЧЕСТВЕННАЯ ОЦЕНКА СТОЙКОСТИ ПАРОЛЯ.

Объектом исследования является парольные системы.

Целью работы является разработка программы, генерирующей пароли пользователей с учётом количественной оценки стойкости пароля.

В процессе работы была произведена количественная оценка стойкости паролей пользователей и в соответствии с полученной оценкой была разработана программа, генерирующая пароли пользователей.

В результате работы была разработана программа, генерирующаяпароли пользователей (её текст приведён в приложении).


Содержание

 

Реферат

Задание

Введение

1. Количественная оценка стойкости пароля

2. Интерфейс

2.1 Понятие интерфейса и его назначение

2.2. Выбор интерфейса

3. Разработка алгоритма программы

4. Создание программы на базе разработанного алгоритма

5. Экспериментальная проверка количественных оценок стойкости пароля

6. Руководство пользователя

Заключение

Список использованных источников

ПРИЛОЖЕНИЕ А. Алгоритм программы

ПРИЛОЖЕНИЕ Б. Текст программы

ПРИЛОЖЕНИЕ В. Random.cpp

ПРИЛОЖЕНИЕ Г. PassGenDlg.cpp


Введение

 

Проблему компьютерной безопасности надуманной не назовешь. Практика показывает: чем более ценная информация доверяется компьютерам, тем больше находится желающих нарушить ее нормальное функционирование ради материальной выгоды или просто из праздного любопытства. Идет постоянная виртуальная война, в ходе которой организованности системных администраторов противостоит изобретательность компьютерных взломщиков.

Основным защитным рубежом против злонамеренных атак является система парольной защиты, которая имеется во всех современных программных продуктах. В соответствии с установившейся практикой, перед началом сеанса работы с операционной системой пользователь обязан зарегистрироваться, сообщив ей свое имя и пароль. Имя требуется для идентификации пользователя, а пароль служит подтверждением правильности произведенной идентификации. Информация, введенная пользователем в диалоговом режиме, сравнивается с той, что имеется в распоряжении операционной системы. Если проверка дает положительный результат, то пользователю становятся доступны все ресурсы операционной системы, связанные с его именем.

Несанкционированный доступ (Н.С.Д.) к информации - доступ к информации, нарушающий установленное правило разграничения доступа и осуществляемый с использованием нештатных средств, предоставляемых автоматизированной системой.

Выделяют 2 типа методов защиты от Н.С.Д.:

1) организационные меры - определяются документально.

2) Технические меры - группа методов, которые реализуются программными, аппаратными и программно - аппаратными средствами.

Существуют 3 группы методов аутентификации, которые основаны на обладании некоторого свойства или объекта

1) обладание определённым объектом;

2) основано на знании информации известной пользователю и проверяющей стороне;

3) основано на том, что у каждого пользователя есть уникальные биометрические характеристики.

Общие подходы к построению парольных систем.

Способы:

1. с использованием хранимой копии пароля;

2. некоторое проверочное значение;

3. парольная система без непосредственной передачи информации, о пароле проверяющей стороне;

4. использование пароля для получения криптографического ключа.

Идентификатор пользователя - некоторая уникальная информация, позволяющая различать индивидуальных пользователей парольной системы. Часто идентификатор пользователя называют именем пользователя. Пароль - некоторая секретная информация, которая известна только пользователю и парольной системе, которая предъявляется для прохождения процедуры идентификации.

Учётная запись пользователя - совокупность его идентификатора и пароля. База данных пользователей парольной системы содержит учётные записи пользователей парольной системы. Под парольной системой понимается программно-аппаратный комплекс, реализующий идентификацию и аутен-тификацию пользователей автоматизированной системы на основе одноразовых и многоразовых паролей.

Угрозы для парольной системы.

1. разглашение параметров учётной записи

а) подбор пароля;

б) визуальное наблюдение;

в) перехват пароля в сети.

2. вмешательство в функционирование парольной системы

а) использование программных закладок;

б) выведение из строя парольной системы;

в) использование ошибок и недоработок в парольной системе.

Выбор паролей

Требования к выбору паролей:

 

требования к выбору пароля достигнутый результат
ограничение минимальной длины 1 усложняется подбор методом прямого перебора 2 усложняется подсматривание
Использование различных групп символов усложняется подбор методом прямого перебора
проверка и отбраковка по словарю затруднение подбора пароля по словарю
установление срока действия пароля усложняется подбор методом прямого перебора и подстановки старого
ведение журнала историй пароля повышается эффективность предыдущего
ограничение количества попыток ввода препятствует подбору пароля
поддержка режима принудительной смены пароля увеличение эффекта выполнения требования касающегося смены пароля
принцип смена пароля после 1-ой регистрации защита от злоумышленных действий администратора
запрет на выбор пароля самим пользователем защита от выбора пользователем лёгкого пароля
Задержка при вводе неправильного пароля затрудняется подбор пароля когда он вводится с клавиатуры непосредственно за компьютером

 



Поделиться с друзьями:

Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...

Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...

История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...

История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.187 с.