grub-devel.gnu.org archive mirror
 help / color / mirror / Atom feed
From: "Vladimir 'φ-coder/phcoder' Serbinenko" <phcoder@gmail.com>
To: The development of GNU GRUB <grub-devel@gnu.org>
Subject: Re: DSA GnuPG signatures
Date: Wed, 03 Apr 2013 16:34:42 +0200	[thread overview]
Message-ID: <515C3E02.3030601@gmail.com> (raw)
In-Reply-To: <20130131164915.2b90aeed@opensuse.site>

[-- Attachment #1: Type: text/plain, Size: 1788 bytes --]

On 31.01.2013 13:49, Andrey Borzenkov wrote:

> В Fri, 11 Jan 2013 21:54:22 +0100
> Vladimir 'φ-coder/phcoder' Serbinenko <phcoder@gmail.com> пишет:
> 
>> Hello, all. I've just committed import of libgcrypt and implementation
>> of related code to check signatures. Short usage:
>> verify_detached FILE FILE.sig [pubkey.gpg]
>> trust KEY.gpg
>> distruct KEYID
>> check_signatures=[enforce|no]
>>
>> grub-mkimage -k KEY gcry_dsa verify [...]
>>
>> When check_signatures=enforce every time anthing tries to open a file
>> its signature (file.sig) is looked for and the open fails if signature
>> is absent or invalid.
> 
> There is no protection against file modification after signature was
> verified. Is it intentional (i.e. it is not considered as viable
> threat)?

That is indeed a problem.

> One possibility is to cache file in memory on first open,
> which ensures it cannot be modified externally.

Possible but works only on relatively small files. For bigger files we
need to make a chunk hash list. I'll add the easy part now and if ever
needed we can add more difficult part as well.

> 
>> Some limitations:
>> 1) DSA keys only. RSA is more tricky since it needs padding and RSA
>> should be progressively phased out, not put into new places due to some
>> vulnerabilities (large classes of semiprimes are factorisable up to the
>> point when a lot of care has to be taken to avoid them).
>> 2) Not efficient. Checking every file is slow. Some hashlists should be
>> implemented.
>> 3) Not efficient. File is read twice though it's avoidable in many cases.
> 
> 
> 
> _______________________________________________
> Grub-devel mailing list
> Grub-devel@gnu.org
> https://lists.gnu.org/mailman/listinfo/grub-devel




[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 294 bytes --]

      reply	other threads:[~2013-04-03 19:57 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-01-11 20:54 DSA GnuPG signatures Vladimir 'φ-coder/phcoder' Serbinenko
2013-01-11 22:14 ` Colin Watson
2013-01-11 22:46   ` Vladimir 'φ-coder/phcoder' Serbinenko
2013-01-13  8:33 ` Andrey Borzenkov
2013-01-13 16:47   ` Vladimir 'φ-coder/phcoder' Serbinenko
2013-01-31 12:49 ` Andrey Borzenkov
2013-04-03 14:34   ` Vladimir 'φ-coder/phcoder' Serbinenko [this message]

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=515C3E02.3030601@gmail.com \
    --to=phcoder@gmail.com \
    --cc=grub-devel@gnu.org \
    /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).