quote:
Originally posted by Patchou
And as for brute forcing 30 million passwords a second: that's absolutely impossible to do with the crypto api, the access is just way too slow. Brute forcing the average 400,000 billion possibilities of an average 8 characters passwords would take months, if not years. Taking Winzip as an example is just using the one software that's using one of the poorest protections ever .
Well ... all of this could be true if their wasn't a design error in the encryption of the .ple files. The way the encryption has been implemented makes the .ple files vulnerable to pre-computation attacks (e.g. using Rainbow tables).
As a proof of concept I modified the code from project Rainbow crack (http://www.antsight.com/zsl/rainbowcrack/) to generate keys for .ple files. Using five 100MB rainbowtables (generated in one afternoon) I'm able to recover the password for all .ple files protected with a numeric password (1-8 digits) and this within 2 minutes !
I also noticed that the password scrambling routine (described earlier) creates password collisions. For instance a .ple protected with password 57341224 can be read using password 48250315.
I hope you have corrected these errors in your new version !