Author Topic: Non-gaming related project  (Read 8140 times)

Offline iq_132

  • Administrator
  • *****
  • Posts: 3856
  • Karma: +365/-0
  • destroy.
    • NeoSource
Non-gaming related project
« on: July 09, 2007, 04:17:38 PM »
Here's a little file encryption program I've been working on. :)

I've mostly been using file compression programs to check the results for
easily recognizable patterns.  7zip, winrar (rar/zip), have been unable
to find any sort of usable patterns.  This doesn't mean that the
encryption is unbreakable, but for every day use, it is pretty evil. :)

Files up to 4GB are supported
Passwords of any length are supported
Password files (which should increase security), of any size, are supported
Passwords are case sensitive
The same routine is used for encryption/decryption
The algorithm is fairly simple, but extremely effective
The amount of ram used is easily set in the source (BLOCK_SIZE) but must be a power of 16
The source is very short and simple



Offline iq_132

  • Administrator
  • *****
  • Posts: 3856
  • Karma: +365/-0
  • destroy.
    • NeoSource
Re: Non-gaming related project
« Reply #1 on: December 13, 2007, 05:52:31 PM »
Here's an update to this...

More-or-less the same, just more evil. ^^



Offline CaptainCPS

  • Administrator
  • *****
  • Posts: 1520
  • Karma: +126/-0
  • FB Alpha Team
    • CaptainCPS's Home
Re: Non-gaming related project
« Reply #2 on: December 13, 2007, 06:51:59 PM »
Here's an update to this...

More-or-less the same, just more evil. ^^



Interesting   :cool:, ...do you think a Cracker Team could reverse the encryption easily or you think it could take them some time to figure out the way to hack them?, just curious ^^u

SeeYaa!
 :biggrin:

Offline iq_132

  • Administrator
  • *****
  • Posts: 3856
  • Karma: +365/-0
  • destroy.
    • NeoSource
Re: Non-gaming related project
« Reply #3 on: December 13, 2007, 09:36:32 PM »
Interesting   :cool:, ...do you think a Cracker Team could reverse the encryption easily or you think it could take them some time to figure out the way to hack them?, just curious ^^u

SeeYaa!
 :biggrin:

I honestly don't know.  But using a large key file greatly increases the security of any encryption program.
I simply went on how well the files compress (any patterns will compress using 7z/RAR/Zip), how different the files are when you change a single byte of a short key, etc.  Just so you know, I tried a dozen different compression programs and none of them managed to find any sort of pattern. ^^


Offline iq_132

  • Administrator
  • *****
  • Posts: 3856
  • Karma: +365/-0
  • destroy.
    • NeoSource
Re: Non-gaming related project
« Reply #4 on: March 11, 2008, 05:55:35 AM »
Quite a lot's changed:
A third (32-bit) xor based on exponents was added
Xor2 is quite a bit more devious now that the &'s are generated and not static
The tables are now generated every 64kb instead of 1mb (less ram, and tighter security)
An initial table generation helps resolve some repeated patterns in the first use if a similar key is used
All of the xor routines have tighter integration, they all rely more heavily on each other (there are pros and cons to this...)
All important variables should be cleared now (nothing that is a security risk should stay)


Offline iq_132

  • Administrator
  • *****
  • Posts: 3856
  • Karma: +365/-0
  • destroy.
    • NeoSource
Re: Non-gaming related project
« Reply #5 on: March 11, 2008, 07:51:30 PM »
Fixed a crash if not using a key file.


Offline iq_132

  • Administrator
  • *****
  • Posts: 3856
  • Karma: +365/-0
  • destroy.
    • NeoSource
Re: Non-gaming related project
« Reply #6 on: March 20, 2008, 12:54:14 AM »
Fixed another crash (if the file size >= 64kb)
Adjusted the use of the key, it should make full use of a key 8bytes to 64kb in size
It is now MUCH slower (I've removed a few speedups that reduced security)
The key size MUST be greater than 7 bytes, and less than or equal to 64kb


Offline iq_132

  • Administrator
  • *****
  • Posts: 3856
  • Karma: +365/-0
  • destroy.
    • NeoSource
Re: Non-gaming related project
« Reply #7 on: April 02, 2008, 11:11:57 PM »
Fixed a small mistake -- greatly increasing security. :)


Offline iq_132

  • Administrator
  • *****
  • Posts: 3856
  • Karma: +365/-0
  • destroy.
    • NeoSource
Re: Non-gaming related project
« Reply #8 on: June 25, 2008, 03:58:31 PM »
Added another light XOR to the xor2 - use of  this may be expanded later (could be nasty)
Adjusted the key usage - for a medium sized file it should use all of a 64kb key
Adjusted the long XOR - all bits from Xor1, Xor2, and Xor3 are possibly used
bit 31 of xor2 is now used rather than being dumped immediately
Now clearing more variables in subroutines (increase in security)
Quite a big speedup - now compiled using the -O3 command of GCC


Offline iq_132

  • Administrator
  • *****
  • Posts: 3856
  • Karma: +365/-0
  • destroy.
    • NeoSource
Re: Non-gaming related project
« Reply #9 on: November 06, 2008, 01:15:36 AM »

Too much changed to list, really.


Offline iq_132

  • Administrator
  • *****
  • Posts: 3856
  • Karma: +365/-0
  • destroy.
    • NeoSource
Re: Non-gaming related project
« Reply #10 on: August 13, 2009, 01:21:23 PM »
Been screwing around with this a bit. It's been completely re-written.