Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.05.07;
Скачать: [xml.tar.bz2];

Вниз

Генерация ключей для шифрования   Найти похожие ветки 

 
Std ©   (2006-04-13 17:54) [0]

Добрый день.
создал я дллку для шифрования\дешифрования файлов, из которой вызывается две функции: Encrypt(in,out:TFileStream,key:string); Decrypt(in,out:TFileStream,key:string); Все прекрасно шифроуе и дешифрует. но прога моя зашифрованый файл передает по сети. и необходимо разработать какойто генератор ключей(математически обоснованый) чтобы по сети передавался только зашифрованый файл а у пользователя принимающего файл генерился точно такой же ключ(для расшифровки) как и у того кто шифровал.
Подскажите ктото пж алгоритм. а то весь диплом застрял на этом... осталось зделать только генерацию ключей а придумать как хитро так генерировать их немогу


 
oldman ©   (2006-04-13 17:56) [1]

Пользователю поставить свою dll религия запрещает?


 
oldman ©   (2006-04-13 18:04) [2]

Хотя бы только с Decrypt?


 
McSimm ©   (2006-04-13 18:05) [3]

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

У пользователя этот ключ, например, должен быть, храниться. Так хоть какая-то защищенность.

Хороший подход, это когда пользователь генерирует пару, отправляет ключ для шифрования серверу, получает шифровку, декодирует с помощью второй части ключа.


 
Eraser ©   (2006-04-13 18:05) [4]


> Std ©   (13.04.06 17:54)

1. Почитай какую-нибудь книжку по криптографии вообще и, в частности, раздел по безопасному обмену ключами с пом. алгоритмов RSA и Diffie-Hellman.
2. НЕ используй самописные библиотеки, а используй уже готовые и проверенные... лучше MS CryptoAPI, т.к. чтобы стать только начинающим криптографом надо 5 лет в вузе на этой специальности учиться...


 
McSimm ©   (2006-04-13 18:06) [5]


> oldman ©   (13.04.06 18:04) [2]

вопрос внимательнее прочитайте :)


 
McSimm ©   (2006-04-13 18:08) [6]


> НЕ используй самописные библиотеки, а используй уже готовые
> и проверенные...


Хорошее обоснование в дипломной работе главное написать, почему вместо собственной разработки было решено использовать проверенный надежный готовый механизм :)


 
oldman ©   (2006-04-13 18:09) [7]


> McSimm ©   (13.04.06 18:06) [5]


То есть "key:string" типа по сети не передается?
Тада читаем [3]


 
Eraser ©   (2006-04-13 18:09) [8]


> McSimm ©   (13.04.06 18:08) [6]

ну в данном случае думаю дипломной работой и не "пахнет" :)


 
Vendict ©   (2006-04-13 22:36) [9]

Как одно из возможных решений - начальное заполнение какого-либо известного только обоим датчика случайных чисел. Всмысле работающего по известному только двоим алгоритму.
Как пример - в паскале переменная RandSeed - при одинаковых её значения Random будет давать одинаковую последовательность чисел.


 
Eraser ©   (2006-04-13 23:42) [10]


> Vendict ©   (13.04.06 22:36) [9]

это их раздела "как не надо делать" :)


 
McSimm ©   (2006-04-14 00:15) [11]

Мда. Любопытные идеи, но иногда надо думать перед советовать

Вместо только им обоим известного датчика можно иметь только им обоим известный ключ или даже алгоритм шифрования.

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


 
McSimm ©   (2006-04-14 00:27) [12]

Хотя, конечно, все от задачи зависит.

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

Практически это неприемлимый подход, конечно. Лучше посоветоваться с руководителем проекта.


 
Котик Б   (2006-04-14 09:14) [13]

Поиск как всегда рулит :)

http://www.delphikingdom.com/asp/viewitem.asp?catalogid=562



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2006.05.07;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.009 c
15-1145028356
Kart S.
2006-04-14 19:25
2006.05.07
TEditWindow (Кто помнит Turbo Vision?)


4-1139814010
Asail
2006-02-13 10:00
2006.05.07
Как получить caption окна чужой программы?


15-1145001120
balepa
2006-04-14 11:52
2006.05.07
Как обратиться к переменной %SYSTEMROOT% ?


1-1143872827
Sam Stone
2006-04-01 10:27
2006.05.07
Поиск пути


8-1134077643
VasRoG
2005-12-09 00:34
2006.05.07
Прорисовка гор





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский