| ### Showing:
Annotations
Attributes
Diagrams
Model
Source
Used by

Complex Type HashVerificationType

Namespace | urn:us:gov:ic:sf:hashverification
Annotations | Hash values to verify contents of a payload. For payload types that embed the payload in the document, or which otherwise consist of a single object, a single hash value must be provided in a PayloadHash child element. If the payload is broken into a set of blocks, the PayloadHash element is optional. When referring to a ReferenceValuePayload element which uses chunking, the TotalHash child element must be a hash of the ordered concatenation of block hashes, using the same standard base64 encoding found in the HashBlock elements. That element is followed by a sequence of BlockHash elements, each of which must have a block attribute indicating which block of the ReferenceValuePayload it matches. These hashes must be of the same type as the parent HashVerification element.
Diagram |
Used by |
Elements | ContentDecodedHashVerification , ContentEncodedHashVerification , HashVerification
Complex Type | UnblockedHashVerificationType
Model | ( PayloadHash , TotalHash , BlockHash{2,unbounded} ) | ( TotalHash , BlockHash{2,unbounded} )
Children | BlockHash , PayloadHash , TotalHash
Attributes |
QName | Type | Use | Annotation
--- | --- | --- | ---
hashType | HashTypeType | required | The type of a hash.
Source |
    <xs:complexType name="HashVerificationType">
      <xs:annotation>
        <xs:documentation>
          <p xmlns="http://www.w3.org/1999/xhtml" ism:classification="U" ism:ownerProducer="USA">Hash values to verify contents of a payload.</p>
          <p xmlns="http://www.w3.org/1999/xhtml" ism:classification="U" ism:ownerProducer="USA">For payload types that embed the payload in the document, or which otherwise consist of a single object, a single hash value must be provided in a PayloadHash child element. If the payload is broken into a set of blocks, the PayloadHash element is optional.</p>
          <p xmlns="http://www.w3.org/1999/xhtml" ism:classification="U" ism:ownerProducer="USA">When referring to a ReferenceValuePayload element which uses chunking, the TotalHash child element must be a hash of the ordered concatenation of block hashes, using the same standard base64 encoding found in the HashBlock elements. That element is followed by a sequence of BlockHash elements, each of which must have a block attribute indicating which block of the ReferenceValuePayload it matches. These hashes must be of the same type as the parent HashVerification element.</p>
        </xs:documentation>
      </xs:annotation>
      <xs:choice>
        <xs:sequence>
          <xs:element ref="PayloadHash" minOccurs="1" maxOccurs="1"/>
          <xs:group ref="BlockedHashGroup" minOccurs="0" maxOccurs="1"/>
        </xs:sequence>
        <xs:sequence>
          <xs:group ref="BlockedHashGroup" minOccurs="1" maxOccurs="1"/>
        </xs:sequence>
      </xs:choice>
      <xs:attribute ref="hashType" use="required"/>
    </xs:complexType>
Schema location | HashVerification.xsd Copy and paste this link to your file browser, clicking the link MAY open in the browser. Opening in an XML aware editor is best.

## This document has been approved for Public Release by the Office of the Director of National Intelligence. See Distribution Notice for details. Click Here