Add Secure compression component

Secure compression component

My chief asked me to find a Delphi compression component for our new project which can also give us a really strong encryption. The security is in great demand nowadays; I think you know why. So I gained additional requirements for this task and I got the following result. The dream-component must be able to compress multiple files, to protect archive with strong encryption and to span archive on multiple disks. Also we would like to see a native VCL without any ActiveX or DLL garbage.

My first idea was to use some ZIP library, but I suspect that it will not be enough secure. I heard that ZIP encryption is very weak, but now I have to check whether ZIP password protection is so bad. Sad to say, ZIP is really not secure system. I found a lot of ZIP password recovery programs that allow to get a password for any protected ZIP file within a few hours. So I realized that ZIP is not a solution for secure backup.

WinRar is known as really secure archive which also provides much better compression that ZIP do. So I think if I will find VCL which supports RAR format, it will be the best choice. But I was deeply disappointed. There is no developers library that is capable to create RAR archive as it is prohibited by the RAR license. Only decompression of RAR is available but it requires unrar.dll which was also undesirable for me. So I have to go on.

Iíve got it!
After several days of exploring most popular Delphi sites and downloading third-party compression components, I faced that none of the products I had tried support strong encryption. I was unpleasantly surprised by this fact but continued my search and I discovered rather interesting solution: FlexCompress from AidAim Software ( This file compression component claims to support 5 encryption algorithms including Rijndael with 256-bit key (the Advanced Encryption Standard), BlowFish and triple DES. I was intrigued and downloaded the product.

Trying FlexCompress
I installed the trial version of FlexCompress on my Delphi 7 to test it. Encryption and multi-spanning features worked well as I expected. The component compiled into exe file of my application and didn't require any dlls. I also noticed SFX, support for files larger than 4 Gb and streaming support. I didnít test these additional features thoroughly as I didnít need them in my current project. But I was pleased to see so rich features set. I found help manual and sample applications to be well done, but not as comprehensive as I like. Also I think error handling could be described better there. However the documentation and demos were very helpful for me and I needed them pretty seldom, as it should be in a well-designed product.

Checking tech support
I was glad to see that FlexCompress is not a freeware. I dealt a lot with different third-party tools for Delphi and my experience shows that freeware tools usually have very poor support and documentation. I donít like to be left alone with the bug in the third-party component widely used in my project or to spend hours finding out how to use it for my tasks. Thatís why I always write to tech guys of any company before I buy something there. I sent my question to AidAim's support and I appreciated their fantastic promptness. I got detailed answer within 2 hours and ordered it immediately.

Now after month of real use I still consider FlexCompress to be a pretty good archiving solution. Although FlexCompress is now far beyond the competitors in its category, I hope to see more high-quality products available on the compression components market in the future. Hard competition produces the best quality and then we all will win.

Ronald Douson,
Senior developer,
Genius Solutions, Inc


Related Discussions
    One of the quirks of Delphi is that classes in the same unit can access protected and private methods and variables. Borland does this a lot in...
  • SENDING ICQ MSGS FROM DELPHI (2001-01-03 16:54:03)
    I tried the ICQ Api, but never used it. I've added a simple ICQPager component to delphipages (Winsock/TCPIP).. it might help... Q
  • HELP WITH EXCEPTIONS ..... I'M GETTING CRAZY! (2001-01-06 21:59:49)
    How to make it run as if you were running it outside of Delphi. Tools | Debugger Options --> Language Exceptions. Their is a checkbox titled...
  • REPEATING FUNCTIONS (2001-01-04 11:46:34)
    The OnIdle event is not hardware dependent. It is called when the program has idle time. The OnIdle event is in TApplication and is a warpper...
    I'm not pretty sure, what your intention is. One possible approach would be to use a edit-field, which cannot be "spyed out" by the usual password...
  • TELEPHONE BASED APPLICATION (2001-01-08 12:29:39)
    I did something like this. I wrote a fully operative phone- based banking applciation in two days using VisualVoice and Dialogic cards. However,...
    Use : Begin if RepForm=Nil then RepForm:=TRepForm.Create(Application); End;
  • .BMP ISN'T A VALID PICTURE FILE FORMAT!? UHUM!? (2001-01-05 16:59:28)
    I think you have to Specify what line the text is in, like this. Image1.Picture.LoadFromFile(Memo1.Lines.Strings); If the text in the...
  • DELPHI WITH INTERNET.. (2001-01-05 21:35:50) This site is 100% Delphi built and 100% dynamic. All the content you see here is "database driven" and a...
  • SYSTEM.PAS (2001-01-06 06:20:58)
    Probably you are using NT based OS. In order to avoid it use Delphi installer program and select only registering while setup asking setup...
Latest News
Submit News Form Past News
Latest Forum Entries