Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(400)

Issue 67513008: Certificate Transparency: Add the high-level interface for verifying SCTs over multiple logs (Closed)

Created:
7 years, 1 month ago by Eran M. (Google)
Modified:
7 years ago
Reviewers:
wtc, Ryan Sleevi
CC:
chromium-reviews, cbentzel+watch_chromium.org
Visibility:
Public.

Description

Add the high-level interface for verifying SCTs over multiple logs This interface (and the default implementation) verify SCT lists obtained during the TLS handshake or from OCSP stapling, as well as embedded ones. The result will be used to modify the ssl_info with indicatior of CT status. The next, and final, patch will wire the CTVerifier to the SSL client socket. BUG=309578 Committed: https://src.chromium.org/viewvc/chrome?view=rev&revision=237008

Patch Set 1 #

Total comments: 18

Patch Set 2 : Removing callback, netlog per wtc's suggestion. #

Patch Set 3 : Addressing Ryan's comments #

Patch Set 4 : Line-length fixes #

Patch Set 5 : Skipping hooks so maybe diff will not be formatted. #

Patch Set 6 : Simply removing the offending text from the pem file to avoid patch application failure. #

Patch Set 7 : Fixed using of released pointer. #

Total comments: 66

Patch Set 8 : Coping with null log verifiers #

Patch Set 9 : Addressing review comments. #

Total comments: 13

Patch Set 10 : Addressing review comments #

Patch Set 11 : Merging with master #

Total comments: 4
Unified diffs Side-by-side diffs Delta from patch set Stats (+907 lines, -8 lines) Patch
M net/cert/ct_serialization.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +3 lines, -0 lines 0 comments Download
M net/cert/ct_serialization.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +7 lines, -0 lines 2 comments Download
A net/cert/ct_verifier.h View 1 2 3 4 5 6 7 8 1 chunk +36 lines, -0 lines 0 comments Download
A net/cert/ct_verify_result.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +37 lines, -0 lines 0 comments Download
A + net/cert/ct_verify_result.cc View 1 2 3 4 5 6 7 8 9 1 chunk +7 lines, -3 lines 0 comments Download
A net/cert/multi_log_ct_verifier.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +70 lines, -0 lines 0 comments Download
A net/cert/multi_log_ct_verifier.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +149 lines, -0 lines 2 comments Download
A net/cert/multi_log_ct_verifier_unittest.cc View 1 2 3 4 5 6 7 8 9 10 1 chunk +138 lines, -0 lines 0 comments Download
M net/cert/signed_certificate_timestamp.h View 1 2 3 4 5 6 7 8 9 10 1 chunk +1 line, -1 line 0 comments Download
M net/data/ssl/certificates/README View 1 2 1 chunk +8 lines, -2 lines 0 comments Download
A net/data/ssl/certificates/ct-test-embedded-with-intermediate-chain.pem View 1 chunk +188 lines, -0 lines 0 comments Download
A net/data/ssl/certificates/ct-test-embedded-with-intermediate-preca-chain.pem View 1 chunk +188 lines, -0 lines 0 comments Download
A net/data/ssl/certificates/ct-test-embedded-with-preca-chain.pem View 1 2 3 4 5 1 chunk +38 lines, -0 lines 0 comments Download
M net/net.gyp View 1 2 3 4 5 6 7 3 chunks +7 lines, -0 lines 0 comments Download
M net/test/cert_test_util.h View 1 2 3 4 5 6 7 8 1 chunk +12 lines, -2 lines 0 comments Download
M net/test/cert_test_util.cc View 1 2 3 4 5 6 7 8 1 chunk +18 lines, -0 lines 0 comments Download

Messages

Total messages: 21 (0 generated)
Eran M. (Google)
7 years, 1 month ago (2013-11-19 23:46:30 UTC) #1
Ryan Sleevi
https://codereview.chromium.org/67513008/diff/1/net/cert/ct_log_verifier.h File net/cert/ct_log_verifier.h (right): https://codereview.chromium.org/67513008/diff/1/net/cert/ct_log_verifier.h#newcode30 net/cert/ct_log_verifier.h:30: enum VerifyResult { nit: Do you think the naming ...
7 years, 1 month ago (2013-11-20 01:09:41 UTC) #2
Eran M. (Google)
Addressed Ryan's comments, which also simplified the CL (no need for the CTLogVerifier to indicate ...
7 years, 1 month ago (2013-11-20 19:45:06 UTC) #3
Eran M. (Google)
Skipping hooks so maybe diff will not be formatted.
7 years, 1 month ago (2013-11-20 20:00:13 UTC) #4
Eran M. (Google)
Simply removing the offending text from the pem file to avoid patch application failure.
7 years, 1 month ago (2013-11-20 20:11:20 UTC) #5
Eran M. (Google)
Fixed using of released pointer.
7 years, 1 month ago (2013-11-20 23:00:06 UTC) #6
wtc
Patch set 7 LGTM. https://codereview.chromium.org/67513008/diff/310001/net/cert/ct_verifier.h File net/cert/ct_verifier.h (right): https://codereview.chromium.org/67513008/diff/310001/net/cert/ct_verifier.h#newcode18 net/cert/ct_verifier.h:18: // High-level interface for verifying ...
7 years, 1 month ago (2013-11-21 02:05:01 UTC) #7
Eran M. (Google)
Addressed all comments - waiting for your review of the changes to net_error_list.h before submitting. ...
7 years, 1 month ago (2013-11-21 20:06:02 UTC) #8
wtc
Patch set 9 LGTM. I suggest adding the error codes separately, when you add new ...
7 years, 1 month ago (2013-11-21 23:26:33 UTC) #9
Ryan Sleevi
https://codereview.chromium.org/67513008/diff/310001/net/cert/multi_log_ct_verifier.cc File net/cert/multi_log_ct_verifier.cc (right): https://codereview.chromium.org/67513008/diff/310001/net/cert/multi_log_ct_verifier.cc#newcode24 net/cert/multi_log_ct_verifier.cc:24: logs_[log_id] = linked_ptr<CTLogVerifier>(log_verifier.release()); On 2013/11/21 23:26:34, wtc wrote: > ...
7 years, 1 month ago (2013-11-21 23:37:02 UTC) #10
Eran M. (Google)
Addressed all comments: Removed the changes to net_error_list.h, left the pointer initialization as Ryan suggested, ...
7 years, 1 month ago (2013-11-23 21:02:06 UTC) #11
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/eranm@google.com/67513008/810001
7 years ago (2013-11-24 07:31:07 UTC) #12
commit-bot: I haz the power
Retried try job too often on linux_rel for step(s) browser_tests http://build.chromium.org/p/tryserver.chromium/buildstatus?builder=linux_rel&number=194470
7 years ago (2013-11-24 09:55:56 UTC) #13
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/eranm@google.com/67513008/810001
7 years ago (2013-11-24 21:41:04 UTC) #14
Eran M. (Google)
wtc@, PTAL at patchset 11, necessary since Al's changes to the SignedCertificateTimestamp landed before my ...
7 years ago (2013-11-24 21:41:31 UTC) #15
commit-bot: I haz the power
Change committed as 237008
7 years ago (2013-11-24 22:33:01 UTC) #16
wtc
https://codereview.chromium.org/67513008/diff/310001/net/cert/multi_log_ct_verifier.cc File net/cert/multi_log_ct_verifier.cc (right): https://codereview.chromium.org/67513008/diff/310001/net/cert/multi_log_ct_verifier.cc#newcode24 net/cert/multi_log_ct_verifier.cc:24: logs_[log_id] = linked_ptr<CTLogVerifier>(log_verifier.release()); On 2013/11/21 23:37:02, Ryan Sleevi wrote: ...
7 years ago (2013-11-25 01:48:31 UTC) #17
Ryan Sleevi
On 2013/11/25 01:48:31, wtc wrote: > https://codereview.chromium.org/67513008/diff/310001/net/cert/multi_log_ct_verifier.cc > File net/cert/multi_log_ct_verifier.cc (right): > > https://codereview.chromium.org/67513008/diff/310001/net/cert/multi_log_ct_verifier.cc#newcode24 > ...
7 years ago (2013-11-25 01:56:12 UTC) #18
wtc
https://codereview.chromium.org/67513008/diff/310001/net/cert/multi_log_ct_verifier.cc File net/cert/multi_log_ct_verifier.cc (right): https://codereview.chromium.org/67513008/diff/310001/net/cert/multi_log_ct_verifier.cc#newcode24 net/cert/multi_log_ct_verifier.cc:24: logs_[log_id] = linked_ptr<CTLogVerifier>(log_verifier.release()); Thanks for the explanation. You wrote: ...
7 years ago (2013-11-25 23:01:59 UTC) #19
wtc
Patch set 11 LGTM. I reviewed the diffs between patch sets 9 and 11. Please ...
7 years ago (2013-11-25 23:15:49 UTC) #20
Eran M. (Google)
7 years ago (2013-11-26 10:10:23 UTC) #21
Message was sent while issue was closed.
Addressed comments in https://codereview.chromium.org/87923002.

https://codereview.chromium.org/67513008/diff/810001/net/cert/ct_serializatio...
File net/cert/ct_serialization.cc (right):

https://codereview.chromium.org/67513008/diff/810001/net/cert/ct_serializatio...
net/cert/ct_serialization.cc:320: scoped_refptr<SignedCertificateTimestamp>*
output) {
On 2013/11/25 23:15:50, wtc wrote:
> 
> The function's two parameters should be aligned. (This comes from Al's code, I
> think.)

Done.

https://codereview.chromium.org/67513008/diff/810001/net/cert/multi_log_ct_ve...
File net/cert/multi_log_ct_verifier.cc (right):

https://codereview.chromium.org/67513008/diff/810001/net/cert/multi_log_ct_ve...
net/cert/multi_log_ct_verifier.cc:138: // been issued.
On 2013/11/25 23:15:50, wtc wrote:
> 
> Delete the stale comment about the 1-second slack on lines 137-138.

Done.

Powered by Google App Engine
This is Rietveld 408576698