Package dev.sigstore.proto.trustroot.v1
Class TrustedRoot
java.lang.Object
com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessage
com.google.protobuf.GeneratedMessage
dev.sigstore.proto.trustroot.v1.TrustedRoot
- All Implemented Interfaces:
com.google.protobuf.Message
,com.google.protobuf.MessageLite
,com.google.protobuf.MessageLiteOrBuilder
,com.google.protobuf.MessageOrBuilder
,TrustedRootOrBuilder
,Serializable
public final class TrustedRoot
extends com.google.protobuf.GeneratedMessage
implements TrustedRootOrBuilder
TrustedRoot describes the client's complete set of trusted entities. How the TrustedRoot is populated is not specified, but can be a combination of many sources such as TUF repositories, files on disk etc. The TrustedRoot is not meant to be used for any artifact verification, only to capture the complete/global set of trusted verification materials. When verifying an artifact, based on the artifact and policies, a selection of keys/authorities are expected to be extracted and provided to the verification function. This way the set of keys/authorities can be kept to a minimal set by the policy to gain better control over what signatures that are allowed. The embedded transparency logs, CT logs, CAs and TSAs MUST include any previously used instance -- otherwise signatures made in the past cannot be verified. All the listed instances SHOULD be sorted by the 'valid_for' in ascending order, that is, the oldest instance first. Only the last instance is allowed to have their 'end' timestamp unset. All previous instances MUST have a closed interval of validity. The last instance MAY have a closed interval. Clients MUST accept instances that overlaps in time, if not clients may experience problems during rotations of verification materials. To be able to manage planned rotations of either transparency logs or certificate authorities, clienst MUST accept lists of instances where the last instance have a 'valid_for' that belongs to the future. This should not be a problem as clients SHOULD first seek the trust root for a suitable instance before creating a per artifact trust root (that is, a sub-set of the complete trust root) that is used for verification.Protobuf type
dev.sigstore.trustroot.v1.TrustedRoot
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class
TrustedRoot describes the client's complete set of trusted entities.Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessage
com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>,
BuilderT extends com.google.protobuf.GeneratedMessage.ExtendableBuilder<MessageT, BuilderT>>, com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.ExtendableMessageOrBuilder<MessageT extends com.google.protobuf.GeneratedMessage.ExtendableMessage<MessageT>>, com.google.protobuf.GeneratedMessage.FieldAccessorTable, com.google.protobuf.GeneratedMessage.GeneratedExtension<ContainingT extends com.google.protobuf.Message, T extends Object>, com.google.protobuf.GeneratedMessage.UnusedPrivateParameter Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessage
com.google.protobuf.AbstractMessage.BuilderParent
Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessageLite.InternalOneOfEnum
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
static final int
static final int
static final int
static final int
Fields inherited from class com.google.protobuf.GeneratedMessage
alwaysUseFieldBuilders, unknownFields
Fields inherited from class com.google.protobuf.AbstractMessage
memoizedSize
Fields inherited from class com.google.protobuf.AbstractMessageLite
memoizedHashCode
-
Method Summary
Modifier and TypeMethodDescriptionboolean
getCertificateAuthorities
(int index) A set of trusted certificate authorities (e.g Fulcio), and any intermediate certificates they provide.int
A set of trusted certificate authorities (e.g Fulcio), and any intermediate certificates they provide.A set of trusted certificate authorities (e.g Fulcio), and any intermediate certificates they provide.getCertificateAuthoritiesOrBuilder
(int index) A set of trusted certificate authorities (e.g Fulcio), and any intermediate certificates they provide.List<? extends CertificateAuthorityOrBuilder>
A set of trusted certificate authorities (e.g Fulcio), and any intermediate certificates they provide.getCtlogs
(int index) A set of trusted certificate transparency logs.int
A set of trusted certificate transparency logs.A set of trusted certificate transparency logs.getCtlogsOrBuilder
(int index) A set of trusted certificate transparency logs.List<? extends TransparencyLogInstanceOrBuilder>
A set of trusted certificate transparency logs.static TrustedRoot
static final com.google.protobuf.Descriptors.Descriptor
MUST be application/vnd.dev.sigstore.trustedroot.v0.1+json when encoded as JSON.com.google.protobuf.ByteString
MUST be application/vnd.dev.sigstore.trustedroot.v0.1+json when encoded as JSON.com.google.protobuf.Parser<TrustedRoot>
int
getTimestampAuthorities
(int index) A set of trusted timestamping authorities.int
A set of trusted timestamping authorities.A set of trusted timestamping authorities.getTimestampAuthoritiesOrBuilder
(int index) A set of trusted timestamping authorities.List<? extends CertificateAuthorityOrBuilder>
A set of trusted timestamping authorities.getTlogs
(int index) A set of trusted Rekor servers.int
A set of trusted Rekor servers.A set of trusted Rekor servers.getTlogsOrBuilder
(int index) A set of trusted Rekor servers.List<? extends TransparencyLogInstanceOrBuilder>
A set of trusted Rekor servers.int
hashCode()
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
final boolean
static TrustedRoot.Builder
static TrustedRoot.Builder
newBuilder
(TrustedRoot prototype) protected TrustedRoot.Builder
newBuilderForType
(com.google.protobuf.AbstractMessage.BuilderParent parent) static TrustedRoot
parseDelimitedFrom
(InputStream input) static TrustedRoot
parseDelimitedFrom
(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static TrustedRoot
parseFrom
(byte[] data) static TrustedRoot
parseFrom
(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static TrustedRoot
parseFrom
(com.google.protobuf.ByteString data) static TrustedRoot
parseFrom
(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static TrustedRoot
parseFrom
(com.google.protobuf.CodedInputStream input) static TrustedRoot
parseFrom
(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static TrustedRoot
parseFrom
(InputStream input) static TrustedRoot
parseFrom
(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static TrustedRoot
parseFrom
(ByteBuffer data) static TrustedRoot
parseFrom
(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static com.google.protobuf.Parser<TrustedRoot>
parser()
void
writeTo
(com.google.protobuf.CodedOutputStream output) Methods inherited from class com.google.protobuf.GeneratedMessage
canUseUnsafe, computeStringSize, computeStringSizeNoTag, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyList, emptyLongList, getAllFields, getDescriptorForType, getField, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof, internalGetMapField, internalGetMapFieldReflection, isStringEmpty, makeMutableCopy, makeMutableCopy, mergeFromAndMakeImmutableInternal, newFileScopedGeneratedExtension, newInstance, newMessageScopedGeneratedExtension, parseDelimitedWithIOException, parseDelimitedWithIOException, parseUnknownField, parseUnknownFieldProto3, parseWithIOException, parseWithIOException, parseWithIOException, parseWithIOException, serializeBooleanMapTo, serializeIntegerMapTo, serializeLongMapTo, serializeStringMapTo, writeReplace, writeString, writeStringNoTag
Methods inherited from class com.google.protobuf.AbstractMessage
findInitializationErrors, getInitializationErrorString, hashFields, toString
Methods inherited from class com.google.protobuf.AbstractMessageLite
addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeTo
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.google.protobuf.MessageLite
toByteArray, toByteString, writeDelimitedTo, writeTo
Methods inherited from interface com.google.protobuf.MessageOrBuilder
findInitializationErrors, getAllFields, getDescriptorForType, getField, getInitializationErrorString, getOneofFieldDescriptor, getRepeatedField, getRepeatedFieldCount, getUnknownFields, hasField, hasOneof
-
Field Details
-
MEDIA_TYPE_FIELD_NUMBER
public static final int MEDIA_TYPE_FIELD_NUMBER- See Also:
-
TLOGS_FIELD_NUMBER
public static final int TLOGS_FIELD_NUMBER- See Also:
-
CERTIFICATE_AUTHORITIES_FIELD_NUMBER
public static final int CERTIFICATE_AUTHORITIES_FIELD_NUMBER- See Also:
-
CTLOGS_FIELD_NUMBER
public static final int CTLOGS_FIELD_NUMBER- See Also:
-
TIMESTAMP_AUTHORITIES_FIELD_NUMBER
public static final int TIMESTAMP_AUTHORITIES_FIELD_NUMBER- See Also:
-
-
Method Details
-
getDescriptor
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() -
internalGetFieldAccessorTable
protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()- Specified by:
internalGetFieldAccessorTable
in classcom.google.protobuf.GeneratedMessage
-
getMediaType
MUST be application/vnd.dev.sigstore.trustedroot.v0.1+json when encoded as JSON. Clients MUST be able to process and parse content with the media type defined in the old format: application/vnd.dev.sigstore.trustedroot+json;version=0.1
string media_type = 1;
- Specified by:
getMediaType
in interfaceTrustedRootOrBuilder
- Returns:
- The mediaType.
-
getMediaTypeBytes
public com.google.protobuf.ByteString getMediaTypeBytes()MUST be application/vnd.dev.sigstore.trustedroot.v0.1+json when encoded as JSON. Clients MUST be able to process and parse content with the media type defined in the old format: application/vnd.dev.sigstore.trustedroot+json;version=0.1
string media_type = 1;
- Specified by:
getMediaTypeBytes
in interfaceTrustedRootOrBuilder
- Returns:
- The bytes for mediaType.
-
getTlogsList
A set of trusted Rekor servers.
repeated .dev.sigstore.trustroot.v1.TransparencyLogInstance tlogs = 2;
- Specified by:
getTlogsList
in interfaceTrustedRootOrBuilder
-
getTlogsOrBuilderList
A set of trusted Rekor servers.
repeated .dev.sigstore.trustroot.v1.TransparencyLogInstance tlogs = 2;
- Specified by:
getTlogsOrBuilderList
in interfaceTrustedRootOrBuilder
-
getTlogsCount
public int getTlogsCount()A set of trusted Rekor servers.
repeated .dev.sigstore.trustroot.v1.TransparencyLogInstance tlogs = 2;
- Specified by:
getTlogsCount
in interfaceTrustedRootOrBuilder
-
getTlogs
A set of trusted Rekor servers.
repeated .dev.sigstore.trustroot.v1.TransparencyLogInstance tlogs = 2;
- Specified by:
getTlogs
in interfaceTrustedRootOrBuilder
-
getTlogsOrBuilder
A set of trusted Rekor servers.
repeated .dev.sigstore.trustroot.v1.TransparencyLogInstance tlogs = 2;
- Specified by:
getTlogsOrBuilder
in interfaceTrustedRootOrBuilder
-
getCertificateAuthoritiesList
A set of trusted certificate authorities (e.g Fulcio), and any intermediate certificates they provide. If a CA is issuing multiple intermediate certificate, each combination shall be represented as separate chain. I.e, a single root cert may appear in multiple chains but with different intermediate and/or leaf certificates. The certificates are intended to be used for verifying artifact signatures.
repeated .dev.sigstore.trustroot.v1.CertificateAuthority certificate_authorities = 3;
- Specified by:
getCertificateAuthoritiesList
in interfaceTrustedRootOrBuilder
-
getCertificateAuthoritiesOrBuilderList
A set of trusted certificate authorities (e.g Fulcio), and any intermediate certificates they provide. If a CA is issuing multiple intermediate certificate, each combination shall be represented as separate chain. I.e, a single root cert may appear in multiple chains but with different intermediate and/or leaf certificates. The certificates are intended to be used for verifying artifact signatures.
repeated .dev.sigstore.trustroot.v1.CertificateAuthority certificate_authorities = 3;
- Specified by:
getCertificateAuthoritiesOrBuilderList
in interfaceTrustedRootOrBuilder
-
getCertificateAuthoritiesCount
public int getCertificateAuthoritiesCount()A set of trusted certificate authorities (e.g Fulcio), and any intermediate certificates they provide. If a CA is issuing multiple intermediate certificate, each combination shall be represented as separate chain. I.e, a single root cert may appear in multiple chains but with different intermediate and/or leaf certificates. The certificates are intended to be used for verifying artifact signatures.
repeated .dev.sigstore.trustroot.v1.CertificateAuthority certificate_authorities = 3;
- Specified by:
getCertificateAuthoritiesCount
in interfaceTrustedRootOrBuilder
-
getCertificateAuthorities
A set of trusted certificate authorities (e.g Fulcio), and any intermediate certificates they provide. If a CA is issuing multiple intermediate certificate, each combination shall be represented as separate chain. I.e, a single root cert may appear in multiple chains but with different intermediate and/or leaf certificates. The certificates are intended to be used for verifying artifact signatures.
repeated .dev.sigstore.trustroot.v1.CertificateAuthority certificate_authorities = 3;
- Specified by:
getCertificateAuthorities
in interfaceTrustedRootOrBuilder
-
getCertificateAuthoritiesOrBuilder
A set of trusted certificate authorities (e.g Fulcio), and any intermediate certificates they provide. If a CA is issuing multiple intermediate certificate, each combination shall be represented as separate chain. I.e, a single root cert may appear in multiple chains but with different intermediate and/or leaf certificates. The certificates are intended to be used for verifying artifact signatures.
repeated .dev.sigstore.trustroot.v1.CertificateAuthority certificate_authorities = 3;
- Specified by:
getCertificateAuthoritiesOrBuilder
in interfaceTrustedRootOrBuilder
-
getCtlogsList
A set of trusted certificate transparency logs.
repeated .dev.sigstore.trustroot.v1.TransparencyLogInstance ctlogs = 4;
- Specified by:
getCtlogsList
in interfaceTrustedRootOrBuilder
-
getCtlogsOrBuilderList
A set of trusted certificate transparency logs.
repeated .dev.sigstore.trustroot.v1.TransparencyLogInstance ctlogs = 4;
- Specified by:
getCtlogsOrBuilderList
in interfaceTrustedRootOrBuilder
-
getCtlogsCount
public int getCtlogsCount()A set of trusted certificate transparency logs.
repeated .dev.sigstore.trustroot.v1.TransparencyLogInstance ctlogs = 4;
- Specified by:
getCtlogsCount
in interfaceTrustedRootOrBuilder
-
getCtlogs
A set of trusted certificate transparency logs.
repeated .dev.sigstore.trustroot.v1.TransparencyLogInstance ctlogs = 4;
- Specified by:
getCtlogs
in interfaceTrustedRootOrBuilder
-
getCtlogsOrBuilder
A set of trusted certificate transparency logs.
repeated .dev.sigstore.trustroot.v1.TransparencyLogInstance ctlogs = 4;
- Specified by:
getCtlogsOrBuilder
in interfaceTrustedRootOrBuilder
-
getTimestampAuthoritiesList
A set of trusted timestamping authorities.
repeated .dev.sigstore.trustroot.v1.CertificateAuthority timestamp_authorities = 5;
- Specified by:
getTimestampAuthoritiesList
in interfaceTrustedRootOrBuilder
-
getTimestampAuthoritiesOrBuilderList
A set of trusted timestamping authorities.
repeated .dev.sigstore.trustroot.v1.CertificateAuthority timestamp_authorities = 5;
- Specified by:
getTimestampAuthoritiesOrBuilderList
in interfaceTrustedRootOrBuilder
-
getTimestampAuthoritiesCount
public int getTimestampAuthoritiesCount()A set of trusted timestamping authorities.
repeated .dev.sigstore.trustroot.v1.CertificateAuthority timestamp_authorities = 5;
- Specified by:
getTimestampAuthoritiesCount
in interfaceTrustedRootOrBuilder
-
getTimestampAuthorities
A set of trusted timestamping authorities.
repeated .dev.sigstore.trustroot.v1.CertificateAuthority timestamp_authorities = 5;
- Specified by:
getTimestampAuthorities
in interfaceTrustedRootOrBuilder
-
getTimestampAuthoritiesOrBuilder
A set of trusted timestamping authorities.
repeated .dev.sigstore.trustroot.v1.CertificateAuthority timestamp_authorities = 5;
- Specified by:
getTimestampAuthoritiesOrBuilder
in interfaceTrustedRootOrBuilder
-
isInitialized
public final boolean isInitialized()- Specified by:
isInitialized
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Overrides:
isInitialized
in classcom.google.protobuf.GeneratedMessage
-
writeTo
- Specified by:
writeTo
in interfacecom.google.protobuf.MessageLite
- Overrides:
writeTo
in classcom.google.protobuf.GeneratedMessage
- Throws:
IOException
-
getSerializedSize
public int getSerializedSize()- Specified by:
getSerializedSize
in interfacecom.google.protobuf.MessageLite
- Overrides:
getSerializedSize
in classcom.google.protobuf.GeneratedMessage
-
equals
- Specified by:
equals
in interfacecom.google.protobuf.Message
- Overrides:
equals
in classcom.google.protobuf.AbstractMessage
-
hashCode
public int hashCode()- Specified by:
hashCode
in interfacecom.google.protobuf.Message
- Overrides:
hashCode
in classcom.google.protobuf.AbstractMessage
-
parseFrom
public static TrustedRoot parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static TrustedRoot parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static TrustedRoot parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static TrustedRoot parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static TrustedRoot parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static TrustedRoot parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
- Throws:
IOException
-
parseFrom
public static TrustedRoot parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseDelimitedFrom
- Throws:
IOException
-
parseDelimitedFrom
public static TrustedRoot parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseFrom
- Throws:
IOException
-
parseFrom
public static TrustedRoot parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
newBuilderForType
- Specified by:
newBuilderForType
in interfacecom.google.protobuf.Message
- Specified by:
newBuilderForType
in interfacecom.google.protobuf.MessageLite
-
newBuilder
-
newBuilder
-
toBuilder
- Specified by:
toBuilder
in interfacecom.google.protobuf.Message
- Specified by:
toBuilder
in interfacecom.google.protobuf.MessageLite
-
newBuilderForType
protected TrustedRoot.Builder newBuilderForType(com.google.protobuf.AbstractMessage.BuilderParent parent) - Overrides:
newBuilderForType
in classcom.google.protobuf.AbstractMessage
-
getDefaultInstance
-
parser
-
getParserForType
- Specified by:
getParserForType
in interfacecom.google.protobuf.Message
- Specified by:
getParserForType
in interfacecom.google.protobuf.MessageLite
- Overrides:
getParserForType
in classcom.google.protobuf.GeneratedMessage
-
getDefaultInstanceForType
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageLiteOrBuilder
- Specified by:
getDefaultInstanceForType
in interfacecom.google.protobuf.MessageOrBuilder
-