Duplicate of T2379
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Advanced Search
Jun 4 2016
Jun 3 2016
(btw, "fingerprint" should be 40 hex chars, not 32 as if suggested)
For modern gnupg, we no longer support v3 keys, and we're considering making
--with-fingerprint the default (see
https://lists.gnupg.org/pipermail/gnupg-devel/2016-January/030748.html), so i
think this suggestion should actually be reconsidered.
Jun 2 2016
Not really making it simpler but --quick-gen-key can now take an expiration date.
Let's keep this bug open to track other improvements.
Ok,
Let me summarize how I understand the workflow is supposed to be:
- Generate a Key with the limited batch keygen.
- After key creation add subkeys as wanted with --quick-addkey
- Add additional UID's with --quick-adduid
I think I can work with that.
For full flexibility T2364 would be nice so that one could create a certify
only key this way and subkeys for everything else.
But yeah thats icing on the cake.
Still does not solve the Problem how to figure out which algrithms with which
parameters / capabilities are supportet but meh, I guess you can't have everything..
We also have --quick-addkey now.
We now have gpg --quick-addkey fpr algo usage expire
(for2.1.13)
Jun 1 2016
Thanks!
$ gpg mBank17044.asc
pub rsa2048/375EB336C8086B9E 2015-01-19
uid AR17044 <XXXXXXXXXXXX@mbank.pl>
sub rsa2048/75E684B9017985DF 2014-12-29 [expires: 2016-01-20]
[uid redacted]
As you can see, the encryption subkey expired in January. Thus the holder of
the key does not want you to encrypt to this key after that date. We know that
GPA should give a better error message. I'll change your report to a wish to
implement this.
May 30 2016
May 27 2016
Duplicate of T2171
May 24 2016
CRL detection is not really important. But detection of binary data is so that I
can properly handle .pgp and .gpg file extensions.
Detached signatures are also important so that I can look / guess for the signed
data and setup the verify operation accordingly or handle it in the GUI if no
Data is found. Maybe we can use flags for this so we don't break the current
behaviror that does not distinguish between detached signatures?
May 20 2016
May 19 2016
FWIW: pretty printing a time has a problem with i18n. It is too different for
gettext to handle.
May 18 2016
That might be an option like '--pretty-expiration KEYID' that simply outputs in
a human readable format how much time is left before the key KEYID expires. That
simply saves the user from doing id mentally. Furthermore, the output could also
be made script-eatable
May 17 2016
Fixed in 4711a1e1.
The algorithm I'm using now to detect the best key from a locate-keys result is
(Q_FOREACH just means "iterate over all elements in this list"):
Key keyC; /* The key candidate */
UserID uidC; /* The uid candidate */
Q_FOREACH (const Key k, keys) {
if (canEncrypt && !k.canEncrypt()) {
continue;
}
/* First get the uid that matches the mailbox */
Q_FOREACH (const UserID u, k.userIDs()) {
if (QString::fromUtf8(u.email()).toLower() == mailbox.toLower()) {
if (uidC.isNull()) {
keyC = k;
uidC = u;
} else if ((!uidIsOk(uidC) && uidIsOk(u)) || uidC.validity() <u.validity()) {
/* Validity of the new key is better. */
uidC = u;
keyC = k;
} else if (uidC.validity() == u.validity() && uidIsOk(u)) {
/* Both are the same check which one is newer. */
time_t oldTime = 0;
Q_FOREACH (const Subkey s, keyC.subkeys()) {
if ((canEncrypt && s.canEncrypt()) && subkeyIsOk(s)) {
oldTime = s.creationTime();
}
}
time_t newTime = 0;
Q_FOREACH (const Subkey s, k.subkeys()) {
if ((canEncrypt && s.canEncrypt()) && subkeyIsOk(s)) {
newTime = s.creationTime();
}
}
if (newTime > oldTime) {
uidC = u;
keyC = k;
}
}
}
}}
The helper functions to check if a key / subkey / uid is ok are just:
static bool keyIsOk(const Key k)
{
return !k.isExpired() && !k.isRevoked() && !k.isInvalid() && !k.isDisabled();
}
static bool uidIsOk(const UserID uid)
{
return keyIsOk(uid.parent()) && !uid.isRevoked() && !uid.isInvalid();
}
static bool subkeyIsOk(const Subkey s)
{
return !s.isRevoked() && !s.isInvalid() && !s.isDisabled();
}
May 12 2016
Quoting Ben McGinnes (2016-05-11 19:54:21)
On Wed, May 11, 2016 at 12:44:00PM +0000, Justus Winter via BTS wrote:
Justus Winter <justus@g10code.com> added the comment:
I have integrated the Python bindings into our build system. See branch
'justus/pyme3'.Open issues:
- (API) Change the name of the Python module. Currently it is named 'pyme',
shouldn't we use 'gpgme' instead?
No, simply because other (abandoned) attempts at writing wrappers for
GPGME already exist in the Python ecosystem. If we rename a module to
match the name of an existing one this will break things somewhere.
It also makes us no different from poor Isis Lovecruft who selected
the name gnupg for her fork of python-gnupg, but the original was
always imported as just gnupg so when she increased the version number
of her fork she broke a *lot* of things in other people's code.That's also why the entirely new thing I've called GPyGME, not just to
play word games with Pygmy, but also because the name is not used by
any existing Python module.
May 11 2016
I have integrated the Python bindings into our build system. See branch
'justus/pyme3'.
Open issues:
- (API) Change the name of the Python module. Currently it is named 'pyme',
shouldn't we use 'gpgme' instead?
- (API) One has to hand 'bytes' objects to pyme where 'char *' is expected. We
should make SWIG magically encode strings as utf-8 instead.
- Documentation. Needs to be build, likely updated, and installed. Ben was
thinking about using another tool for this. Needs investigation.
- No test suite.
- 'lang/python/examples/simple.py' segfaults.
May 10 2016
This will be useful for GnuPG itself. For example, currently in
gnupg/agent/command-ssh.c, we have a function ssh_receive_key which compose a
private key from 'ssh-add'. With this API, it will be cleaned up.
Justus, can you take care of this?
May 6 2016
Shoul all be done for 1.7.0.
May 4 2016
Should be solved now: Use Libgpg-error 1.22 and GnuPG 2.1.12.
Apr 21 2016
Apr 20 2016
Apr 19 2016
I think I was confused by the fact that I didn't use ssh-add to add the key and
I didn't realize that I could add it manually to sshcontrol. I did that and it
now works as expected. Sorry about the noise.
Although maybe it would be nice to be able to make 'confirm' the default for
keys which are not listed in sshcontrol. But that's a very minor thing.
Apr 15 2016
I've now pushed a patch to the GTK variant based on werner's original work with
the message box and the string button labels.
I was unable to get the tab order working correctly so that the visibility
button comes last in GTK. I've tried it with gtk_container_set_focus_chain but
it did not work as expected. When set on the wvbox it disabled tab changes
altogether. When set on the cbbox or bbbox it somewhat worked (e.g. when I
removed a widget from my list it was no longer tabbable) but it would not add
the repeat edit and the visibility toggle button although both were part of my list.
Probably a problem because of the sublayouts?
I noted this in the code so if someone wants to change that you are welcome :-)
Am Donnerstag, 14. April 2016 16:24:59 schrieb Andre Heinecke via BTS:
But from the discussion here and back then I took that draft to be no
longer up to date and that the MessageBox Question approach with small icon
buttons is not wanted.
Apr 14 2016
I know your first draft.
But from the discussion here and back then I took that draft to be no longer up
to date and that the MessageBox Question approach with small icon buttons is not
wanted.
I also don't know where we agreed that an Eye icon is a bad idea for this action.
This icon in similar to the one of the Windows Login screen and the same one
used in KDE. So it is recognizable for this action.
If you strongly favor the Message box variant I can change it to that.
No string changes in gpg-agent please.
I though we agreed that a watching eye is not a good icon for various reasons?
For the GTK version I already proposed a different layout:
it is still available at https://wiki.gnupg.org/ScratchWK . That fallback
solution tales away to much real estate
Better screenshot of the fallback showing a real call by gpg-agent instead of a
"getpin"
Neal: I've commited this with: 71b51e02cf20174ba7144765e985f7e889eaa429
The Make passphrase visible is in the tab order after the line edit. I don't
know how to best change this in GTK and the "Save passphrace using libsecret"
button would have the same problem.
I don't think it's a real problem though as you would have to tab + space to
make the password visible. Tab + Enter would just accept the dialog.
If you think this ok you can set this issue to resolved. You can also change the
setting you mentioned in T2139 (neal on Dec 07 2015, 10:09 AM / Roundup) . I don't know how. :-)
We might want to change the strings in gpg-agent though. I would prefer: "Show
passphrase" instead of "Make passphrase visible".
Fallback variant. (Qt5 Version with XDG_CURRENT_DESKTOP=GNOME)
The checkbox comes after the cancel button in the Tab order and will not
activate when pressing enter.
This is how I'll add it to the GTK variant now.
I've implemented this for Qt now.
The Qt5 variant with breeze icon theme looks like the attached screenshot. This
is how it will look on Windows and for KDE plasma 5 users.
If the Qt version is too old (The API for the line edit action was added in
Qt5.2) or there is no icon for the visibility actions it falls back to a textual
checkbox.
This also avoids licensing problems with the icons as the icons are loaded
through QIcon::fromTheme.
Apr 12 2016
Apr 8 2016
Do you mean that sshcontrol is not considered if the currently plugged in card
is used?
Apr 7 2016
Apr 5 2016
And there is also the new
$ gpg --quick-gen-key "Otto Normalverbraucher <otto@example.invalid>"
About to create a key for:
"Otto Normalverbraucher <otto@example.invalid>"
Continue? (Y/n)which avoids almost all questions. Whether to set an expiration date by default
is a different question and is connected on how a key can be revoked.



