public inbox archive for pandoc-discuss@googlegroups.com
 help / color / mirror / Atom feed
From: Malcolm Nixon <malcolm.nixon-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: pandoc-discuss <pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
Subject: Re: Digitally Signed Outputs
Date: Wed, 10 May 2023 13:48:46 -0700 (PDT)	[thread overview]
Message-ID: <4c8954d3-5676-4ff4-b68d-23b1e7c4901dn@googlegroups.com> (raw)
In-Reply-To: <CALu=v3KtnixWASLZrp6pp8oCZoqkP_5L3xBOXMa2RavW8-wMwA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>


[-- Attachment #1.1: Type: text/plain, Size: 3520 bytes --]

All the big players in the CI space have methods for providing secrets to 
the CI pipeline scripts:
 - https://docs.github.com/en/actions/security-guides/encrypted-secrets
 - https://learn.microsoft.com/en-us/azure/devops/pipelines/process/set-secret-variables
 - https://docs.gitlab.com/charts/installation/secrets.html

Two approaches that seem common is to store the passphrase in the secrets 
manager, but check in the certificate file to the repository; or 
alternatively also store the certificate as a base64-encoded string in the 
secrets manager and have the script export it temporarily to file before 
use. 

Admittedly it would be more secure if CI tools came with signing 
capabilities built in - rather than having to inject secrets as arguments 
into a CI pipeline script which could be inadvertently/maliciously modified 
by a PR to try and leak the secrets (script injection attacks). The CI 
tools try to redact secrets from logs, but no system is perfect. Security 
hardening of pipelines is an entire research topic ;)

I'm mostly interested in creating tamper-resistant records (attestations) 
describing what was performed in the creation of an artifact and can be 
copied around with the artifacts. The digital-signature is only for 
tamper-resistance and wouldn't be used to signify suitability for 
distribution. If there's a lengthy gap between the creation of the record 
and its signing, then it opens a window for tampering before signature. 
That's one of the benefits of emitting the record pre-signed.

On Wednesday, May 10, 2023 at 2:45:11 PM UTC-4 Leonard Rosenthol wrote:

> After you resolve how to setup the pipeline - the next (bigger?) issue is 
> where will you get a digital certificate from?  How/where will you store it 
> so your CI can find it?  And how will you safely/securely provide the 
> passphrase for the key to the signing process?
>
> Leonard
>
> On May 10, 2023 at 6:21:58 AM, Albert Krewinkel <albert...-9EawChwDxG8hFhg+JK9F0w@public.gmane.org> 
> wrote:
>
>>
>> Malcolm Nixon <malcol...-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> writes:
>>
>> I found the PDF/A documentation and tried giving it a shot; however
>>
>> it looks like it only works with the ConTeXt engine, and the pandoc
>>
>> docker images only come with LaTeX.
>>
>>
>> I might have to take a diversion and look into docker ;)
>>
>>
>> Run this:
>>
>>    printf 'FROM pandoc/latex\nRUN tlmgr install context' | \
>>      docker build -t pandoc/context -
>>
>> Now you have a pandoc/context Docker image.
>>
>>
>> -- 
>> Albert Krewinkel
>> GPG: 8eed e3e2 e8c5 6f18 81fe  e836 388d c0b2 1f63 1124
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "pandoc-discuss" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to pandoc-discus...-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/pandoc-discuss/871qjoscsn.fsf%40zeitkraut.de
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups "pandoc-discuss" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org
To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/4c8954d3-5676-4ff4-b68d-23b1e7c4901dn%40googlegroups.com.

[-- Attachment #1.2: Type: text/html, Size: 5320 bytes --]

      parent reply	other threads:[~2023-05-10 20:48 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-05-01 22:42 Malcolm Nixon
     [not found] ` <5f41500c-54d8-43ca-855b-e2acfd0779dfn-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2023-05-09 10:52   ` Stephan Meijer
     [not found]     ` <e2e27a0d-7044-4533-b2a6-f42634e84b78n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2023-05-09 21:08       ` Malcolm Nixon
     [not found]         ` <73c2358c-ef08-411f-94e7-0d55e14b29b7n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2023-05-10  0:24           ` Stephan Meijer
     [not found]             ` <4fffb9ee-436c-4356-88d1-6c918d3b44e8n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2023-05-10  0:30               ` Stephan Meijer
     [not found]                 ` <7fd9f105-5d95-46ae-bf51-37c00c3532b7n-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org>
2023-05-10  0:31                   ` Stephan Meijer
2023-05-10 10:21           ` Albert Krewinkel
     [not found]             ` <871qjoscsn.fsf-9EawChwDxG8hFhg+JK9F0w@public.gmane.org>
2023-05-10 18:45               ` Leonard Rosenthol
     [not found]                 ` <CALu=v3KtnixWASLZrp6pp8oCZoqkP_5L3xBOXMa2RavW8-wMwA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2023-05-10 20:48                   ` Malcolm Nixon [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=4c8954d3-5676-4ff4-b68d-23b1e7c4901dn@googlegroups.com \
    --to=malcolm.nixon-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
    --cc=pandoc-discuss-/JYPxA39Uh5TLH3MbocFFw@public.gmane.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).