-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Interfaces for SCTs, feedback wanted #3467
Conversation
@alex, thanks for your PR! By analyzing the history of the files in this pull request, we identified @reaperhulk, @intgr and @queenp to be potential reviewers. |
@reaperhulk important question, should this be a bare-class, or an ABC+builder like RevokedCertificate. |
What does it look like to build an SCT with just the bare class? |
Unclear! SCTs need to signed (it's in the name), so I think that means they
need a builder on one side.
…On Mon, Mar 20, 2017 at 7:39 PM, Paul Kehrer ***@***.***> wrote:
What does it look like to build an SCT with just the bare class?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#3467 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAADBAaFJEaM7sV4VHlz65DbVBJVKR5zks5rnw5GgaJpZM4MjC0K>
.
--
"I disapprove of what you say, but I will defend to the death your right to
say it." -- Evelyn Beatrice Hall (summarizing Voltaire)
"The people's good is the highest law." -- Cicero
GPG Key fingerprint: D1B3 ADC0 E023 8CA6
|
I think anything with signatures should have a builder 👍 |
Ok, which means this gets to be an ABC. :writes code:
…On Mon, Mar 20, 2017 at 7:44 PM, Paul Kehrer ***@***.***> wrote:
I think anything with signatures should have a builder 👍
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#3467 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAADBALXnSrBN8U-DYW6v-vLNzfmfZNiks5rnw9GgaJpZM4MjC0K>
.
--
"I disapprove of what you say, but I will defend to the death your right to
say it." -- Evelyn Beatrice Hall (summarizing Voltaire)
"The people's good is the highest law." -- Cicero
GPG Key fingerprint: D1B3 ADC0 E023 8CA6
|
|
||
:type: bytes | ||
|
||
An opaque identifier, indicating which log this SCT is from. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nit: Mention this is the hash of the log's public key? Or could refer to the RFC.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good call.
|
||
:type: :class:`datetime.datetime` | ||
|
||
A naïve datetime representing the timestamp at which the log asserts |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The timestamps from logs are always in UTC. Not sure how it affects this field, if at all.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@reaperhulk what do you think? The not_before
and not_after
on x.509 certs are naive datetimes, do you remember why we did that? Is it because python is bad and didn't have a cheap way to give us a UTC tzinfo?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
That is exactly why.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We document that as stating they're naïve datetimes representing UTC in the x509 docs.
I'll go copy that prose.
…On Tue, Mar 21, 2017 at 11:29 AM, Paul Kehrer ***@***.***> wrote:
***@***.**** commented on this pull request.
------------------------------
In docs/x509/certificate-transparency.rst
<#3467 (comment)>:
> + :type: :class:`~cryptography.x509.certificate_transparency.Version`
+
+ The SCT version as an enumeration. Currently only one version has been
+ specified.
+
+ .. attribute:: log_id
+
+ :type: bytes
+
+ An opaque identifier, indicating which log this SCT is from.
+
+ .. attribute:: timestamp
+
+ :type: :class:`datetime.datetime`
+
+ A naïve datetime representing the timestamp at which the log asserts
We document that as stating they're naïve datetimes representing UTC in
the x509 docs.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#3467 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAADBM6Vc-_bDVyBTI3CIJc70Y-fGWIiks5rn-zvgaJpZM4MjC0K>
.
--
"I disapprove of what you say, but I will defend to the death your right to
say it." -- Evelyn Beatrice Hall (summarizing Voltaire)
"The people's good is the highest law." -- Cicero
GPG Key fingerprint: D1B3 ADC0 E023 8CA6
|
SignedCertificateTimestamps (SCTs) are small cryptographically signed | ||
assertions that the specified certificate has been submitted to a | ||
Certificate Transparency Log, and that it will be part of the public log | ||
within some time period. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is the acceptable time period something each log decides?
Yeah, that's the MMD, max merge delay. Want me to include that bit of
terminology in the docs?
…On Tue, Mar 21, 2017 at 1:59 PM, Paul Kehrer ***@***.***> wrote:
***@***.**** commented on this pull request.
------------------------------
In docs/x509/certificate-transparency.rst
<#3467 (comment)>:
> +.. currentmodule:: cryptography.x509.certificate_transparency
+
+Certificate Transparency is a set of protocols specified in :rfc:`6962` which
+allow X.509 certificates to be sent to append-only logs and have small
+cryptographic proofs that a certificate has been publicly logged. This allows
+for external auditing of the certificates that a certificate authority has
+issued.
+
+.. class:: SignedCertificateTimestamp
+
+ .. versionadded:: 1.9
+
+ SignedCertificateTimestamps (SCTs) are small cryptographically signed
+ assertions that the specified certificate has been submitted to a
+ Certificate Transparency Log, and that it will be part of the public log
+ within some time period.
Is the acceptable time period something each log decides?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#3467 (review)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAADBET96wMvnwdb5xTz7qhOupF4eyvSks5roBAYgaJpZM4MjC0K>
.
--
"I disapprove of what you say, but I will defend to the death your right to
say it." -- Evelyn Beatrice Hall (summarizing Voltaire)
"The people's good is the highest law." -- Cicero
GPG Key fingerprint: D1B3 ADC0 E023 8CA6
|
Yes please |
Jenkins, retest this please. |
Refs #3461