Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Lazarus, Free Pascal, CodeTyphon
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.12.2014, 15:32   #1
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,442
Вопрос FPC/Lazarus. Очень шустренький XML-парсер и криптография с прогрессбаром(AES,DES,3DES,Rijndael )

Доброго времени суток!

Для Free Pascal Compiler/Lazarus интересует очень шустрый XML-парсер, умеющий быстро работать с большим объёмом данных(от 500 Мб).

Так же интересуют модули/компоненты по криптографии след. алгоритмов AES, DES, 3DES, Rijndael с уже прописанным индикатором выполнения криптографических операций(progressbar это).


Встречал кто такие?
Человек_Борща вне форума Ответить с цитированием
Старый 29.12.2014, 16:54   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Я XML парсер писал свой с нуля. Он хоть и шустрый, но вот функционала в нем как кот наплакал. Опять таки потому что не нашел нормальных парсеров (кстати).
Насчет криптографии - юзаю стандартное криптоАПИ от Микрососа.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 29.12.2014, 18:17   #3
WinCoder
Заблокирован
 
Регистрация: 24.11.2014
Сообщений: 721
По умолчанию

Человек_Борща Аналогично советую писать своё. В сторонних парсерах могут быть алгоритмы, которые Вам не нужны, но на общую скорость работы они скажутся.
WinCoder вне форума Ответить с цитированием
Старый 29.12.2014, 21:50   #4
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,442
По умолчанию

Парсер уже нашел... даже несколько. OXml и NativeXML. Первый кросплатформенный и довольно шустрый, второй более-менее шустро и быстро работал в Delphi многие годы. Попробую пересесть на OXml уж больно бенчмарки радуют в сравнении с NativeXML.

Криптоапи не подходит он просто не кросс-платформенный. Продолжу поиски в этом плане...

Писать своё конечно хорошо, однако удобнее взять готовое. Не зря же человек старается? Мне важно чтобы оно файлы до 800 мб хотя бы за 1-3 сек. съедало...
P.S. На заметку... https://github.com/Fr0sT-Brutal/awesome-delphi Откопал в гугле.
Человек_Борща вне форума Ответить с цитированием
Старый 29.12.2014, 22:23   #5
WinCoder
Заблокирован
 
Регистрация: 24.11.2014
Сообщений: 721
По умолчанию

Цитата:
Мне важно чтобы оно файлы до 800 мб хотя бы за 1-3 сек
Плюс n секунд на его загрузку с HDD/интернета.
WinCoder вне форума Ответить с цитированием
Старый 30.12.2014, 00:16   #6
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,442
По умолчанию

Цитата:
Плюс n секунд на его загрузку с HDD/интернета.
Интернет это вряд ли.

Вот HDD да, это проблема. SSD больше радует.
Человек_Борща вне форума Ответить с цитированием
Старый 30.12.2014, 08:35   #7
WinCoder
Заблокирован
 
Регистрация: 24.11.2014
Сообщений: 721
По умолчанию

Цитата:
SSD больше радует
Raid SSD ещё больше радует. Интересно, дождёмся ли адекватных цен на SSD сравнимых с HDD.
WinCoder вне форума Ответить с цитированием
Старый 30.12.2014, 09:29   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
Криптоапи не подходит он просто не кросс-платформенный.
Оп! А это для меня новость О_о...
Как же интересно тогда наши на Suse 10 его заюзали?
Надо поспрашать...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 30.12.2014, 10:39   #9
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,442
По умолчанию

Цитата:
Оп! А это для меня новость О_о...
Как же интересно тогда наши на Suse 10 его заюзали?
Надо поспрашать...
У ядра linux есть своё CryptoAPI... Внезапно. Даже чуть-чуть описания.

Так-то апи винды не заработает на линуксах.

Пока успешно переписал Encode/Decode Stream у TDCP_cipher вроде работает...
Код:
function TDCP_cipher.EncryptStream(InStream, OutStream: TStream;
  Size: longword): longword;
var
  Buffer: array[0..255] of byte;
  i, Read,MaxSize: longword;
begin
  DoProgress(0,0);
  dcpFillChar(Buffer, SizeOf(Buffer), 0);
  Result := 0;
  MaxSize := (Size div Sizeof(Buffer));
  DoProgress(0,MaxSize-1);
  for i := 1 to MaxSize do
  begin
    Read := InStream.Read(Buffer, Sizeof(Buffer));
    Inc(Result, Read);
    Encrypt(Buffer, Buffer, Read);
    OutStream.Write(Buffer, Read);
    DoProgress(i,MaxSize-1);
  end;
  if (Size mod Sizeof(Buffer)) <> 0 then
  begin
    Read := InStream.Read(Buffer, Size mod Sizeof(Buffer));
    Inc(Result, Read);
    Encrypt(Buffer, Buffer, Read);
    OutStream.Write(Buffer, Read);
  end;
  DoProgress(0,0);
end;
Человек_Борща вне форума Ответить с цитированием
Старый 31.12.2014, 10:59   #10
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,442
По умолчанию

Всем спасибо.
NativeXML и OXml прекрасно работают на нужных мне платформах.
Вторую проблему решил, дописав DCPCrypt.
Человек_Борща вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

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

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Rijndael 128 bit (AES) шифровка в delphi egorea1999 Общие вопросы Delphi 16 20.12.2014 10:22
Очень срочно! Алгоритм шифрования DES... Regloger Помощь студентам 15 14.05.2013 17:04
Шифрование алгоритмом AES (также известный как Rijndael) darek13 Общие вопросы Delphi 16 02.07.2011 00:47
XML парсер squa JavaScript, Ajax 0 09.02.2011 09:14
парсер XML, не видит XML тэги supercelt PHP 3 02.11.2009 19:18