i-avatar777/yii2-service-blockchain-table

数据验证表格

0.0.2 2020-04-26 18:59 UTC

This package is auto-updated.

Last update: 2024-09-27 05:05:28 UTC


README

简介

该表格旨在将数据保存到表格中,其完整性可进行检查。只能将一行数据写入一次。保存数据的同时,会计算整个行的哈希并记录在_hash_row字段中。该类继承自\yii\db\ActiveRecord类,并实现了多个功能

  • calculateHash - 计算哈希
  • isValid - 使用calculateHash计算哈希并与_hash_row字段进行比较

实现

不允许重复写入数据,这可以通过将每行数据作为交易记录到交易表中来解决。交易被封装成块。每个块包含1000条记录。块包含对前一个块的引用和其自身的哈希。

Block 
{
    'id' => 1,    
    'hash' => '123123',    
}
Transaction 
{
    'id' => 1,    
    'table_id' => 324,    
    'row_id'   => 324,    
    'hash'     => '123123',    
}

Transaction 表的名称是什么?假设为 blockchain_transaction

Block 表的名称是什么?假设为 blockchain_block

Table 表的名称是什么?假设为 blockchain_table