linux-crypto.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Maciej S. Szmigiero" <mail@maciej.szmigiero.name>
To: Konstantin Ryabitsev <konstantin@linuxfoundation.org>
Cc: Roberto Sassu <roberto.sassu@huawei.com>,
	dhowells@redhat.com, dwmw2@infradead.org,
	herbert@gondor.apana.org.au, davem@davemloft.net,
	keyrings@vger.kernel.org, linux-crypto@vger.kernel.org,
	linux-integrity@vger.kernel.org, linux-fscrypt@vger.kernel.org,
	linux-kernel@vger.kernel.org, zohar@linux.ibm.com,
	ebiggers@kernel.org, "Jason A. Donenfeld" <Jason@zx2c4.com>
Subject: Re: [PATCH 00/14] KEYS: Add support for PGP keys and signatures
Date: Mon, 17 Jan 2022 21:59:22 +0100	[thread overview]
Message-ID: <392d28fa-7a2c-867a-5fbb-640064461eb7@maciej.szmigiero.name> (raw)
In-Reply-To: <20220117165933.l3762ppcbj5jxicc@meerkat.local>

On 17.01.2022 17:59, Konstantin Ryabitsev wrote:
> On Mon, Jan 17, 2022 at 03:34:54PM +0100, Jason A. Donenfeld wrote:
>> If you're looking for a simple signature mechanism to replace the use of
>> X.509 and all of that infrastructure, may I suggest just coming up with
>> something simple using ed25519, similar to signify or minisign? Very
>> minimal code in the kernel, in userspace, and very few moving parts to
>> break.
> 
> I am concerned that ed25519 private key management is very rudimentary -- more
> often than not it is just kept somewhere on disk, often without any passphrase
> encryption.
> 
> With all its legacy warts, GnuPG at least has decent support for hardware
> off-load via OpenPGP smartcards or TPM integration in GnuPG 2.3, but the best
> we have with ed25519 is passhprase protection as implemented in minisign (and

I am not sure that I understood your point here correctly, but GnuPG
already supports ed25519 keys, including stored on a smartcard - for
example, on a YubiKey [1].

While the current software support for ed25519 might be limited, there
is certainly progress being made, RFC 8410 allowed these algos for X.509
certificates.
Support for such certificates is already implemented in OpenSSL [2].

ECDSA, on the other hand, is very fragile with respect to random number
generation at signing time.
We know that people got burned here in the past.

Thanks,
Maciej

[1]: https://developers.yubico.com/PGP/YubiKey_5.2.3_Enhancements_to_OpenPGP_3.4.html
[2]: https://blog.pinterjann.is/ed25519-certificates.html

  parent reply	other threads:[~2022-01-17 20:59 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-01-11 18:03 [PATCH 00/14] KEYS: Add support for PGP keys and signatures Roberto Sassu
2022-01-11 18:03 ` [PATCH 01/14] mpi: Introduce mpi_key_length() Roberto Sassu
2022-01-11 18:03 ` [PATCH 02/14] rsa: add parser of raw format Roberto Sassu
2022-01-11 18:03 ` [PATCH 03/14] PGPLIB: PGP definitions (RFC 4880) Roberto Sassu
2022-01-11 18:03 ` [PATCH 04/14] PGPLIB: Basic packet parser Roberto Sassu
2022-01-11 18:03 ` [PATCH 05/14] PGPLIB: Signature parser Roberto Sassu
2022-01-11 18:03 ` [PATCH 06/14] KEYS: PGP data parser Roberto Sassu
2022-01-11 18:03 ` [PATCH 07/14] KEYS: Provide PGP key description autogeneration Roberto Sassu
2022-01-11 18:03 ` [PATCH 08/14] KEYS: PGP-based public key signature verification Roberto Sassu
2022-01-11 18:03 ` [PATCH 09/14] KEYS: Retry asym key search with partial ID in restrict_link_by_signature() Roberto Sassu
2022-01-11 18:03 ` [PATCH 10/14] KEYS: Calculate key digest and get signature of the key Roberto Sassu
2022-01-11 18:03 ` [PATCH 11/14] verification: introduce verify_pgp_signature() Roberto Sassu
2022-01-11 18:03 ` [PATCH 12/14] PGP: Provide a key type for testing PGP signatures Roberto Sassu
2022-01-11 18:03 ` [PATCH 13/14] KEYS: Provide a function to load keys from a PGP keyring blob Roberto Sassu
2022-01-11 18:03 ` [PATCH 14/14] KEYS: Introduce load_pgp_public_keyring() Roberto Sassu
2022-01-11 20:33 ` [PATCH 00/14] KEYS: Add support for PGP keys and signatures Maciej S. Szmigiero
2022-01-12  9:16   ` Roberto Sassu
2022-01-12 20:15     ` Maciej S. Szmigiero
2022-01-13  9:11       ` Roberto Sassu
2022-01-17 14:34 ` Jason A. Donenfeld
2022-01-17 15:02   ` James Bottomley
2022-01-18 20:50     ` Antony Vennard
2022-01-18 23:03       ` Eric Biggers
2022-01-19 13:25         ` Roberto Sassu
2022-01-21 16:50           ` Roberto Sassu
2022-01-23 21:00         ` Antony Vennard
2022-01-19 13:02       ` Roberto Sassu
2022-01-17 15:21   ` Roberto Sassu
2022-01-18 18:49     ` Jason A. Donenfeld
2022-01-17 16:59   ` Konstantin Ryabitsev
2022-01-17 17:04     ` Konstantin Ryabitsev
2022-01-17 20:59     ` Maciej S. Szmigiero [this message]
2022-01-17 21:54       ` Konstantin Ryabitsev

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=392d28fa-7a2c-867a-5fbb-640064461eb7@maciej.szmigiero.name \
    --to=mail@maciej.szmigiero.name \
    --cc=Jason@zx2c4.com \
    --cc=davem@davemloft.net \
    --cc=dhowells@redhat.com \
    --cc=dwmw2@infradead.org \
    --cc=ebiggers@kernel.org \
    --cc=herbert@gondor.apana.org.au \
    --cc=keyrings@vger.kernel.org \
    --cc=konstantin@linuxfoundation.org \
    --cc=linux-crypto@vger.kernel.org \
    --cc=linux-fscrypt@vger.kernel.org \
    --cc=linux-integrity@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=roberto.sassu@huawei.com \
    --cc=zohar@linux.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).