Skip to content
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

feat: CRL #214

Merged
merged 117 commits into from
Sep 18, 2024
Merged

feat: CRL #214

merged 117 commits into from
Sep 18, 2024

Conversation

JeyJeyGao
Copy link
Contributor

@JeyJeyGao JeyJeyGao commented Jul 24, 2024

Feat:

  • CRL support, including CRL downloading, validation, and revocation list checks.
  • OCSP fallback to CRL when OCSP is unavailable or encounters an unknown issue.

Refactor:

  • move OCSP to internal package to export ocsp.CertCheckStatus and ocsp.Supported function for revocation package

The PR implements a subset of RFC 5280:

  • It only supports X.509 v2 CRL, as the Golang CRL parser only supports v2.
  • It only verifies that the CRL issuer is the certificate's CA with the same key.
  • Delta CRL and indirect CRL are not supported.

NOTE: CRL cache is not included.

Resolves part 1 of #125
Signed-off-by: Junjie Gao junjiegao@microsoft.com

commit 9240650
Merge: 0c1ec3b 4198690
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Wed Aug 9 17:07:34 2023 +0800

    Merge pull request #1 from JeyJeyGao/feat/ans1

    feat: convert BER to DER

commit 4198690
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Wed Aug 9 09:14:29 2023 +0800

    fix: simplify code

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 75ce02d
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Mon Aug 7 20:33:08 2023 +0800

    fix: added Conetent method for value interface

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 7b823a9
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Mon Aug 7 08:54:37 2023 +0800

    fix: update code

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 41ecec6
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Sun Aug 6 17:33:19 2023 +0800

    fix: remove recusive call for encode()

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 8f1a2af
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Fri Aug 4 13:40:09 2023 +0800

    fix: remove unused value

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 9b6a0c5
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Thu Aug 3 20:25:22 2023 +0800

    fix: update code

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 91a3691
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Thu Aug 3 20:11:28 2023 +0800

    fix: create pointer instead of value to improve performance

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 1465e3e
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Thu Aug 3 20:04:44 2023 +0800

    fix: update code

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 6524a9c
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Thu Aug 3 19:53:27 2023 +0800

    fix: update variable naming

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 6cfbd9c
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Thu Aug 3 19:47:39 2023 +0800

    fix: update code

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit b9c73bd
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Thu Aug 3 17:56:52 2023 +0800

    fix: update to use rawContent instead of expectedLen

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 3c99402
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Thu Aug 3 16:45:09 2023 +0800

    fix: update comment

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit f4dc95f
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Thu Aug 3 16:41:57 2023 +0800

    fix: resolve comment

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit f916316
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Thu Aug 3 16:40:37 2023 +0800

    fix: update code

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 22afdf8
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Thu Aug 3 16:34:34 2023 +0800

    fix: resolve comment

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit edb729c
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Thu Aug 3 16:32:47 2023 +0800

    fix: resolve comment

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit a8ba0ff
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Thu Aug 3 16:26:29 2023 +0800

    fix: update code

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit bc18cae
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Thu Aug 3 16:14:57 2023 +0800

    fix: resolve comments

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 643f388
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Thu Aug 3 09:17:39 2023 +0800

    fix: update comment

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit b5d5131
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Thu Aug 3 09:15:23 2023 +0800

    fix: expectedLen == 0 should continue

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 2345740
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Wed Aug 2 13:01:38 2023 +0800

    fix: added copyright

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 936ba2b
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Wed Aug 2 11:36:02 2023 +0800

    fix: remove recusive decoding

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 4fd944a
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Tue Aug 1 21:50:10 2023 +0800

    fix: remove readOnlySlice

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit efa7575
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Tue Aug 1 09:38:57 2023 +0800

    fix: update decodeIdentifier function name

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit cbce4c1
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Tue Aug 1 09:25:34 2023 +0800

    fix: update code

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 45480e5
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Mon Jul 31 21:22:20 2023 +0800

    fix: update code

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit b3de155
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Mon Jul 31 20:51:48 2023 +0800

    fix: set non-exportable type

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

commit 5dea9e5
Author: Junjie Gao <junjiegao@microsoft.com>
Date:   Mon Jul 31 20:44:50 2023 +0800

    feat: asn.1 first version

    Signed-off-by: Junjie Gao <junjiegao@microsoft.com>

Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
revocation/result/results.go Outdated Show resolved Hide resolved
revocation/result/results.go Show resolved Hide resolved
revocation/result/results.go Outdated Show resolved Hide resolved
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
shizhMSFT
shizhMSFT previously approved these changes Sep 12, 2024
Copy link
Contributor

@shizhMSFT shizhMSFT left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM with suggestions

revocation/method.go Outdated Show resolved Hide resolved
revocation/method.go Outdated Show resolved Hide resolved
revocation/internal/crl/crl.go Outdated Show resolved Hide resolved
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Two-Hearts
Two-Hearts previously approved these changes Sep 13, 2024
Copy link
Contributor

@Two-Hearts Two-Hearts left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

priteshbandi
priteshbandi previously approved these changes Sep 13, 2024
Copy link
Contributor

@priteshbandi priteshbandi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
revocation/method.go Outdated Show resolved Hide resolved
revocation/result/results.go Outdated Show resolved Hide resolved
revocation/result/results.go Outdated Show resolved Hide resolved
revocation/result/results.go Outdated Show resolved Hide resolved
revocation/internal/crl/crl.go Outdated Show resolved Hide resolved
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Signed-off-by: Junjie Gao <junjiegao@microsoft.com>
Copy link
Contributor

@shizhMSFT shizhMSFT left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Copy link
Contributor

@Two-Hearts Two-Hearts left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Copy link
Contributor

@priteshbandi priteshbandi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@JeyJeyGao JeyJeyGao merged commit 695ea0c into notaryproject:main Sep 18, 2024
9 checks passed
@Two-Hearts Two-Hearts mentioned this pull request Sep 24, 2024
6 tasks
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.

4 participants