Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 19.08.2011, 19:18
3anop 3anop вне форума
Прохожий
 
Регистрация: 19.08.2011
Сообщения: 2
Репутация: 10
Вопрос Передача файлов в сети

Хочу написать минимальный клиент/сервер для передачи файлов в обеих направлениях. Программа будет запущена на двух десктопах и через диалог выбрав файл и нажав кнопку на одном на другом сразу же должен открыться диалог сохранения файла. И наоборот. Файлы как мелкие тхт так и крупные архивы. Канал передачи должен быть защищенным.

Прошу знающих просверить в некоторых моментах.

Для выше описанной задачи какая мода предпочтительна synchronous или asynchronous?

Не имея опыта я не могу найти решение которое было бы оптимальным как со стороны производительности/скорости так и со стороны защищенности да и еще и несложно в реализации (только начал изучать Delphi, стоит D7).
Я вижу два варианта:
1. криптовать файл локально затем передав по обычному каналу розкриптовывать удаленно
2. использовать защищенный канал передачи
Если использовать второй вариант то на каком из вариантов остовиться SSLSocket, HTTPS, FTPS или SSH?

Тхт файлы рыхлые, имеет ли смысл их cжимать перед отправкой и соответственно разжимать удаленно?
Ответить с цитированием
  #2  
Старый 19.08.2011, 19:31
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

По сути можно перед самой отправкой поток даных зашифроватать и сжатить. Для сжатия, думаю, пойдет и ZLib (ну или GZip),а для шифрования все, что угодно
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #3  
Старый 20.08.2011, 19:20
3anop 3anop вне форума
Прохожий
 
Регистрация: 19.08.2011
Сообщения: 2
Репутация: 10
По умолчанию

Цитата:
Сообщение от M.A.D.M.A.N.
По сути можно перед самой отправкой поток даных зашифроватать и сжатить. Для сжатия, думаю, пойдет и ZLib (ну или GZip),а для шифрования все, что угодно

Если взять момент во времени когда выбрав файл нажимаем кнопку "Отправить", назовем его "А" и момент когда файл окажется на другом конце, назовем этот момент "Б" а за условие то что клиент к серверу не подключен
и те же два варианта:
1. файл сжать, зашифровать и передать по обычному каналу и там расшифровать и разжать
2. файл передать по SSH (тот же оверхед шифрования + время аутентификации)

то в каком из случев время между А и Б меньше будет?

Извините что переспрашиваю просто вопрос так и стоит.

ZLib и GZip я так понимаю не могут сжимать с паролем или я ошибаюсь?
Может какой-то из быстрых архиваторов может жать в потоке с паролем?

В данной задаче в первую очередь интересует скорость а шифрование как вынужденная необходимость. И шифрование может быть слабым. RC4 скорее всего как самый быстрый пойдет.
Ответить с цитированием
  #4  
Старый 20.08.2011, 19:55
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Ну вообще, архиватор жмет, после чего шифрует.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 07:38.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025