189 lines
8.9 KiB
XML
189 lines
8.9 KiB
XML
<sunSpecModels v="1">
|
|
<!-- 4: secure dataset read response model -->
|
|
<model id="4" len="61">
|
|
<block len="60">
|
|
<point id="RqSeq" offset="0" type="uint16" access="r" mandatory="true"/>
|
|
<point id="Sts" offset="1" type="enum16" access="r" mandatory="true">
|
|
<symbol id="SUCCESS">0</symbol>
|
|
<symbol id="DS">1</symbol>
|
|
<symbol id="ACL">2</symbol>
|
|
<symbol id="OFF">3</symbol>
|
|
</point>
|
|
<point id="X" offset="2" type="uint16" access="r" mandatory="true"/>
|
|
<point id="Val1" offset="3" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val2" offset="4" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val3" offset="5" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val4" offset="6" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val5" offset="7" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val6" offset="8" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val7" offset="9" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val8" offset="10" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val9" offset="11" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val10" offset="12" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val11" offset="13" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val12" offset="14" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val13" offset="15" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val14" offset="16" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val15" offset="17" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val16" offset="18" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val17" offset="19" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val18" offset="20" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val19" offset="21" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val20" offset="22" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val21" offset="23" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val22" offset="24" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val23" offset="25" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val24" offset="26" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val25" offset="27" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val26" offset="28" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val27" offset="29" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val28" offset="30" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val29" offset="31" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val30" offset="32" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val31" offset="33" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val32" offset="34" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val33" offset="35" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val34" offset="36" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val35" offset="37" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val36" offset="38" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val37" offset="39" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val38" offset="40" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val39" offset="41" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val40" offset="42" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val41" offset="43" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val42" offset="44" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val43" offset="45" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val44" offset="46" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val45" offset="47" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val46" offset="48" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val47" offset="49" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val48" offset="50" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val49" offset="51" type="uint16" access="r" mandatory="true" />
|
|
<point id="Val50" offset="52" type="uint16" access="r" mandatory="true" />
|
|
<point id="Ts" offset="53" type="uint32" access="r" mandatory="true" />
|
|
<point id="Ms" offset="55" type="uint16" access="r" mandatory="true" />
|
|
<point id="Seq" offset="56" type="uint16" access="r" mandatory="true" />
|
|
<point id="Alm" offset="57" type="enum16" mandatory="true">
|
|
<symbol id="NONE">0</symbol>
|
|
<symbol id="ALM">1</symbol>
|
|
</point>
|
|
<point id="Alg" offset="58" type="enum16" access="r" mandatory="true">
|
|
<symbol id="NONE">0</symbol>
|
|
<symbol id="AES-GMAC-64">1</symbol>
|
|
<symbol id="ECC-256">2</symbol>
|
|
</point>
|
|
<point id="N" offset="59" type="uint16" access="r" mandatory="true" />
|
|
</block>
|
|
<block type="repeating" len="1">
|
|
<point id="DS" offset="0" type="uint16" access="r" mandatory="true" />
|
|
</block>
|
|
</model>
|
|
<strings id="4" locale="en">
|
|
<model>
|
|
<label>Secure Dataset Read Response</label>
|
|
<description>Compute a digital signature over a specified set of data registers</description>
|
|
<notes></notes>
|
|
</model>
|
|
<point id="Alm">
|
|
<label>Alarm</label>
|
|
<description>Bitmask alarm code</description>
|
|
<notes></notes>
|
|
<symbol id="NONE">
|
|
<label>NONE</label>
|
|
<description>No Alarms</description>
|
|
<notes></notes>
|
|
</symbol>
|
|
<symbol id="ALM">
|
|
<label>ALARM</label>
|
|
<description>Security Alarm</description>
|
|
<notes>Tampered</notes>
|
|
</symbol>
|
|
</point>
|
|
<point id="Ts">
|
|
<label>Timestamp</label>
|
|
<description>Timestamp value is the number of seconds since January 1, 2000</description>
|
|
<notes></notes>
|
|
</point>
|
|
<point id="Ms">
|
|
<label>Milliseconds</label>
|
|
<description>Millisecond counter 0-999</description>
|
|
<notes></notes>
|
|
</point>
|
|
<point id="Alg">
|
|
<label>Algorithm</label>
|
|
<description>Algorithm used to compute the digital signature</description>
|
|
<notes>For future proof</notes>
|
|
<symbol id="NONE">
|
|
<label>NONE</label>
|
|
<description>No digital signature</description>
|
|
<notes>For test purposes only</notes>
|
|
</symbol>
|
|
<symbol id="AES-GMAC-64">
|
|
<label>AES-GMAC-64</label>
|
|
<description>64 bit AES signature algorithm is used</description>
|
|
<notes></notes>
|
|
</symbol>
|
|
<symbol id="ECC-256">
|
|
<label>ECC-256</label>
|
|
<description>256 bit ECC signature algorithm is used</description>
|
|
<notes></notes>
|
|
</symbol>
|
|
</point>
|
|
<point id="Sts">
|
|
<label>Status</label>
|
|
<description>Status of last read operation</description>
|
|
<notes></notes>
|
|
<symbol id="SUCCESS">
|
|
<label>SUCCESS</label>
|
|
<description>Operation succeeded</description>
|
|
<notes></notes>
|
|
</symbol>
|
|
<symbol id="DS">
|
|
<label>DS</label>
|
|
<description>Operation failed digital signature check</description>
|
|
<notes></notes>
|
|
</symbol>
|
|
<symbol id="ACL">
|
|
<label>ACL</label>
|
|
<description>Operation failed access control check</description>
|
|
<notes>One or more registers were not writable by this role</notes>
|
|
</symbol>
|
|
<symbol id="OFF">
|
|
<label>OFF</label>
|
|
<description>Operation failed offset check</description>
|
|
<notes>Offset out of range or missing from multi-register value</notes>
|
|
</symbol>
|
|
</point>
|
|
<point id="N">
|
|
<label>N</label>
|
|
<description>Number of registers comprising the digital signature.</description>
|
|
<notes>The value of N must be at least 4 (64 bits)</notes>
|
|
</point>
|
|
<point id="X">
|
|
<label>X</label>
|
|
<description>Number of values from the request</description>
|
|
<notes>A max of 50 values are allocated</notes>
|
|
</point>
|
|
<point id="Val1">
|
|
<label>Value1</label>
|
|
<description>Copy of value from register Off1.</description>
|
|
<notes>Unused values shall return 0xFFFF (unimplemented)</notes>
|
|
</point>
|
|
<point id="DS">
|
|
<label>DS</label>
|
|
<description>Digital Signature</description>
|
|
<notes>The DS covers all registers from X to N and is N registers in length</notes>
|
|
</point>
|
|
<point id="RqSeq">
|
|
<label>Request Sequence</label>
|
|
<description>Sequence number from the request</description>
|
|
<notes></notes>
|
|
</point>
|
|
<point id="Seq">
|
|
<label>Sequence</label>
|
|
<description>Sequence number of response</description>
|
|
<notes>Shall be advanced for each response</notes>
|
|
</point>
|
|
</strings>
|
|
</sunSpecModels>
|