Chromium Code Reviews| Index: components/cast_certificate/proto/revocation.proto |
| diff --git a/components/cast_certificate/proto/revocation.proto b/components/cast_certificate/proto/revocation.proto |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..7d37e051b373441f0cb60eb6fe4ee6c4eaa54eff |
| --- /dev/null |
| +++ b/components/cast_certificate/proto/revocation.proto |
| @@ -0,0 +1,47 @@ |
| +// Copyright (c) 2016 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| +// |
| +// Data structures related to Cast device certificate revocation infrastructure. |
| + |
| +// This proto must be kept in sync with google3. |
| + |
| +syntax = "proto2"; |
| + |
| +option optimize_for = LITE_RUNTIME; |
| + |
| +package cast_certificate; |
| + |
| +message CrlBundle { |
| + // List of supported versions of the same revocation list. |
| + repeated Crl crls = 1; |
| +} |
| + |
| +message Crl { |
| + // Octet string of serialized TbsCrl protobuf. |
| + optional bytes tbs_crl = 1; |
| + |
| + // Binary ASN.1 DER encoding of the signer's certificate. |
| + optional bytes signer_cert = 2; |
|
eroman
2016/07/12 21:22:01
DESIGN: is this system going to allow for delegati
sheretov
2016/07/12 21:59:04
The two-level hierarchy is for operational reasons
ryanchung
2016/07/14 16:15:26
The CRL will be signed by an ICA issued by the CRL
eroman
2016/07/15 22:52:48
Thanks sheretov/ryanchung for the explanations!
(A
ryanchung
2016/07/18 23:39:07
I would prefer the ICAs to be short-lived (~ 1 wee
|
| + |
| + // Signature calculated over the contents of the tbs_crl field. |
|
eroman
2016/07/12 21:22:01
Add an explanation that the signature algorithm is
sheretov
2016/07/12 21:59:04
We've gone down that road (AlgorithmIDs sprinkled
eroman
2016/07/15 22:52:48
Fair enough, thanks for the explanation.
|
| + optional bytes signature = 3; |
| +} |
| + |
| +message TbsCrl { |
| + // Version 0 algorithms: |
| + // revoked_public_key_hashes: SHA-256 |
| + // SerialNumberRange.issuer_public_key_hash: SHA-256 |
| + // Crl.signature: RSA-PKCS1 V1.5 with SHA-256 |
| + optional uint64 version = 1 [default = 0]; |
| + optional uint64 issuance_time_millis = 2; |
| + optional uint64 validity_period_millis = 3; |
| + repeated bytes revoked_public_key_hashes = 4; |
| + repeated SerialNumberRange revoked_serial_number_ranges = 5; |
| +} |
| + |
| +message SerialNumberRange { |
| + optional bytes issuer_public_key_hash = 1; |
| + optional uint64 first_serial_number = 2; |
| + optional uint64 last_serial_number = 3; |
|
eroman
2016/07/12 21:22:01
Document whether this is inclusive or exclusive (i
ryanchung
2016/07/14 16:15:26
Done.
|
| +} |