2021-07-05 16:25:29 +00:00
|
|
|
/*
|
2023-01-11 07:52:06 +00:00
|
|
|
Audit contract is a contract deployed in FrostFS sidechain.
|
2021-07-05 16:25:29 +00:00
|
|
|
|
2022-04-14 11:56:51 +00:00
|
|
|
Inner Ring nodes perform audit of the registered containers during every epoch.
|
|
|
|
If a container contains StorageGroup objects, an Inner Ring node initializes
|
2021-07-05 16:25:29 +00:00
|
|
|
a series of audit checks. Based on the results of these checks, the Inner Ring
|
|
|
|
node creates a DataAuditResult structure for the container. The content of this
|
2022-04-14 11:56:51 +00:00
|
|
|
structure makes it possible to determine which storage nodes have been examined and
|
|
|
|
see the status of these checks. Regarding this information, the container owner is
|
2021-07-05 16:25:29 +00:00
|
|
|
charged for data storage.
|
|
|
|
|
2022-04-14 11:56:51 +00:00
|
|
|
Audit contract is used as a reliable and verifiable storage for all
|
|
|
|
DataAuditResult structures. At the end of data audit routine, Inner Ring
|
2021-07-05 16:25:29 +00:00
|
|
|
nodes send a stable marshaled version of the DataAuditResult structure to the
|
|
|
|
contract. When Alphabet nodes of the Inner Ring perform settlement operations,
|
2022-04-14 11:56:51 +00:00
|
|
|
they make a list and get these AuditResultStructures from the audit contract.
|
2021-07-05 16:25:29 +00:00
|
|
|
|
2022-12-12 19:59:13 +00:00
|
|
|
# Contract notifications
|
2021-07-05 16:25:29 +00:00
|
|
|
|
2022-04-14 11:56:51 +00:00
|
|
|
Audit contract does not produce notifications to process.
|
2023-05-10 08:19:19 +00:00
|
|
|
|
|
|
|
# Contract storage scheme
|
|
|
|
|
2023-11-07 12:00:02 +00:00
|
|
|
| Key | Value | Description |
|
|
|
|
|--------------------|------------|-----------------------------------------------------------|
|
|
|
|
| `netmapScriptHash` | Hash160 | netmap contract hash |
|
|
|
|
| auditID | ByteArray | serialized DataAuditResult structure |
|
2021-07-05 16:25:29 +00:00
|
|
|
*/
|
2021-07-04 11:08:37 +00:00
|
|
|
package audit
|