Distribution of binary

Jeremy Drake jeremydrake+gnuk at eacceleration.com
Thu Jan 3 02:29:32 CET 2019

On Thu, 20 Dec 2018, Peter Lebbing wrote:

> On 20/12/2018 12:58, Werner Koch wrote:
>> May I suggest to use 1209:2440 for such uses?
> Oh, that's a good solution, thanks! That way there's no way the FSIJ
> will get sullied by people not observing their conditions.

Also, with as long as this discussion of how to properly exercise freedom 
2 of the essential freedoms [1] has gone on, I was beginning to wonder if 
this truly qualified as "free software" ;)

> So what should be the strings for vendor and product?
> Suggestions for vendor string:
> pid.codes
> GnuPG e.V.
> Private
> None
> (I mean the literal string "None")

I would suggest something generic here, like "Open Source Developer"

> Suggestions for product string:
> GnuK Token
> An OpenPGP Token
> With the first product string, Niibe's udev match on product string[1]
> will catch this device.

I would vote for the more specific option here, namely "GnuK Token", given 
that the string is stored in the device itself.

If we were talking about adding to usb.ids, I would swap which should be 
generic and which should be specific, and vote for "GnuPG e.V."/"An 
OpenPGP Token" as these strings are given to any device with that VID:PID.

> Note that the current code of GnuK will choose these strings based on a
> user-supplied VID:PID. So the strings will always be the same for the
> supplied VID:PID. It would require code changes to implement "If the
> GnuPG e.V. is spreading them, choose that as vendor, otherwise choose
> 'Private'".

Anyone who wants to distribute binaries (or by extension hardware) with 
different strings need only modify GNUK_USB_DEVICE_ID text file at the 
root of the source tree, IIRC.

I believe that some software "knows" the 234b:0001 VID:PID, and should be 
taught that 1209:2440 should be treated the same.  Off the top of my head, 
the udev rules which have already been mentioned, plus libccid [2] and 
OpenKeychain [3].

[1] https://www.gnu.org/philosophy/free-sw.en.html
[2] https://salsa.debian.org/rousseau/CCID/tree/master/readers
[3] https://github.com/open-keychain/open-keychain/blob/894bac6c8df2e651369afc8e0aef4e17779c4de6/OpenKeychain/src/main/java/org/sufficientlysecure/keychain/securitytoken/usb/UsbTransport.java#L70

More information about the Gnuk-users mailing list