git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* [RFC PATCH 0/6] ssh signing: verify key lifetime
@ 2021-10-15 13:15 Fabian Stelzer
  2021-10-15 13:15 ` [RFC PATCH 1/6] ssh signing: extend check_signature to accept payload metadata Fabian Stelzer
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: Fabian Stelzer @ 2021-10-15 13:15 UTC (permalink / raw)
  To: git; +Cc: Fabian Stelzer

This series adds key lifetime validity checks by passing commit/tag
dates to the check operaion. The whole series is functional and has
tests. I'm sending this as an RFC since i'm unsure about the way i'm
parsing payload info via parse_signed_buffer_metadata().
payload was just an opaque buffer before. Now gpg-interface actually
looks at it (thats wy i used a seperate api function for it and did not
hide it in check_signature).

A cleaner approach would maybe be introducing a check_object_signature
which takes a struct object instead of the payload directly to avoid the
parse function altogether. However only some call sites already have
this struct. Tags & fmt-merge-msg use different ways to produce the
payload and i'm not sure how involved its creation would be or what
side-effects this could have(performance?). Since the push-certs use case
will never produce a object struct we would still have to keep the
existing check_signature function anyway.
The now used parse function also opens the usage up to sites already having
both infos (date & ident), although there is currently none.

Fabian Stelzer (6):
  ssh signing: extend check_signature to accept payload metadata
  ssh signing: add key lifetime test prereqs
  ssh signing: verify-commit/check_signature with commit date
  ssh signing: git log/check_signature with commit date
  ssh signing: verify-tag/check_signature with tag date
  ssh signing: fmt-merge-msg/check_signature with tag date

 Documentation/config/gpg.txt     |  5 ++
 builtin/receive-pack.c           |  5 +-
 commit.c                         | 12 ++++-
 fmt-merge-msg.c                  | 16 +++++--
 gpg-interface.c                  | 80 ++++++++++++++++++++++++++------
 gpg-interface.h                  |  9 ++++
 log-tree.c                       | 23 +++++++--
 t/lib-gpg.sh                     | 19 +++++++-
 t/t4202-log.sh                   | 43 +++++++++++++++++
 t/t6200-fmt-merge-msg.sh         | 54 +++++++++++++++++++++
 t/t7031-verify-tag-signed-ssh.sh | 42 +++++++++++++++++
 t/t7528-signed-commit-ssh.sh     | 42 +++++++++++++++++
 tag.c                            | 12 ++++-
 13 files changed, 334 insertions(+), 28 deletions(-)


base-commit: 33379063c9546476a80d42c704efc4ea5d0d95e5
-- 
2.31.1


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2021-10-15 13:15 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-10-15 13:15 [RFC PATCH 0/6] ssh signing: verify key lifetime Fabian Stelzer
2021-10-15 13:15 ` [RFC PATCH 1/6] ssh signing: extend check_signature to accept payload metadata Fabian Stelzer
2021-10-15 13:15 ` [RFC PATCH 2/6] ssh signing: add key lifetime test prereqs Fabian Stelzer
2021-10-15 13:15 ` [RFC PATCH 3/6] ssh signing: verify-commit/check_signature with commit date Fabian Stelzer
2021-10-15 13:15 ` [RFC PATCH 4/6] ssh signing: git log/check_signature " Fabian Stelzer
2021-10-15 13:15 ` [RFC PATCH 5/6] ssh signing: verify-tag/check_signature with tag date Fabian Stelzer
2021-10-15 13:15 ` [RFC PATCH 6/6] ssh signing: fmt-merge-msg/check_signature " Fabian Stelzer

Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).