FS#56703 - [cryptsetup] Use system Argon2 library

Attached to Project: Arch Linux
Opened by David McAdoo (geecroof) - Wednesday, 13 December 2017, 12:47 GMT
Last edited by Eli Schwartz (eschwartz) - Wednesday, 10 January 2018, 15:08 GMT
Task Type Feature Request
Category Packages: Core
Status Closed
Assigned To Christian Hesse (eworm)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:

Upstream recommends using system-wide Argon2 implementation as internal one is very slow[1]

To build with system-wide Argon2 it needs "--enable-libargon2" configure parameter. Also adding Argon2 dependency and moving Argon2 package to core would be necessary.

http://www.saout.de/pipermail/dm-crypt/2017-December/005773.html
Closed by  Eli Schwartz (eschwartz)
Wednesday, 10 January 2018, 15:08 GMT
Reason for closing:  Fixed
Additional comments about closing:  cryptsetup 2.0.0-5
Comment by Christian Hesse (eworm) - Wednesday, 13 December 2017, 13:23 GMT
The argon2 package needs some polishing before this can happen...
Comment by Christian Hesse (eworm) - Thursday, 14 December 2017, 11:02 GMT Comment by David McAdoo (geecroof) - Thursday, 28 December 2017, 12:48 GMT
@eworm It seems your PR is merged and new release available https://github.com/P-H-C/phc-winner-argon2/releases/tag/20171227
Comment by loqs (loqs) - Thursday, 28 December 2017, 20:11 GMT
If cryptsetup is linked against argon2 which is licensed Apache 2.0 / CC0 1.0 Universal [1] then should cryptsetup not be changed to GPL 3.0 [3]
or the argon2 package marked as Apache/CC0 some of the code seems CC0 only see [2]
[1] https://github.com/P-H-C/phc-winner-argon2/blob/master/LICENSE
[2] https://github.com/P-H-C/phc-winner-argon2/blob/master/README.md
[3] https://www.gnu.org/licenses/license-list.html#apache2
Comment by David McAdoo (geecroof) - Thursday, 28 December 2017, 21:22 GMT
@loqs Cryptsetup is GPL2 and has already build-in argon2 library under licenses you linked https://gitlab.com/cryptsetup/cryptsetup/blob/master/lib/crypto_backend/argon2/argon2.h

If you have any licenses questions ask upstream as Arch can't change licenses of packages it provides.
Comment by loqs (loqs) - Thursday, 28 December 2017, 21:46 GMT
@geecroof cryptsetup is gpl2 or later https://gitlab.com/cryptsetup/cryptsetup/blob/master/src/cryptsetup.c#L12
Why do believe arch can not follow the licence and distribute under version 3 as permitted by the text of the version 2 or later licence?
As the file you linked to is dual licensed Apache 2.0 / CC0 and there is no conflict between CCO and GPL2 what issue do you believe exists there?
The issue I raised was the arch argon2 package being under Apache 2.0 only https://git.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/argon2#n9
So arch has picked one of the two licences for argon2 instead of using both which is incompatible with the GPL2 at least that is the position of the FSF.
You also did not address only some of the argon2 source appearing to be be CC0 which by arch distributing it under Apache 2 would be a license change anyway.
Comment by loqs (loqs) - Thursday, 28 December 2017, 21:58 GMT
Two additional notes:
As a basic principal any licensee can change the licence provided such a license change is permitted by the existing licence(s) or by the copyright holder.
Such a GPL change from 2 to 3 would also be needed for executables linking against cups when cups switches from GPL to Apache 2 provided they permit updating to a later version of the GPL
unless arch finds the Apache 2 license is compatible with the GPL 2 license.
Comment by David McAdoo (geecroof) - Friday, 29 December 2017, 11:30 GMT
I'm not sure if PKGBUILD allows for adding two licenses. If that's true then second license can be added easily. I doubt that maintainer explicitly wanted Apache.
Comment by Eli Schwartz (eschwartz) - Friday, 29 December 2017, 14:16 GMT
The license field in a PKGBUILD is an array... there are many packages that list multiple licenses.
Comment by David McAdoo (geecroof) - Friday, 29 December 2017, 14:31 GMT
@eschwartz thx for the info.

@loqs so you can open an issue for argon2 package for adding additional license and problem solved.
Comment by loqs (loqs) - Friday, 29 December 2017, 17:34 GMT
Created  FS#56897 
Comment by Christian Hesse (eworm) - Wednesday, 03 January 2018, 16:13 GMT
New package cryptsetup 2.0.0-4 in [testing] has been built with argon2.
Give it some good testing.

Loading...