<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html lang="en" style='--code-editor-font: var(--default-mono-font, "GitLab Mono"), JetBrains Mono, Menlo, DejaVu Sans Mono, Liberation Mono, Consolas, Ubuntu Mono, Courier New, andale mono, lucida console, monospace;'>
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<title>
GitLab
</title>
<style data-premailer="ignore" type="text/css">
a { color: #1068bf; }
</style>
<style>img {
max-width: 100%; height: auto;
}
body {
font-size: .875rem;
}
body {
-webkit-text-shadow: rgba(255,255,255,.01) 0 0 1px;
}
body {
font-family: "GitLab Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",Ubuntu,Cantarell,"Helvetica Neue",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"; font-size: inherit;
}
</style>
</head>
<body style='font-size: inherit; -webkit-text-shadow: rgba(255,255,255,.01) 0 0 1px; font-family: "GitLab Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Noto Sans",Ubuntu,Cantarell,"Helvetica Neue",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";'>
<div class="content">
<p class="details" style="font-style: italic; color: #626168;">
<a href="https://gitlab.com/dueno">Daiki Ueno</a> created a merge request: <a href="https://gitlab.com/gnutls/gnutls/-/merge_requests/2030">!2030</a>
</p>
<div class="branch">
Project:Branches: dueno/gnutls:wip/dueno/ecc-privkey to gnutls/gnutls:master
</div>
<div class="author">
Author: Daiki Ueno
</div>
<div class="assignee">
Assignees:
</div>
<div class="reviewer">
Reviewers:
</div>
<div class="md gl-mt-5" style="position: relative; z-index: 1; color: #3a383f; word-wrap: break-word; margin-top: 1rem;">
<ul dir="auto" style="text-align: initial; list-style-type: disc; margin: 0 0 1rem; padding: 0;">
<li style="margin-top: 0; line-height: 1.6em; margin-left: 25px; padding-left: 3px;">x509: encode ECDSA private key in fixed length</li>
</ul>
<p dir="auto" style="color: #3a383f; margin: 0 0 1rem;" align="initial">RFC 5915 section 3 says that the privateKey field of ECPrivateKey
structure should be fixed length, though the library encoded it in
variable length, depending on the leading byte. This patch enforces
that the field is always encoded in fixed length, as well as
consolidates the code paths for EdDSA and X25519/X448 keys.</p>
<p dir="auto" style="color: #3a383f; margin: 0 0 1rem;" align="initial">Fixes: <a href="https://gitlab.com/gnutls/gnutls/-/issues/1747" title="ECDSA private key generation misencodes keys, should have fixed private d value length" class="gfm gfm-issue" data-original="#1747" data-link="false" data-link-reference="false" data-issue="175335126" data-project="179611" data-iid="1747" data-namespace-path="gnutls/gnutls" data-project-path="gnutls/gnutls" data-issue-type="issue" data-container="body" data-placement="top" data-reference-type="issue" style="margin-top: 0;">#1747</a></p>
<h2 dir="auto" style="margin-top: 20px; margin-bottom: 10px;" align="initial">
<a href="#checklist" aria-hidden="true" class="anchor" id="user-content-checklist" style="margin-top: 0; margin-left: -20px; text-decoration: none; outline: none; position: absolute; width: 20px;"></a>Checklist</h2>
<ul class="task-list" dir="auto" style="text-align: initial; list-style-type: disc; margin: 0 0 1rem; padding: 0;">
<li class="task-list-item" style="margin-top: 0; line-height: 1.6em; margin-left: 25px; padding-left: 3px; list-style-type: none; position: relative; min-height: 22px; padding-inline-start: 32px; margin-inline-start: 0 !important;">
<task-button style="margin-top: 0;"></task-button><input type="checkbox" class="task-list-item-checkbox" aria-label="Check option: Commits have Signed-off-by: with name/author being identical to the commit author" checked disabled style="position: absolute; inset-inline-start: 8px; inset-block-start: 3px; all: unset; width: 1rem; height: 1rem; cursor: pointer; box-sizing: border-box; border-radius: .25rem; background-color: #ffffff; border: 1px solid #89888d;"> Commits have <code style='font-size: 90%; color: #18171d; word-wrap: break-word; background-color: #ececef; border-radius: .25rem; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; white-space: pre-wrap; overflow-wrap: break-word; word-break: keep-all; padding: 0.125rem 0.25rem;'>Signed-off-by:</code> with name/author being identical to the commit author</li>
<li class="task-list-item" style="line-height: 1.6em; margin-left: 25px; padding-left: 3px; list-style-type: none; position: relative; min-height: 22px; padding-inline-start: 32px; margin-inline-start: 0 !important;">
<task-button style="margin-top: 0;"></task-button><input type="checkbox" class="task-list-item-checkbox" aria-label="Check option: Code modified for feature" disabled style="position: absolute; inset-inline-start: 8px; inset-block-start: 3px; all: unset; width: 1rem; height: 1rem; cursor: pointer; box-sizing: border-box; border-radius: .25rem; background-color: #ffffff; border: 1px solid #89888d;"> Code modified for feature</li>
<li class="task-list-item" style="line-height: 1.6em; margin-left: 25px; padding-left: 3px; list-style-type: none; position: relative; min-height: 22px; padding-inline-start: 32px; margin-inline-start: 0 !important;">
<task-button style="margin-top: 0;"></task-button><input type="checkbox" class="task-list-item-checkbox" aria-label="Check option: Test suite updated with functionality tests" disabled style="position: absolute; inset-inline-start: 8px; inset-block-start: 3px; all: unset; width: 1rem; height: 1rem; cursor: pointer; box-sizing: border-box; border-radius: .25rem; background-color: #ffffff; border: 1px solid #89888d;"> Test suite updated with functionality tests</li>
<li class="task-list-item" style="line-height: 1.6em; margin-left: 25px; padding-left: 3px; list-style-type: none; position: relative; min-height: 22px; padding-inline-start: 32px; margin-inline-start: 0 !important;">
<task-button style="margin-top: 0;"></task-button><input type="checkbox" class="task-list-item-checkbox" aria-label="Check option: Test suite updated with negative tests" disabled style="position: absolute; inset-inline-start: 8px; inset-block-start: 3px; all: unset; width: 1rem; height: 1rem; cursor: pointer; box-sizing: border-box; border-radius: .25rem; background-color: #ffffff; border: 1px solid #89888d;"> Test suite updated with negative tests</li>
<li class="task-list-item" style="line-height: 1.6em; margin-left: 25px; padding-left: 3px; list-style-type: none; position: relative; min-height: 22px; padding-inline-start: 32px; margin-inline-start: 0 !important;">
<task-button style="margin-top: 0;"></task-button><input type="checkbox" class="task-list-item-checkbox" aria-label="Check option: Documentation updated / NEWS entry present (for non-trivial changes)" disabled style="position: absolute; inset-inline-start: 8px; inset-block-start: 3px; all: unset; width: 1rem; height: 1rem; cursor: pointer; box-sizing: border-box; border-radius: .25rem; background-color: #ffffff; border: 1px solid #89888d;"> Documentation updated / NEWS entry present (for non-trivial changes)</li>
</ul>
<h2 dir="auto" style="margin-top: 20px; margin-bottom: 10px;" align="initial">
<a href="#reviewers-checklist" aria-hidden="true" class="anchor" id="user-content-reviewers-checklist" style="margin-top: 0; margin-left: -20px; text-decoration: none; outline: none; position: absolute; width: 20px;"></a>Reviewer's checklist:</h2>
<ul class="task-list" dir="auto" style="text-align: initial; list-style-type: disc; margin: 0; padding: 0;">
<li class="task-list-item" style="margin-top: 0; line-height: 1.6em; margin-left: 25px; padding-left: 3px; list-style-type: none; position: relative; min-height: 22px; padding-inline-start: 32px; margin-inline-start: 0 !important;">
<task-button style="margin-top: 0;"></task-button><input type="checkbox" class="task-list-item-checkbox" aria-label="Check option: Any issues marked for closing are addressed" disabled style="position: absolute; inset-inline-start: 8px; inset-block-start: 3px; all: unset; width: 1rem; height: 1rem; cursor: pointer; box-sizing: border-box; border-radius: .25rem; background-color: #ffffff; border: 1px solid #89888d;"> Any issues marked for closing are addressed</li>
<li class="task-list-item" style="line-height: 1.6em; margin-left: 25px; padding-left: 3px; list-style-type: none; position: relative; min-height: 22px; padding-inline-start: 32px; margin-inline-start: 0 !important;">
<task-button style="margin-top: 0;"></task-button><input type="checkbox" class="task-list-item-checkbox" aria-label="Check option: There is a test suite reasonably covering new functionality or modifications" disabled style="position: absolute; inset-inline-start: 8px; inset-block-start: 3px; all: unset; width: 1rem; height: 1rem; cursor: pointer; box-sizing: border-box; border-radius: .25rem; background-color: #ffffff; border: 1px solid #89888d;"> There is a test suite reasonably covering new functionality or modifications</li>
<li class="task-list-item" style="line-height: 1.6em; margin-left: 25px; padding-left: 3px; list-style-type: none; position: relative; min-height: 22px; padding-inline-start: 32px; margin-inline-start: 0 !important;">
<task-button style="margin-top: 0;"></task-button><input type="checkbox" class="task-list-item-checkbox" aria-label="Check option: Function naming, parameters, return values, types, etc., are consistent and according to…" disabled style="position: absolute; inset-inline-start: 8px; inset-block-start: 3px; all: unset; width: 1rem; height: 1rem; cursor: pointer; box-sizing: border-box; border-radius: .25rem; background-color: #ffffff; border: 1px solid #89888d;"> Function naming, parameters, return values, types, etc., are consistent and according to <code style='font-size: 90%; color: #18171d; word-wrap: break-word; background-color: #ececef; border-radius: .25rem; font-family: "GitLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation Mono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida console", monospace; font-variant-ligatures: none; white-space: pre-wrap; overflow-wrap: break-word; word-break: keep-all; padding: 0.125rem 0.25rem;'>CONTRIBUTION.md</code>
</li>
<li class="task-list-item" style="line-height: 1.6em; margin-left: 25px; padding-left: 3px; list-style-type: none; position: relative; min-height: 22px; padding-inline-start: 32px; margin-inline-start: 0 !important;">
<task-button style="margin-top: 0;"></task-button><input type="checkbox" class="task-list-item-checkbox" aria-label="Check option: This feature/change has adequate documentation added" disabled style="position: absolute; inset-inline-start: 8px; inset-block-start: 3px; all: unset; width: 1rem; height: 1rem; cursor: pointer; box-sizing: border-box; border-radius: .25rem; background-color: #ffffff; border: 1px solid #89888d;"> This feature/change has adequate documentation added</li>
<li class="task-list-item" style="line-height: 1.6em; margin-left: 25px; padding-left: 3px; list-style-type: none; position: relative; min-height: 22px; padding-inline-start: 32px; margin-inline-start: 0 !important;">
<task-button style="margin-top: 0;"></task-button><input type="checkbox" class="task-list-item-checkbox" aria-label="Check option: No obvious mistakes in the code" disabled style="position: absolute; inset-inline-start: 8px; inset-block-start: 3px; all: unset; width: 1rem; height: 1rem; cursor: pointer; box-sizing: border-box; border-radius: .25rem; background-color: #ffffff; border: 1px solid #89888d;"> No obvious mistakes in the code</li>
</ul>
</div>
</div>
<div class="footer" style="margin-top: 10px;">
<p style="font-size: small; color: #626168;">
—
<br>
Reply to this email directly or <a href="https://gitlab.com/gnutls/gnutls/-/merge_requests/2030">view it on GitLab</a>.
<br>
You're receiving this email because of your account on <a target="_blank" rel="noopener noreferrer" href="https://gitlab.com">gitlab.com</a>. <a href="https://gitlab.com/-/sent_notifications/1-7aipaf5qctikmh05vjq57qxqn/unsubscribe" target="_blank" rel="noopener noreferrer">Unsubscribe</a> from this thread · <a href="https://gitlab.com/-/profile/notifications" target="_blank" rel="noopener noreferrer" class="mng-notif-link">Manage all notifications</a> · <a href="https://gitlab.com/help" target="_blank" rel="noopener noreferrer" class="help-link">Help</a>
<span style="color: transparent; font-size: 0; display: none; overflow: hidden; opacity: 0; width: 0; height: 0; max-width: 0; max-height: 0;">
Notification message regarding https://gitlab.com/gnutls/gnutls/-/merge_requests/2030 at 1760947330
</span>
<script type="application/ld+json">{"@context":"http://schema.org","@type":"EmailMessage","action":{"@type":"ViewAction","name":"View Merge request","url":"https://gitlab.com/gnutls/gnutls/-/merge_requests/2030"}}</script>
</p>
</div>
</body>
</html>