
Add IDEA support
Reported by Alex (via GPGTools) | January 28th, 2011 @ 11:01 AM | in 2.0.18 (closed)
Once we have some clarity regarding licensing have a look at Kristian Fiskerstrands description and patch to include IDEA into gnupg2.
In the mean time every one can provide feedback / patches to make this workflow possible:
- git clone --recursive git@github.com:GPGTools/MacGPG2.git
- run script that downloads the IDEA sources (or it expects them
to be somewhere) and applies patches
- make install (see #4)
Comments and changes to this ticket
-
Benjamin Donnachie January 29th, 2011 @ 02:28 PM
Upstream have no desire to support IDEA as it is an optional cipher under the OpenPGP standards.
The algorithm is patented within the EU until May 2011 and in the US until 2012 - see http://en.wikipedia.org/wiki/International_Data_Encryption_Algorith...
Additionally, we are prevented from distributing a copy of GnuPG2 that supports IDEA under the GPL:
http://lists.gnupg.org/pipermail/gnupg-users/2008-September/034526....
Therefore, we cannot legitimately add support for IDEA at this stage.
-
Benjamin Donnachie January 29th, 2011 @ 02:35 PM
- State changed from hold to invalid
-
Alex (via GPGTools) January 29th, 2011 @ 07:09 PM
- State changed from invalid to hold
Therefore, we cannot legitimately add support for IDEA at this stage.
But isn't this the whole idea of this issue?
- The milestone is set to "Undecided": so we'll not close it soon
(maybe May 2011).
- Step 2 in the above mentioned workflow is for people that a) have a valid license and/or b) need IDE support for one reason or another.
So in case #4 is solved and someone wants to provide some feedback on how to integrate IDEA support in a semi-automated fashion everyone is happy w/o violating any patent, license or copyright issues.
-
Benjamin Donnachie January 29th, 2011 @ 07:37 PM
- Milestone cleared.
- Importance changed from to High
Good point, and we should be able to avoid issues by pointing users to a download of idea.c, eg http://www.spywarewarrior.com/uiuc/gpg-idea/idea.c.gz, rather than host the actual file.
Last time I tried the patch on Kristian Fiskerstrand's website, it compiled cleanly but failed to actually add IDEA support.
I think Q2 is a fair milestone for this.
-
Benjamin Donnachie January 29th, 2011 @ 08:08 PM
Anyone able to send me an IDEA encrypted message so I can test?
-
Benjamin Donnachie January 29th, 2011 @ 11:33 PM
I put a bit more effort into this than I did last time I looked at
this patch, and have reached the stage where it is working:$ gpg2 --version gpg (GnuPG/MacGPG2) 2.0.17 [...[ Cipher: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH, CAMELLIA128, CAMELLIA192, CAMELLIA256 [...]
Seems to be working fine:
$ echo test | gpg2 --cipher-algo IDEA -aser "Benjamin Donnachie" | gpg2 You need a passphrase to unlock the secret key for user: "Benjamin Donnachie <benjamin@py-soft.co.uk>" 4096-bit RSA key, ID 74635136, created 2005-03-28 (main key ID 8FA3F8B8) gpg: forcing symmetric cipher IDEA (1) violates recipient preferences You need a passphrase to unlock the secret key for user: "Benjamin Donnachie <benjamin@py-soft.co.uk>" 4096-bit RSA key, ID F9B855FC, created 2005-03-29 (main key ID 8FA3F8B8) gpg: WARNING: cipher algorithm IDEA not found in recipient preferences gpg: encrypted with 4096-bit RSA key, ID F9B855FC, created 2005-03-29 "Benjamin Donnachie <benjamin@py-soft.co.uk>" test gpg: Signature made Sat 29 Jan 22:31:53 2011 GMT using RSA key ID 74635136 gpg: Good signature from "Benjamin Donnachie <benjamin@py-soft.co.uk>" gpg: aka "Benjamin Donnachie <benjamin.donnachie@googlemail.com>"
Need to tidy up, generate a patch and figure out the best way to
distribute this. -
Benjamin Donnachie January 29th, 2011 @ 11:34 PM
- State changed from hold to open
-
Benjamin Donnachie January 30th, 2011 @ 12:03 AM
I propose patching libgcrypt to include support for IDEA, but only compiling it if the user has dropped in the idea.c source.
-
Alex (via GPGTools) January 30th, 2011 @ 02:07 AM
(from [23caa84a3ddde82207df468cb7d7c9f3d2e28fb0]) Includes Alon Bar-Lev's IDEA patch.
NB NO ENCRYPTION CODE INCLUDED
[#30 state:committed]
Signed-off-by: Benjamin Donnachie benjamin@py-soft.co.uk
https://github.com/GPGTools/MacGPG2/commit/23caa84a3ddde82207df468c... -
Benjamin Donnachie January 30th, 2011 @ 03:40 PM
I have patched libgcrypt to detect the presence of idea.c. Making support as simple as checking out my libgcrypt source, grabbing idea.c off the web and placing it in the libgcrypt cipher directory and then recompiling the library.
As far as I understand, this is GPL compliant as we will not actually be including any patented algorithms.
Just need to tidy it up and check in my code.
-
Alex (via GPGTools) January 30th, 2011 @ 04:05 PM
(from [8bd62be1c63d1615cc787641e48509ad83ac744d]) Includes support to facilitate IDEA.
NB No patented algorithms included.
[#30 state:committed]
Signed-off-by: Benjamin Donnachie benjamin@py-soft.co.uk
https://github.com/GPGTools/MacGPG2/commit/8bd62be1c63d1615cc787641... -
Alex (via GPGTools) January 30th, 2011 @ 04:55 PM
(from [a1e2a03728c24b7641fb3cb51d9efd5c7951f432]) Temporary shell script to incorporate IDEA algorithm.
DOES NOT INCLUDE PATENTED CODE
[#30]
Signed-off-by: Benjamin Donnachie benjamin@py-soft.co.uk
https://github.com/GPGTools/MacGPG2/commit/a1e2a03728c24b7641fb3cb5... -
Benjamin Donnachie January 30th, 2011 @ 05:21 PM
- State changed from open to resolved
I working on an improved configure script, but until then the following procedure will work:
Check out the MacGPG2 source - may have to make libgcrypt a separate project to avoid pulling entire source in future:
git clone https://github.com/GPGTools/MacGPG2.git
Change to the libgcrypt directory:
cd MacGPG2/source/libgcrypt/
Then run the IDEA build script
./build-IDEA.sh
Take note of the warnings that IDEA not recommended and you must ensure you have a valid licence to use the algorithm. Then enter your su password when prompted for the new library to be installed.
Run gpg2 --version to check successful:
gpg (GnuPG/MacGPG2) 2.0.17 libgcrypt 1.4.6 [..] Cipher: IDEA, 3DES, CAST5, BLOWFISH, AES, AES192, AES256, TWOFISH, CAMELLIA128, [..]
NB No patented code included - it pulls down a patch from the web and only applies the part necessary to create idea.c
-
-
Alex (via GPGTools) September 16th, 2011 @ 01:19 PM
- State changed from resolved to open
- Milestone set to 2.0.18
- Importance changed from High to Medium
I think the patent expired in May 2011: http://en.wikipedia.org/wiki/International_Data_Encryption_Algorith...
-
Benjamin Donnachie September 16th, 2011 @ 02:23 PM
Is this sufficient for GPGTools to potentially violate a patent?
Sent from my iPhone
-
Alex (via GPGTools) September 16th, 2011 @ 02:45 PM
No. It's not. But since (afaik) the patent expired, this is not the case. Also see http://www.gossamer-threads.com/lists/gnupg/gcrypt/54647
-
-
Alex (via GPGTools) December 28th, 2011 @ 01:22 PM
- Assigned user changed from Benjamin Donnachie to Mento
- State changed from open to fixed
Done in 2.0.18 "buildscript" branch.
-
Alex (via GPGTools) December 30th, 2011 @ 12:04 PM
- State changed from fixed to released
Also via download.
-
-
steve September 23rd, 2012 @ 05:39 PM
- State changed from released to waiting
not working for Basar http://support.gpgtools.org/discussions/feedback/217-gpgmail-and-up...
-
steve October 25th, 2012 @ 01:48 PM
- State changed from waiting to fixed
Mento tested IDEA and it's working.
-
steve June 18th, 2015 @ 04:40 PM
- State changed from fixed to released
- Importance cleared.
Please Sign in or create a free account to add a new ticket.
With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile ยป
People watching this ticket
Referenced by
-
4 Automate generation of MacGPG2 binaries Since I'm building all sources from the installer script ...
-
30 Add IDEA support [#30 state:committed]
-
30 Add IDEA support [#30 state:committed]
-
30 Add IDEA support [#30]
-
48 Add a key server if none exists http://gpgtools.lighthouseapp.com/projects/65684/tickets/30