Skip to content

Update aevust public key - #1

Closed
Aevust wants to merge 4 commits into
mainfrom
update-aevust-public-key
Closed

Update aevust public key#1
Aevust wants to merge 4 commits into
mainfrom
update-aevust-public-key

Conversation

@Aevust

@Aevust Aevust commented Jun 28, 2026

Copy link
Copy Markdown
Owner

Update Aevust public key: add signing subkey and rename to aevust-public.asc

Summary

Updates the Aevust public key in security/ to include a newly added ed25519 signing subkey, and renames the file to make explicit that it holds public key material only. Also updates the SECURITY.md import reference to match.

This is a key-material and documentation change only. No governance, RIP, or consensus content is affected. The primary key fingerprint is unchanged.


Changes

This PR contains two commits, kept separate for auditability:

Commit Type Description
security: rename and update Aevust public key key material Rename security/aevust.ascsecurity/aevust-public.asc; add signing subkey C5BEF8A9FA06C16F [S]
docs: point SECURITY.md to the renamed public key file docs Update the gpg --import reference to the new filename

Key details

Primary: ed25519/8B6E3BF45C714ECA  [SC]  created 2026-01-15  expires 2029-01-15   (unchanged)
Subkey:  cv25519/F3CDB7C01BAD5647  [E]   created 2026-01-15  expires 2029-01-15   (unchanged)
Subkey:  ed25519/C5BEF8A9FA06C16F  [S]   created 2026-06-26  expires 2029-01-14   (NEW)

Fingerprint: ED20 B635 4EE4 526D 01F8 3B53 8B6E 3BF4 5C71 4ECA   (unchanged)

Why a dedicated signing subkey

The [S] subkey isolates release-signing operations — git commit -S and SHA256SUMS GPG signing — to the Ubuntu build VM, while the primary key [SC] (certification + revocation) remains on the Windows host. A compromise of the build VM cannot yield primary certification or revocation capability; the subkey can be revoked from the primary at any time.

The primary key identity and fingerprint are not changed by adding a subkey, so existing signatures and verified-commit status are unaffected.


Rename rationale

aevust.ascaevust-public.asc adopts the -public / -secret naming used in the build and signing workflow, making it unambiguous that this file is a public key (no secret material). The directory (security/) is unchanged.


Propagation status

The updated public key (including the new signing subkey) has been published to:

  • keys.openpgp.org — uploaded and reflected (by-fingerprint link)
  • GitHub account GPG keys (Settings → SSH and GPG keys) — old key removed, new key added
  • rincoin-rips/security/aevust-public.asc — this PR

Note: the GitHub account-level GPG key update is independent of this repository and is tracked above for completeness.

Verification

After merge, the key can be obtained and checked by either route:

# From this repository
gpg --import security/aevust-public.asc

# From the keyserver (no clone required)
gpg --keyserver hkps://keys.openpgp.org --recv-keys ED20B6354EE4526D01F83B538B6E3BF45C714ECA

# Confirm the signing subkey is present
gpg --list-keys --with-subkey-fingerprint 8B6E3BF45C714ECA
#   -> ssb ed25519/C5BEF8A9FA06C16F [S]

Both commits in this PR are GPG-signed with the new signing subkey.

Reviewer notes

  • No RIP text, governance document, or consensus-relevant file is touched.
  • Recommended merge method: Create a merge commit, to preserve the two-commit granularity (key change vs. doc reference) in main history.

Aevust added 2 commits June 28, 2026 15:18
Rename security/aevust.asc -> security/aevust-public.asc to
make explicit that the file holds a public key only (no secret
material), matching the -public/-secret naming used in the
build and signing workflow.

Add ed25519 signing subkey C5BEF8A9FA06C16F [S] (created
2026-06-26, expires 2029-01-14).

Fingerprint: ED20 B635 4EE4 526D 01F8 3B53 8B6E 3BF4 5C71 4ECA

Also updated on keys.openpgp.org.
Update the import instruction to security/aevust-public.asc
after the rename in the previous commit.

  gpg --import security/aevust.asc
  -> gpg --import security/aevust-public.asc

Fingerprint and keyserver instructions unchanged
(ED20 B635 4EE4 526D 01F8 3B53 8B6E 3BF4 5C71 4ECA).
@Aevust
Aevust requested a review from ysmreg as a code owner June 28, 2026 07:06
Aevust and others added 2 commits June 30, 2026 16:33
Define when a Core Role becomes vacant. RIP-0001 previously
assumed a vacancy in Succession without specifying its cause.

A pending matter (a requested PR review/merge, concurrence,
or vote) that receives no substantive action within 14 days,
followed by a 7-day cure notice delivered through every
SECURITY.md channel, results in the holder's operational
Core Role(s) being recorded as vacant. A bare acknowledgment
or a stated intent to act is not substantive action and does
not toll the periods.

The remaining Core Role holders may convene only to extend
the cure period on recorded good-faith grounds; they cannot
vacate a role whose conditions are unmet, nor shorten any
period. Vacancy follows from the rule upon non-action, not
from a discretionary decision to remove.

The mechanism is no-fault and reversible, and is distinct
from removal for cause. The Founder title is unaffected. A
returning holder is reinstated per Succession. Vacancy
transfers no authority by itself: where it leaves a single
Core Role holder, MAJOR/GENERATION increments remain
prohibited and proceed only through Network Ratification of
Release Candidates.

This also defines Founder availability for Succession: the
Founder is unavailable with respect to a pending matter only
when the same conditions are met for that matter.

Proposed amendment pending network ratification. Founder
concurrence is requested through SECURITY.md channels.
@Aevust
Aevust force-pushed the main branch 2 times, most recently from 1a9f743 to bdc72aa Compare July 1, 2026 14:18
@Aevust

Aevust commented Jul 24, 2026

Copy link
Copy Markdown
Owner Author

Closing this pull request. Its key material and documentation have been
superseded by #4, and the RIP-0001 amendment it carries belongs on a
different path.


What superseded the key material

#4, Refresh the bundled key and align the security documentation
(merge commit 7cf47e9), delivered what this pull request opened for, in
a different form.

Proposed here What merged in #4
Add signing subkey C5BEF8A9FA06C16F [S] to the bundled key security/aevust.asc replaced with the current keys.openpgp.org export, carrying that subkey and the 2026-07-20 primary-user-ID change this branch predates
Rename security/aevust.ascsecurity/aevust-public.asc Not adopted. The file keeps its name, and README's repository listing now reads security/*.asc
Point SECURITY.md at the renamed file The key-retrieval section was rewritten around three channels — keyserver, WKD, repository copy — with the keyserver first and the repository copy as the offline fallback

The branch is stale in a way rebasing would not fix. Its key file
predates 2026-07-20, and the rename it performs is now contrary to the
record rather than merely redundant.

The propagation recorded in the description above stands: the key was
published to keys.openpgp.org and to the GitHub account GPG keys at the
time, and both are independent of this repository.


Why close rather than rebase

#3, Align review scope with the ratified text (merge commit 7668ea7),
touched no key material — only .github/CODEOWNERS and
governance/core-role.md. It did, however, change why this pull request
cannot merge. Under the CODEOWNERS in force when this was opened,
SECURITY.md was gated to the Founder. It no longer is. What remains
gated is /rip-0001/, which is what commit e5102c4 touches.

So this branch bundles ungated key material with a gated RIP-0001
amendment. The two have different review paths and cannot travel
together. The ungated half has shipped; the gated half needs to be
submitted on its own.


The Vacancy Determination section

Commit e5102c4 added §Vacancy Determination to RIP-0001 and described
itself as a proposed amendment pending network ratification, with
Founder concurrence requested through the SECURITY.md channels.

Closing this pull request neither withdraws that section nor ratifies
it. The section is live in
GOVERNANCE.md §Vacancy Determination,
where the governance sections were relocated from RIP-0001 on
2026-07-07 (95c135c). It did not reach main through this
pull request. Reconciling the ratification status recorded in
GOVERNANCE.md §Authority and Amendment with the provenance of
this section is a separate change, and /GOVERNANCE.md is
gated — it goes through the review path, not through this branch.


The review request

The review request to ysmreg has been open here since 2026-06-28. It is
not removable by the author: ysmreg is a code owner of /rip-0001/,
which commit e5102c4 touches, and the code-owner review requirement is
in force. That is the intended behaviour, and it is not worked around
here — no ruleset change is made in order to close this pull request.

Closing therefore moots the request rather than dismissing it. No review
is expected on a closed pull request. The request is also not a pending
matter in the sense of GOVERNANCE.md §Vacancy Determination, which requires
the matter to be recorded in governance/editor-changes.md and delivered
through every channel listed in SECURITY.md; neither was done for this one.


Tracked elsewhere

  • rip-0001 §Repository Structure lists security/*_public.asc while
    the file is security/aevust.asc. The rename proposed here would
    have aligned the file to the pattern; the decision is instead to align
    the pattern to the file, in a separate pull request through the gated
    path.
  • The ysmreg fingerprint row in SECURITY.md remains (to be added).

The commits remain reachable from this pull request; nothing is lost by
closing it.

@Aevust Aevust closed this Jul 24, 2026
@Aevust
Aevust deleted the update-aevust-public-key branch July 24, 2026 08:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant