Thread: Version 1.11 released
Brought to you by:
thesun
From: Shachar S. <sh...@sh...> - 2008-06-24 19:35:57
|
Hi all, Version 1.11 of your favorite rsync friendly encryption program (it is, isn't it?) has just been released. Many many many new stuff, addressing almost all of the open issues recently raised. Compilation should now just work for cygwin, and as far as I can tell, for Mac OS X (not sure about that, though). I can't tell if the run time problem has been resolved or not, as it does not happen on my systems. Error messages have been greatly improved. If a file cannot be opened, rsyncrypto will report which file that was. Also, in case of an error, only the errored file will be aborted, and rsyncrypto will continue its operation. It will print an additional error report at the end of the entire encryption process. Also, I have finally fixed the oldest bug of them all. The one that tripped Frederico. If an attempt is made to decrypt a file with no valid symmetric key, it will be reported as an error and processing will continue, rather than issue a segmentation fault. Please bear in mind that I am not 100% sure that my code for detecting whether the private key is available is correct. Technical details further on, but in for those not interested in the details, please check this with your system, and make sure cold decryption works for you. As usual, share and enjoy. Shachar Technical stuff: RSA works by taking a modulo based power. So if the message is "m", the encrypted message C will be M^e mod n. e is a fairly standard number (typically, either 3 or 2^16+1 = 65537). "n" is the "public key", and is devised by generating two prime numbers, called "p" and "q", where n=p*q. "p" and "q" are the private key. What some people do not know is that you don't actually need p and q in order to perform a decryption. p and q are not, theoretically, used directly. Instead, a number, d, is derived from p and q. The decryption process can be described as M = C^d mod n. This means you need d and n in order to decrypt, but you don't need p and q. Typically, p and q are being stored, for no other reason than to save on processing. In practice, openssl will typically calculate M1 = C^d mod p and M2 = C^D mod q, and then combine M1 and M2 into M using the Chinese remainder theorem. For that reason, an OpenSSL private key will, typically, have p and q, and these are the numbers that I check exist or not to find out whether I have the private key. Like I said before, the private key can be used even without p and q. If that is the case, rsyncrypto may incorrectly deduce that the private key is not present, and fail the decryption despite all data being available. This is what I want you all to test for me - that you can perform cold (i.e. - without the symmetric keys) decryption with your private key. Thanks |
From: Julian <jul...@gm...> - 2008-06-25 07:38:46
|
Thanks Shachar. 2008/6/24 Shachar Shemesh <sh...@sh...>: > Hi all, > > Version 1.11 of your favorite rsync friendly encryption program (it is, > isn't it?) has just been released. Many many many new stuff, addressing > almost all of the open issues recently raised. > > Compilation should now just work for cygwin, and as far as I can tell, > for Mac OS X (not sure about that, though). I can't tell if the run time > problem has been resolved or not, as it does not happen on my systems. > > Error messages have been greatly improved. If a file cannot be opened, > rsyncrypto will report which file that was. Also, in case of an error, > only the errored file will be aborted, and rsyncrypto will continue its > operation. It will print an additional error report at the end of the > entire encryption process. > > Also, I have finally fixed the oldest bug of them all. The one that > tripped Frederico. If an attempt is made to decrypt a file with no valid > symmetric key, it will be reported as an error and processing will > continue, rather than issue a segmentation fault. > > Please bear in mind that I am not 100% sure that my code for detecting > whether the private key is available is correct. Technical details > further on, but in for those not interested in the details, please check > this with your system, and make sure cold decryption works for you. > > As usual, share and enjoy. > Shachar > > Technical stuff: > RSA works by taking a modulo based power. So if the message is "m", the > encrypted message C will be M^e mod n. e is a fairly standard number > (typically, either 3 or 2^16+1 = 65537). "n" is the "public key", and is > devised by generating two prime numbers, called "p" and "q", where > n=p*q. "p" and "q" are the private key. > > What some people do not know is that you don't actually need p and q in > order to perform a decryption. p and q are not, theoretically, used > directly. Instead, a number, d, is derived from p and q. The decryption > process can be described as M = C^d mod n. This means you need d and n > in order to decrypt, but you don't need p and q. > > Typically, p and q are being stored, for no other reason than to save on > processing. In practice, openssl will typically calculate M1 = C^d mod p > and M2 = C^D mod q, and then combine M1 and M2 into M using the Chinese > remainder theorem. For that reason, an OpenSSL private key will, > typically, have p and q, and these are the numbers that I check exist or > not to find out whether I have the private key. > > Like I said before, the private key can be used even without p and q. If > that is the case, rsyncrypto may incorrectly deduce that the private key > is not present, and fail the decryption despite all data being > available. This is what I want you all to test for me - that you can > perform cold (i.e. - without the symmetric keys) decryption with your > private key. > > Thanks > > > ------------------------------------------------------------------------- > Check out the new SourceForge.net Marketplace. > It's the best place to buy or sell services for > just about anything Open Source. > http://sourceforge.net/services/buy/index.php > _______________________________________________ > Rsyncrypto-devel mailing list > Rsy...@li... > https://lists.sourceforge.net/lists/listinfo/rsyncrypto-devel > |
From: Julian <jul...@gm...> - 2008-06-26 17:24:08
|
Hi Shachar.. hope I'm not disturbing your vacation... if so, you may ignore this until you return, as it is not really urgent! Anyway I noticed that on Windows: if I copy the new rsyncrypto.exe file (V1.11) into a directory with all my scripts etc..(without installing the msi) I get a "The system cannot execute the specified program" error at the command line. A quick google search shows that this is generally a DLL problem.. I noticed the argtable2.dll is newer than previous versions (and smaller in size), but copying this over does not fix the problem. What does fix the problem is installing the msi into "Program Files\Rsyncrypto"... now the "other" exe now begins to work from the original place... Uninstall the msi and the problem returns. For information purposes, can you inform me of the exact dependencies of the "rsyncrypto.exe" program to run? Apologies if this has been implied from the previous posts about upgrading to the new Visual Studio etc... Thanks Julian 2008/6/25 Julian <jul...@gm...>: > Thanks Shachar. > > 2008/6/24 Shachar Shemesh <sh...@sh...>: > > Hi all, >> >> Version 1.11 of your favorite rsync friendly encryption program (it is, >> isn't it?) has just been released. Many many many new stuff, addressing >> almost all of the open issues recently raised. >> >> Compilation should now just work for cygwin, and as far as I can tell, >> for Mac OS X (not sure about that, though). I can't tell if the run time >> problem has been resolved or not, as it does not happen on my systems. >> >> Error messages have been greatly improved. If a file cannot be opened, >> rsyncrypto will report which file that was. Also, in case of an error, >> only the errored file will be aborted, and rsyncrypto will continue its >> operation. It will print an additional error report at the end of the >> entire encryption process. >> >> Also, I have finally fixed the oldest bug of them all. The one that >> tripped Frederico. If an attempt is made to decrypt a file with no valid >> symmetric key, it will be reported as an error and processing will >> continue, rather than issue a segmentation fault. >> >> Please bear in mind that I am not 100% sure that my code for detecting >> whether the private key is available is correct. Technical details >> further on, but in for those not interested in the details, please check >> this with your system, and make sure cold decryption works for you. >> >> As usual, share and enjoy. >> Shachar >> >> Technical stuff: >> RSA works by taking a modulo based power. So if the message is "m", the >> encrypted message C will be M^e mod n. e is a fairly standard number >> (typically, either 3 or 2^16+1 = 65537). "n" is the "public key", and is >> devised by generating two prime numbers, called "p" and "q", where >> n=p*q. "p" and "q" are the private key. >> >> What some people do not know is that you don't actually need p and q in >> order to perform a decryption. p and q are not, theoretically, used >> directly. Instead, a number, d, is derived from p and q. The decryption >> process can be described as M = C^d mod n. This means you need d and n >> in order to decrypt, but you don't need p and q. >> >> Typically, p and q are being stored, for no other reason than to save on >> processing. In practice, openssl will typically calculate M1 = C^d mod p >> and M2 = C^D mod q, and then combine M1 and M2 into M using the Chinese >> remainder theorem. For that reason, an OpenSSL private key will, >> typically, have p and q, and these are the numbers that I check exist or >> not to find out whether I have the private key. >> >> Like I said before, the private key can be used even without p and q. If >> that is the case, rsyncrypto may incorrectly deduce that the private key >> is not present, and fail the decryption despite all data being >> available. This is what I want you all to test for me - that you can >> perform cold (i.e. - without the symmetric keys) decryption with your >> private key. >> >> Thanks >> >> >> ------------------------------------------------------------------------- >> Check out the new SourceForge.net Marketplace. >> It's the best place to buy or sell services for >> just about anything Open Source. >> http://sourceforge.net/services/buy/index.php >> _______________________________________________ >> Rsyncrypto-devel mailing list >> Rsy...@li... >> https://lists.sourceforge.net/lists/listinfo/rsyncrypto-devel >> > > |
From: Shachar S. <sh...@sh...> - 2008-06-26 20:10:27
|
Julian wrote: > Hi Shachar.. hope I'm not disturbing your vacation... if so, you may > ignore this until you return, as it is not really urgent! Allow me to reassure you that, urgent or not, I would never interrupt my vacation for such a thing. That's why it's called "vacation". > > Anyway I noticed that on Windows: > if I copy the new rsyncrypto.exe file (V1.11) into a directory with > all my scripts etc..(without installing the msi) I get a "The system > cannot execute the specified program" error at the command line. > > A quick google search shows that this is generally a DLL problem.. I > noticed the argtable2.dll is newer than previous versions (and smaller > in size), but copying this over does not fix the problem. > > What does fix the problem is installing the msi into "Program > Files\Rsyncrypto"... > now the "other" exe now begins to work from the original place... > Uninstall the msi and the problem returns. > > For information purposes, can you inform me of the exact dependencies > of the "rsyncrypto.exe" program to run? > Apologies if this has been implied from the previous posts about > upgrading to the new Visual Studio etc... One of the great tragedies of the way Visual Studio is increasingly behaving is that it doesn't matter whether you wrote the program or not. You still don't understand its requirements. Visual Studio calculates them automatically for you and leaves you out of the picture. I don't know why it didn't work for you. Maybe some internal MSI dependencies, maybe something else. Whatever it is, I have given up fighting it. Shachar |
From: Julian <jul...@gm...> - 2008-06-27 16:51:22
|
Yep, the problem seems to be with something called WinSxS (side by side) that's handled by the msi. (it looks horrible). Any chance of making available the compiled exe before it is bundled into the msi? It should work like that I guess.. I think it would make things much simpler with my setup. Thanks Julian 2008/6/26 Shachar Shemesh <sh...@sh...>: > Julian wrote: > >> Hi Shachar.. hope I'm not disturbing your vacation... if so, you may >> ignore this until you return, as it is not really urgent! >> > Allow me to reassure you that, urgent or not, I would never interrupt my > vacation for such a thing. That's why it's called "vacation". > >> >> Anyway I noticed that on Windows: >> if I copy the new rsyncrypto.exe file (V1.11) into a directory with all my >> scripts etc..(without installing the msi) I get a "The system cannot execute >> the specified program" error at the command line. >> >> A quick google search shows that this is generally a DLL problem.. I >> noticed the argtable2.dll is newer than previous versions (and smaller in >> size), but copying this over does not fix the problem. >> >> What does fix the problem is installing the msi into "Program >> Files\Rsyncrypto"... >> now the "other" exe now begins to work from the original place... >> Uninstall the msi and the problem returns. >> >> For information purposes, can you inform me of the exact dependencies of >> the "rsyncrypto.exe" program to run? >> Apologies if this has been implied from the previous posts about upgrading >> to the new Visual Studio etc... >> > One of the great tragedies of the way Visual Studio is increasingly > behaving is that it doesn't matter whether you wrote the program or not. You > still don't understand its requirements. Visual Studio calculates them > automatically for you and leaves you out of the picture. > > I don't know why it didn't work for you. Maybe some internal MSI > dependencies, maybe something else. Whatever it is, I have given up fighting > it. > > Shachar > |
From: Julian <jul...@gm...> - 2008-07-01 08:23:05
|
For the record: Version 1.11 .msi installer works fine and I tested the "do not abort on error" feature with a couple of test cases (open files, illegal filenames), and it works as expected. However: for anyone who (for some strange reason like my own) wants to get out of "DLL hell", I have what is essentially version 1.11 compiling with VS8. 2008/6/27 Julian <jul...@gm...>: > Yep, the problem seems to be with something called WinSxS (side by side) > that's handled by the msi. (it looks horrible). > > Any chance of making available the compiled exe before it is bundled into > the msi? It should work like that I guess.. I think it would make things > much simpler with my setup. > > Thanks > Julian > > 2008/6/26 Shachar Shemesh <sh...@sh...>: > > Julian wrote: >> >>> Hi Shachar.. hope I'm not disturbing your vacation... if so, you may >>> ignore this until you return, as it is not really urgent! >>> >> Allow me to reassure you that, urgent or not, I would never interrupt my >> vacation for such a thing. That's why it's called "vacation". >> >>> >>> Anyway I noticed that on Windows: >>> if I copy the new rsyncrypto.exe file (V1.11) into a directory with all >>> my scripts etc..(without installing the msi) I get a "The system cannot >>> execute the specified program" error at the command line. >>> >>> A quick google search shows that this is generally a DLL problem.. I >>> noticed the argtable2.dll is newer than previous versions (and smaller in >>> size), but copying this over does not fix the problem. >>> >>> What does fix the problem is installing the msi into "Program >>> Files\Rsyncrypto"... >>> now the "other" exe now begins to work from the original place... >>> Uninstall the msi and the problem returns. >>> >>> For information purposes, can you inform me of the exact dependencies of >>> the "rsyncrypto.exe" program to run? >>> Apologies if this has been implied from the previous posts about >>> upgrading to the new Visual Studio etc... >>> >> One of the great tragedies of the way Visual Studio is increasingly >> behaving is that it doesn't matter whether you wrote the program or not. You >> still don't understand its requirements. Visual Studio calculates them >> automatically for you and leaves you out of the picture. >> >> I don't know why it didn't work for you. Maybe some internal MSI >> dependencies, maybe something else. Whatever it is, I have given up fighting >> it. >> >> Shachar >> > > |