Digest Files
Overview
A digest file contains the names and hash values of the trace files transferred to an OBS bucket an hour ago as well as the digital signature of the previous digest file. The digital signature of this digest file is stored in metadata attributes of the digest file object. A digest file is stored in the following path:
OBS bucket name > CloudTraces > Region > Year > Month > Day > tracker name > Digest > Service
An example is OBS bucket name > CloudTraces > Region > 2016 > 5 > 19 > system > Digest > ECS.
Digest File Name Format
The digest files are named as follows:
Trace file prefix_CloudTrace-Digest_Region/Region-Project_Time when the digest file was sent to OBS: Year-Month-DayTHour-Minute-Second Z.json.gz
Example: File Prefix_CloudTrace-Digest_region/region-project_2016-05-30T16-20-56Z.json.gz
Digest File Structure
Field |
Mandatory |
Type |
Description |
---|---|---|---|
project_id |
Yes |
String |
Identifies the account to which a trace file covered in the digest file belongs. |
digest_start_time |
Yes |
String |
Specifies the start of the UTC time range covered by the digest file. |
digest_end_time |
Yes |
String |
Specifies the end of the UTC time range covered by the digest file. |
digest_bucket |
Yes |
String |
Specifies the name of the OBS bucket that the digest file has been sent to. |
digest_object |
Yes |
String |
Specifies where the digest file is stored in the OBS bucket. |
digest_signature_algorithm |
Yes |
String |
Specifies the algorithm used to sign the digest file. |
digest_end |
Yes |
Boolean |
Specifies whether the digest file is an ending digest file. |
previous_digest_bucket |
No |
String |
Specifies the name of the OBS bucket that the previous digest file was sent to. |
previous_digest_object |
No |
String |
Specifies where the previous digest file is stored in the OBS bucket. |
previous_digest_hash_value |
No |
String |
Specifies the hexadecimal encoded hash value of the previous digest file. |
previous_digest_hash_algorithm |
No |
String |
Specifies the Hash algorithm used to hash the previous digest file. |
previous_digest_signature |
No |
String |
Specifies the digital signature of the previous digest file. |
previous_digest_end |
Yes |
Boolean |
Specifies whether the previous digest file is an ending digest file. |
log_files |
No |
Array |
Specifies the list of trace files covered in the digest file. |
bucket |
Yes |
String |
Specifies the name of the OBS bucket that the trace files have been sent to. |
object |
Yes |
String |
Specifies where the trace files are stored in the OBS bucket. |
log_hash_value |
Yes |
String |
Specifies the hexadecimal encoded hash value of the trace files. |
log_hash_algorithm |
Yes |
String |
Specifies the Hash algorithm used to hash the trace files. |
Example Digest File
A digest file contains the names and hash values of the trace files transferred to an OBS bucket an hour ago as well as the digital signature of the previous digest file. The digital signature of this digest file is stored in metadata attributes of the digest file object. A digest file is stored in the following path:
The following is an example digest file:
For details about the fields in the example, see Table 1.
{ "project_id": "3cfb09080bd944d0b4cdd72ef2685712", "digest_start_time": "2017-03-28T01-09-17Z", "digest_end_time": "2017-03-28T02-09-17Z", "digest_bucket": "bucket", "digest_object": "CloudTraces/ap-southeast-1/2017/3/28/Digest/EVS/mylog_CloudTrace-Digest_ap-southeast-1/_2017-03-28T02-09-17Z.json.gz", "digest_signature_algorithm": "SHA256withRSA", "digest_end": false, "previous_digest_bucket": "bucket", "previous_digest_object": "CloudTraces/ap-southeast-1/2017/3/28/Digest/EVS/mylog_CloudTrace-Digest_ap-southeast-1/_2017-03-28T01-09-17Z.json.gz", "previous_digest_hash_value": "5e08875de01b894eda5d1399d7b049fe", "previous_digest_hash_algorithm": "MD5", "previous_digest_signature": "7af7cbef4f3c78eab5048030d402810841400cf70eb22f93d4fedd13b13a8208a5dc04ce2f8bd0a4918f933ca3fcb17595ae59386a2dc3e3046fa97688a9815a2d036fa10193534c0ebbecff67221e22ac9cf8b781cbae3a81eaccfc0a2bd1a99081b1e4fe99b19caa771876ba7cce16d002feb4578cd89bc6f1faaca639ab48f3cb56007bcc5e248968f4a17a95b8cdbc7d8bbd7c63630da878cd4d471fc75c60bac5f730d94fefe8fdd2f2fa8accd62dbe100eab7773e7915e91be4474291b9dacea63a8267390bcb4855b5825554ebb07d4a29ce077c364213c575c461d1e9fafa0c29fde1c6de1d5630e015200821b2f3ae91e53cd8591433dd7c0b4c8bc", "previous_digest_end": false, "log_files": [{ "bucket": "bucket", "object": "CloudTraces/ap-southeast-1/2017/3/28/ECS/mylog_CloudTrace_ap-southeast-1/_2017-03-28T02-09-17Z_0faa86bc40071242.json.gz", "log_hash_value": "633a8256ae7996e21430c3a0e9897828", "log_hash_algorithm": "MD5" }] }
Digest File Signature
The digital signature information of a digest file is in two metadata attributes of the digest file object. Each digest file has the following two metadata items:
- meta-signature
Hexadecimal encoded value of the digest file signature. Example:
7af7cbef4f3c78eab5048030d402810841400cf70eb22f93d4fedd13b13a8208a5dc04ce2f8bd0a4918f933ca3fcb17595ae59386a2dc3e3046fa97688a9815a2d036fa10193534c0ebbecff67221e22ac9cf8b781cbae3a81eaccfc0a2bd1a99081b1e4fe99b19caa771876ba7cce16d002feb4578cd89bc6f1faaca639ab48f3cb56007bcc5e248968f4a17a95b8cdbc7d8bbd7c63630da878cd4d471fc75c60bac5f730d94fefe8fdd2f2fa8accd62dbe100eab7773e7915e91be4474291b9dacea63a8267390bcb4855b5825554ebb07d4a29ce077c364213c575c461d1e9fafa0c29fde1c6de1d5630e015200821b2f3ae91e53cd8591433dd7c0b4c8bc
Supplementary Information
- Starting Digest File
A starting digest file is generated after you start verifying trace file integrity. In a starting digest file, the following fields related to the previous digest file will be left empty:
- previous_digest_bucket
- previous_digest_object
- previous_digest_hash_value
- previous_digest_hash_algorithm
- previous_digest_signature
- "Empty" Digest File
CTS will still send a digest file even if no operations have occurred in your account within the one-hour time period recorded by the digest file. The last field log_files:[] of the digest file will be left empty. It helps you to confirm that no trace files have been sent within the one-hour time period recorded by the digest file.
- Digest File Chain
A digest file contains the digital signature and Hash value of the previous digest file (if any) so that a chain is formed. You can verify digest files successively within a specified time, starting with the latest one.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot