เชเชเชฐเซ เชฌเซเชฒเซเชเชเซเชจ เชธเชพเชฅเซ เชธเชฎเชพเชชเซเชค เชฅเชตเชพ เชฎเชพเชเซ เช เชจเซ เชฎเชพเชคเซเชฐ เชกเซเชเชพเชฌเซเช เช เชจเชนเซเช, เช เชฎเชพเชฐเซ เช เชฎเชพเชฐเชพ เชชเซเชฐเซเชเซเชเซเชเชฎเชพเช 3 เชฎเชนเชคเซเชตเชชเซเชฐเซเชฃ เชเชเชเซ เชเชฎเซเชฐเชตเชพเชจเซ เชเชฐเซเชฐ เชเซ:
- เชฌเซเชฒเซเช เชกเซเชเชพ เชฎเชพเชณเชเซเช เช เชจเซ เชชเชฆเซเชงเชคเชฟเชเชจเซเช เชตเชฐเซเชฃเชจ
- เชกเซเชเชพ เชฎเชพเชณเชเซเช เช เชจเซ เชตเซเชฏเชตเชนเชพเชฐ เชชเชฆเซเชงเชคเชฟเชเชจเซเช เชตเชฐเซเชฃเชจ
- เชฌเซเชฒเซเชเชเซเชจ เชซเชเชเซเชถเชจเซเชธ เชเซ เชเซ เชกเซเชเชพเชฌเซเชเชฎเชพเช เชฌเซเชฒเซเชเซเชธเชจเซ เชธเชพเชเชตเซ เชเซ เช เชจเซ เชคเซเชฎเชจเซ เชคเซเชฎเชจเชพ เชนเซเชถ เช เชฅเชตเชพ เชเชเชเชพเช (เช เชฅเชตเชพ เชฌเซเชเซเช เชเชเชเช) เชฆเซเชตเชพเชฐเชพ เชคเซเชฏเชพเช เชถเซเชงเซ เชเซ.
เชเชฆเซเชฏเซเช เชฎเชพเชเซ เชฌเซเชฒเซเชเชเซเชจ เชตเชฟเชถเซเชจเซ เช เชฌเซเชเซ เชฒเซเช เชเซ, เชชเชนเซเชฒเซ
เช เชถเซเชฐเซเชฃเซเชจเชพ เชชเชพเชเชฒเชพ เชฒเซเช เชตเชฟเชถเซ เชตเชพเชเชเซเช เชฎเชจเซ เชชเซเชเซเชฒเชพ เชชเซเชฐเชถเซเชจเซเชจเซ เชฏเชพเชฆ เชฐเชพเชเซเชจเซ, เชคเซ เชจเซเชเชงเชตเซเช เชเซเชเช: เช เชเชฟเชธเซเชธเชพเชฎเชพเช, เชฒเซเชตเชฒเชกเซเชฌเซ เชกเซเชเชพเชฌเซเชเชจเซ เชเชชเชฏเซเช เชฌเซเชฒเซเชเชเซเชจ เชกเซเชเชพเชจเซ เชธเชเชเซเชฐเชนเชฟเชค เชเชฐเชตเชพ เชฎเชพเชเซ เชฅเชพเชฏ เชเซ, เชชเชฐเชเชคเซ เชเชนเซ เชเซ, MySQL เชจเซ เชเชชเชฏเซเช เชเชฐเชตเชพเชฅเซ เชคเชฎเชจเซ เชเชเชเชชเชฃ เช เชเชเชพเชตเชคเซเช เชจเชฅเซ. เชนเชตเซ เช เชกเซเชเชพเชจเซ เชฐเชเชจเชพ เชเซเชเช.
เชเชพเชฒเซ เชตเซเชฏเชตเชนเชพเชฐเซเชฅเซ เชถเชฐเซเชเชค เชเชฐเซเช:
เช เชนเซเช เชคเซเชจเซเช เชกเซเชเชพ เชฎเชพเชณเชเซเช เชเซ:
type TX struct {
DataType byte
TxHash string
TxType byte
Timestamp int64
INs []TxIn
OUTs []TxOut
}
type TxIn struct {
ThatTxHash string
TxOutN int
ByteCode string
}
type TxOut struct {
Value int
ByteCode string
}
TX เชกเซเชเชพ เชชเซเชฐเชเชพเชฐ (เชเซเชฐเชพเชจเซเชเซเชเซเชถเชจ 2 เชฎเชพเชเซ), เชคเซ เชเซเชฐเชพเชจเซเชเซเชเซเชถเชจเชจเซ เชนเซเชถ, เชเซเชฐเชพเชจเซเชเซเชเซเชถเชจเชจเซ เชชเซเชฐเชเชพเชฐ, เชเชพเชเชฎเชธเซเชเซเชฎเซเชช เช เชจเซ เชเชจเชชเซเชเซเชธ เช เชจเซ เชเชเชเชชเซเช เชธเซเชเซเชฐ เชเชฐเซ เชเซ. TxIn เชเชจเชชเซเช เชเซเชฐเชพเชจเซเชเซเชเซเชถเชจเชจเชพ เชนเซเชถเชจเซ เชธเชเชเซเชฐเชนเชฟเชค เชเชฐเซ เชเซ เชเซเชจเชพ เชเชเชเชชเซเชเชจเซ เชธเชเชฆเชฐเซเชญ เชเชชเชตเชพเชฎเชพเช เชเชตเซ เชเซ, เช เชเชเชเชชเซเชเชจเซ เชธเชเชเซเชฏเชพ เช เชจเซ เชฌเชพเชเชเชเซเชก เช เชจเซ TxOut เชเชเชเชชเซเช เช เชฎเซเช เชฎเซเชฒเซเชฏ เช เชจเซ เชฌเชพเชฏเชเซเชก เชชเชฃ เชธเชเชเซเชฐเชนเชฟเชค เชเชฐเซ เชเซ.
เชนเชตเซ เชเชพเชฒเซ เชเซเชเช เชเซ เชตเซเชฏเชตเชนเชพเชฐ เชคเซเชจเชพ เชกเซเชเชพ เชชเชฐ เชเช เชเซเชฐเชฟเชฏเชพเช เชเชฐเซ เชถเชเซ เชเซ, เชเชเชฒเซ เชเซ. เชเชพเชฒเซ เชชเชฆเซเชงเชคเชฟเช เชเซเชเช.
เชเซเชฐเชพเชจเซเชเซเชเซเชถเชจ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชเซ, เชเซเชฐเชพเชจเซเชเซเชเซเชถเชจเชจเซ เชเชชเชฏเซเช เชเชฐเซ.NewTransaction(txtype byte) *TX เชซเชเชเซเชถเชจ.
AddTxIn(thattxhash []byte, txoutn int, code []byte) (*TxIn, เชญเซเชฒ) เชชเชฆเซเชงเชคเชฟ เชตเซเชฏเชตเชนเชพเชฐเชฎเชพเช เชเชจเชชเซเช เชเชฎเซเชฐเซ เชเซ.
AddTxOut(เชตเซเชฒเซเชฏเซ int, data []byte) (*TxOut, เชเชฐเชฐ) เชชเชฆเซเชงเชคเชฟ เชตเซเชฏเชตเชนเชพเชฐเชฎเชพเช เชเชเชเชชเซเช เชเชฎเซเชฐเซ เชเซ.
ToBytes() []เชฌเชพเชเช เชชเชฆเซเชงเชคเชฟ เชเซเชฐเชพเชจเซเชเซเชเซเชถเชจเชจเซ เชฌเชพเชเช เชธเซเชฒเชพเชเชธเชฎเชพเช เชซเซเชฐเชตเซ เชเซ.
เชเชเชคเชฐเชฟเช เชซเชเชเซเชถเชจ preByteHash(bytes []byte) เชธเซเชเซเชฐเชฟเชเชเชจเซ เชเชชเชฏเซเช Build() เช เชจเซ Check() เชฎเชพเช เชฅเชพเชฏ เชเซ เชเซเชฅเซ เชเชจเชฐเซเช เชเชฐเซเชฒ เชเซเชฐเชพเชจเซเชเซเชเซเชถเชจ เชนเซเชถ เชเชพเชตเชพเชธเซเชเซเชฐเชฟเชชเซเช เชเชชเซเชฒเซเชเซเชถเชจเชฎเชพเชเชฅเซ เชเชจเชฐเซเช เชฅเชฏเซเชฒ เชเซเชฐเชพเชจเซเชเซเชเซเชถเชจ เชนเซเชถ เชธเชพเชฅเซ เชธเซเชธเชเชเชค เชฌเชจเซ.
เชฌเชฟเชฒเซเชก() เชชเชฆเซเชงเชคเชฟ เชจเซเชเซ เชชเซเชฐเชฎเชพเชฃเซ เชเซเชฐเชพเชจเซเชเซเชเซเชถเชจ เชนเซเชถ เชธเซเช เชเชฐเซ เชเซ: tx.TxHash = preByteHash(tx.ToBytes()).
ToJSON() เชธเซเชเซเชฐเชฟเชเช เชชเชฆเซเชงเชคเชฟ เชตเซเชฏเชตเชนเชพเชฐเชจเซ JSON เชธเซเชเซเชฐเชฟเชเชเชฎเชพเช เชฐเซเชชเชพเชเชคเชฐเชฟเชค เชเชฐเซ เชเซ.
FromJSON(data []byte) เชเชฐเชฐ เชชเชฆเซเชงเชคเชฟ เชฌเชพเชเช เชธเซเชฒเชพเชเชธ เชคเชฐเซเชเซ เชชเชธเชพเชฐ เชเชฐเชพเชฏเซเชฒ JSON เชซเซเชฐเซเชฎเซเชเชฎเชพเชเชฅเซ เชเซเชฐเชพเชจเซเชเซเชเซเชถเชจ เชฒเซเชก เชเชฐเซ เชเซ.
เชเซเช() เชฌเซเชฒ เชชเชฆเซเชงเชคเชฟ เชเซเชฐเชพเชจเซเชเซเชเซเชถเชจ เชนเซเชถ เชซเซเชฒเซเชกเชฎเชพเชเชฅเซ เชชเชฐเชฟเชฃเชพเชฎเซ เชนเซเชถเชจเซ เชคเซเชฒเชจเชพ เช เชเซเชฐเชพเชจเซเชเซเชเซเชถเชจเชจเซ เชนเซเชถ เชเชฐเชตเชพเชจเชพ เชชเชฐเชฟเชฃเชพเชฎเซ เชชเซเชฐเชพเชชเซเชค เชฅเชฏเซเชฒ เชนเซเชถ เชธเชพเชฅเซ เชเชฐเซ เชเซ (เชนเซเชถ เชซเซเชฒเซเชกเชจเซ เช เชตเชเชฃเซเชจเซ).
เชตเซเชฏเชตเชนเชพเชฐเซ เชฌเซเชฒเซเชเชฎเชพเช เชเชฎเซเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ:
เชฌเซเชฒเซเช เชกเซเชเชพ เชฎเชพเชณเชเซเช เชตเชงเซ เชชเซเชฐเชเชเชก เชเซ:
type Block struct {
DataType byte
BlockHeight int
Timestamp int64
HeaderSize int
PrevBlockHash string
SelfBlockHash string
TxsHash string
MerkleRoot string
CreatorPublicKey string
CreatorSig string
Version int
TxsN int
Txs []transaction.TX
}
DataType เชกเซเชเชพ เชชเซเชฐเชเชพเชฐเชจเซ เชธเชเชเซเชฐเชน เชเชฐเซ เชเซ, เชจเซเชก เชคเซเชจเซ เชเชชเชฏเซเช เชเชฐเซ เชเซ เช เชจเซ เชฌเซเชฒเซเชเชจเซ เชตเซเชฏเชตเชนเชพเชฐ เช เชฅเชตเชพ เช เชจเซเชฏ เชกเซเชเชพเชฅเซ เช เชฒเช เชชเชพเชกเซ เชเซ. เชฌเซเชฒเซเช เชฎเชพเชเซ เช เชฎเซเชฒเซเชฏ 1 เชเซ.
BlockHeight เชฌเซเชฒเซเชเชจเซ เชเชเชเชพเชเชจเซ เชธเชเชเซเชฐเชนเชฟเชค เชเชฐเซ เชเซ.
เชเชพเชเชฎเชธเซเชเซเชฎเซเชช เชเชพเชเชฎเชธเซเชเซเชฎเซเชช.
เชนเซเชกเชฐเชธเชพเชเช เช เชฌเชพเชเชเชฎเชพเช เชฌเซเชฒเซเชเชจเซเช เชเชฆ เชเซ.
PrevBlockHash เช เชชเชนเซเชฒเชพเชจเชพ เชฌเซเชฒเซเชเชจเซเช เชนเซเชถ เชเซ, เช
เชจเซ SelfBlockHash เช เชตเชฐเซเชคเชฎเชพเชจเชจเซเช เชนเซเชถ เชเซ.
TxsHash เช เชตเซเชฏเชตเชนเชพเชฐเซเชจเซเช เชธเชพเชฎเชพเชจเซเชฏ เชนเซเชถ เชเซ.
เชฎเชฐเซเชเชฒเชฐเซเช เช เชฎเชฐเซเชเชฒ เชตเซเชเซเชทเชจเซเช เชฎเซเชณ เชเซ.
เชเชเชณ เชเซเชทเซเชคเซเชฐเซเชฎเชพเช เชฌเซเชฒเซเชเชจเชพ เชจเชฟเชฐเซเชฎเชพเชคเชพเชจเซ เชธเชพเชฐเซเชตเชเชจเชฟเช เชเซ, เชจเชฟเชฐเซเชฎเชพเชคเชพเชจเซ เชธเชนเซ, เชฌเซเชฒเซเชเชจเซเช เชธเชเชธเซเชเชฐเชฃ, เชฌเซเชฒเซเชเชฎเชพเช เชตเซเชฏเชตเชนเชพเชฐเซเชจเซ เชธเชเชเซเชฏเชพ เช เชจเซ เช เชตเซเชฏเชตเชนเชพเชฐเซ เชชเซเชคเซ เช เชเซ.
เชเชพเชฒเซ เชคเซเชจเซ เชชเชฆเซเชงเชคเชฟเช เชเซเชเช:
เชฌเซเชฒเซเช เชฌเชจเชพเชตเชตเชพ เชฎเชพเชเซ, block.NewBlock() เชซเชเชเซเชถเชจเชจเซ เชเชชเชฏเซเช เชเชฐเซ: NewBlock(prevBlockHash string, height int) *Block, เชเซ เชชเชนเซเชฒเชพเชจเชพ เชฌเซเชฒเซเชเชจเซ เชนเซเชถ เชฒเซ เชเซ เช
เชจเซ เชฌเซเชฒเซเชเชเซเชจเชฎเชพเช เชฌเชจเชพเชตเซเชฒ เชฌเซเชฒเซเช เชฎเชพเชเซ เชธเซเช เชเชฐเซเชฒเซ เชเชเชเชพเช. เชฌเซเชฒเซเชเชจเซ เชชเซเชฐเชเชพเชฐ เชชเชฃ เชชเซเชเซเช เชเซเชจเซเชธเซเชเชจเซเชเชจเชพ เชชเซเชฐเชเชพเชฐเซเชฎเชพเชเชฅเซ เชธเซเช เชเชฐเซเชฒ เชเซ:
b.DataType = types.BLOCK_TYPE.
AddTx(tx *transaction.TX) เชชเชฆเซเชงเชคเชฟ เชฌเซเชฒเซเชเชฎเชพเช เชเซเชฐเชพเชจเซเชเซเชเซเชถเชจ เชเชฎเซเชฐเซ เชเซ.
เชฌเชฟเชฒเซเชก() เชชเชฆเซเชงเชคเชฟ เชฌเซเชฒเซเชเชจเชพ เชเซเชทเซเชคเซเชฐเซเชฎเชพเช เชฎเซเชฒเซเชฏเซ เชฒเซเชก เชเชฐเซ เชเซ เช เชจเซ เชคเซเชจเชพ เชตเชฐเซเชคเชฎเชพเชจ เชนเซเชถเชจเซ เชเชจเชฐเซเช เช เชจเซ เชธเซเช เชเชฐเซ เชเซ.
ToBytesHeader() []เชฌเชพเชเช เชชเชฆเซเชงเชคเชฟ เชฌเซเชฒเซเช เชนเซเชกเชฐเชจเซ (เชเซเชฐเชพเชจเซเชเซเชเซเชถเชจ เชตเชฟเชจเชพ) เชฌเชพเชเช เชธเซเชฒเชพเชเชธเชฎเชพเช เชฐเซเชชเชพเชเชคเชฐเชฟเชค เชเชฐเซ เชเซ.
ToJSON() เชธเซเชเซเชฐเชฟเชเช เชชเชฆเซเชงเชคเชฟ เชกเซเชเชพเชจเชพ เชธเซเชเซเชฐเชฟเชเช เชฐเชเซเชเชคเชฎเชพเช เชฌเซเชฒเซเชเชจเซ JSON เชซเซเชฐเซเชฎเซเชเชฎเชพเช เชฐเซเชชเชพเชเชคเชฐเชฟเชค เชเชฐเซ เชเซ.
FromJSON(data []byte) เชญเซเชฒ เชชเชฆเซเชงเชคเชฟ JSON เชฎเชพเชเชฅเซ เชกเซเชเชพเชจเซ เชฌเซเชฒเซเช เชธเซเชเซเชฐเชเซเชเชฐเชฎเชพเช เชฒเซเชก เชเชฐเซ เชเซ.
เชเซเช() เชฌเซเชฒ เชชเชฆเซเชงเชคเชฟ เชฌเซเชฒเซเช เชนเซเชถ เชเชจเชฐเซเช เชเชฐเซ เชเซ เช เชจเซ เชฌเซเชฒเซเช เชนเซเชถ เชซเซเชฒเซเชกเชฎเชพเช เชเชฒเซเชฒเซเชเชฟเชค เชธเชพเชฅเซ เชคเซเชจเซ เชคเซเชฒเชจเชพ เชเชฐเซ เชเซ.
GetTxsHash() เชธเซเชเซเชฐเชฟเชเช เชชเชฆเซเชงเชคเชฟ เชฌเซเชฒเซเชเชฎเชพเชเชจเชพ เชคเชฎเชพเชฎ เชตเซเชฏเชตเชนเชพเชฐเซเชจเซ เชเซเชฒ เชนเซเชถ เชชเชฐเชค เชเชฐเซ เชเซ.
GetMerkleRoot() เชชเชฆเซเชงเชคเชฟ เชฌเซเชฒเซเชเชฎเชพเช เชตเซเชฏเชตเชนเชพเชฐเซ เชฎเชพเชเซ เชฎเชฐเซเชเชฒ เชเซเชฐเซเชจเชพ เชฎเซเชณเชจเซ เชเชฒเซเชฒเซเช เชเชฐเซ เชเซ.
เชธเชพเชเชจ (เชชเซเชฐเชฟเชตเชเซ เชธเซเชเซเชฐเชฟเชเช) เชชเชฆเซเชงเชคเชฟ เชฌเซเชฒเซเช เชจเชฟเชฐเซเชฎเชพเชคเชพเชจเซ เชเชพเชจเชเซ เชเซ เชตเชกเซ เชฌเซเชฒเซเช เชชเชฐ เชธเชนเซ เชเชฐเซ เชเซ.
SetHeight(height int) เชชเชฆเซเชงเชคเชฟ เชฌเซเชฒเซเช เชธเซเชเซเชฐเชเซเชเชฐ เชซเซเชฒเซเชกเชฎเชพเช เชฌเซเชฒเซเชเชจเซ เชเชเชเชพเช เชฒเชเซ เชเซ.
GetHeight() int เชฎเซเชฅเชก เชฌเซเชฒเซเช เชธเซเชเซเชฐเชเซเชเชฐเชจเชพ เช เชจเซเชฐเซเชช เชซเซเชฒเซเชกเชฎเชพเช เชธเซเชชเชทเซเช เชเชฐเซเชฏเชพ เชฎเซเชเชฌ เชฌเซเชฒเซเชเชจเซ เชเชเชเชพเช เชชเชฐเชค เชเชฐเซ เชเซ.
ToGOBBytes() []เชฌเชพเชเช เชชเชฆเซเชงเชคเชฟ GOB เชซเซเชฐเซเชฎเซเชเชฎเชพเช เชฌเซเชฒเซเชเชจเซ เชเชจเซเชเซเชก เชเชฐเซ เชเซ เช เชจเซ เชคเซเชจเซ เชฌเชพเชเช เชธเซเชฒเชพเชเชธ เชคเชฐเซเชเซ เชชเชฐเชค เชเชฐเซ เชเซ.
FromGOBBytes(data []byte) เชเชฐเชฐ เชฎเซเชฅเชก GOB เชซเซเชฐเซเชฎเซเชเชฎเชพเช เชชเชพเชธ เชเชฐเซเชฒ เชฌเชพเชเช เชธเซเชฒเชพเชเชธเชฎเชพเชเชฅเซ เชฌเซเชฒเซเช เชธเซเชเซเชฐเชเซเชเชฐเชฎเชพเช เชฌเซเชฒเซเช เชกเซเชเชพ เชฒเชเซ เชเซ.
GetHash() เชธเซเชเซเชฐเชฟเชเช เชชเชฆเซเชงเชคเชฟ เชเชชเซเชฒ เชฌเซเชฒเซเชเชจเซ เชนเซเชถ เชชเชฐเชค เชเชฐเซ เชเซ.
GetPrevHash() เชธเซเชเซเชฐเชฟเชเช เชชเชฆเซเชงเชคเชฟ เช เชเชพเชเชจเชพ เชฌเซเชฒเซเชเชจเซ เชนเซเชถ เชชเชฐเชค เชเชฐเซ เชเซ.
SetPublicKey(pubk เชธเซเชเซเชฐเชฟเชเช) เชชเชฆเซเชงเชคเชฟ เชฌเซเชฒเซเช เชจเชฟเชฐเซเชฎเชพเชคเชพเชจเซ เชเชพเชนเซเชฐ เชเซเชจเซ เชฌเซเชฒเซเช เชชเชฐ เชฒเชเซ เชเซ.
เชเชฎ, เชฌเซเชฒเซเช เชเชฌเซเชเซเชเซเชเชจเซ เชชเชฆเซเชงเชคเชฟเชเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ, เช เชฎเซ เชคเซเชจเซ เชจเซเชเชตเชฐเซเช เชชเชฐ เชเซเชฐเชพเชจเซเชธเชฎเชฟเชถเชจ เช เชจเซ เชฒเซเชตเชฒเชกเซเชฌเซ เชกเซเชเชพเชฌเซเชเชฎเชพเช เชธเชพเชเชตเชตเชพ เชฎเชพเชเซ เชธเชฐเชณเชคเชพเชฅเซ เชซเซเชฐเซเชฎเซเชเชฎเชพเช เชฐเซเชชเชพเชเชคเชฐเชฟเชค เชเชฐเซ เชถเชเซเช เชเซเช.
เชฌเซเชฒเซเชเชเซเชจ เชชเซเชเซเชเชจเชพ เชเชพเชฐเซเชฏเซ เชฌเซเชฒเซเชเชเซเชจเชฎเชพเช เชฌเชเชค เชเชฐเชตเชพ เชฎเชพเชเซ เชเชตเชพเชฌเชฆเชพเชฐ เชเซ:
เช เชเชฐเชตเชพ เชฎเชพเชเซ, เชฌเซเชฒเซเชเซ IBlock เชเชจเซเชเชฐเชซเซเชธเชจเซ เช เชฎเชฒเชฎเชพเช เชฎเซเชเชตเซ เชเชตเชถเซเชฏเช เชเซ:
type IGOBBytes interface {
ToGOBBytes() []byte
FromGOBBytes(data []byte) error
}
type IBlock interface {
IGOBBytes
GetHash() string
GetPrevHash() string
GetHeight() int
Check() bool
}
เชกเซเชเชพเชฌเซเช เชเชจเซเชเซเชถเชจ เชเชเชตเชพเชฐ เชฌเชจเชพเชตเชตเชพเชฎเชพเช เชเชตเซ เชเซ เชเซเชฏเชพเชฐเซ เชชเซเชเซเช init() เชซเชเชเซเชถเชจเชฎเชพเช เชชเซเชฐเชพเชฐเชเชญ เชฅเชพเชฏ เชเซ:
db, err = leveldb.OpenFile(BLOCKCHAIN_DB_DEBUG, nil).
CloseDB() เช db.Cloce() เชฎเชพเชเซเชจเซเช เชฐเซเชชเชฐ เชเซ - เชเซ เชกเซเชเชพเชฌเซเช เชธเชพเชฅเซเชจเชพ เชเซเชกเชพเชฃเชจเซ เชฌเชเชง เชเชฐเชตเชพ เชฎเชพเชเซ เชชเซเชเซเช เชเชพเชฐเซเชฏเซ เชธเชพเชฅเซ เชเชพเชฎ เชเชฐเซเชฏเชพ เชชเชเซ เชเชนเซเชตเชพเชฏ เชเซ.
SetTargetBlockHash(hash string) เชเชฐเชฐ เชซเชเชเซเชถเชจ เชกเซเชเชพเชฌเซเชเชฎเชพเช BLOCK_HASH เชเซเชจเซเชธเซเชเชจเซเช เชฆเซเชตเชพเชฐเชพ เชจเชฟเชฐเซเชฆเชฟเชทเซเช เชเซ เชตเชกเซ เชตเชฐเซเชคเชฎเชพเชจ เชฌเซเชฒเซเชเชจเชพ เชนเซเชถเชจเซ เชฒเชเซ เชเซ.
GetTargetBlockHash() (เชธเซเชเซเชฐเชฟเชเช, เชเชฐเชฐ) เชซเชเชเซเชถเชจ เชกเซเชเชพเชฌเซเชเชฎเชพเช เชธเชเชเซเชฐเชนเชฟเชค เชตเชฐเซเชคเชฎเชพเชจ เชฌเซเชฒเซเชเชจเซ เชนเซเชถ เชชเชฐเชค เชเชฐเซ เชเซ.
SetTargetBlockHeight(height int) เชเชฐเชฐ เชซเชเชเซเชถเชจ เชกเซเชเชพเชฌเซเช เชชเชฐ BLOCK_HEIGHT เชเซเชจเซเชธเซเชเชจเซเช เชฆเซเชตเชพเชฐเชพ เชเชฒเซเชฒเซเชเชฟเชค เชเซ เชธเชพเชฅเซ เชจเซเชก เชฎเชพเชเซ เชฌเซเชฒเซเชเชเซเชจ เชเชเชเชพเชเชจเซเช เชฎเซเชฒเซเชฏ เชฒเชเซ เชเซ.
GetTargetBlockHeight() (int, error) เชซเชเชเซเชถเชจ เชกเซเชเชพเชฌเซเชเชฎเชพเช เชธเชเชเซเชฐเชนเชฟเชค เชเชชเซเชฒ เชจเซเชก เชฎเชพเชเซ เชฌเซเชฒเซเชเชเซเชจเชจเซ เชเชเชเชพเช เชชเชฐเชค เชเชฐเซ เชเซ.
เชเซเชเชฌเซเชฒเซเช (เชฌเซเชฒเซเช เชเชเชฌเซเชฒเซเช) เชฌเซเชฒ เชซเชเชเซเชถเชจ เช เชฌเซเชฒเซเชเชจเซ เชฌเซเชฒเซเชเชเซเชจเชฎเชพเช เชเชฎเซเชฐเชคเชพ เชชเชนเซเชฒเชพ เชเซเชเชธเชพเช เชฎเชพเชเซ เชฌเซเชฒเซเช เชคเชชเชพเชธเซ เชเซ.
AddBlock(block IBlock) เชเชฐเชฐ เชซเชเชเซเชถเชจ เชฌเซเชฒเซเชเชเซเชจเชฎเชพเช เชฌเซเชฒเซเช เชเชฎเซเชฐเซ เชเซ.
เชฌเซเชฒเซเชเซเชธ เชชเซเชจเชเชชเซเชฐเชพเชชเซเชค เชเชฐเชตเชพ เช เชจเซ เชเซเชตเชพ เชฎเชพเชเซเชจเชพเช เชเชพเชฐเซเชฏเซ เชฌเซเชฒเซเชเชเซเชจ เชชเซเชเซเชเชจเซ explore.go เชซเชพเชเชฒเชฎเชพเช เชเซ:
GetBlockByHash(hash string) (*block.Block, error) เชซเชเชเซเชถเชจ เชเช เชเชพเชฒเซ เชฌเซเชฒเซเช เชเชฌเซเชเซเชเซเช เชฌเชจเชพเชตเซ เชเซ, เชกเซเชเชพเชฌเซเชเชฎเชพเชเชฅเซ เชคเซเชฎเชพเช เชเช เชฌเซเชฒเซเช เชฒเซเชก เชเชฐเซ เชเซ, เชเซเชฎเชพเชเชฅเซ เชนเซเชถ เชคเซเชจเซ เชชเชธเชพเชฐ เชเชฐเชตเชพเชฎเชพเช เชเชตเซเชฏเซ เชนเชคเซ, เช เชจเซ เชคเซเชจเชพ เชชเชฐ เชเช เชชเซเชเชจเซเชเชฐ เชชเชฐเชค เชเชฐเซ เชเซ.
เชฌเซเชฒเซเชเชเซเชจ เชชเซเชเซเชเชจเซ genesis.go เชซเชพเชเชฒเชฎเชพเชเชฅเซ Genesis() เชเชฐเชฐ เชซเชเชเซเชถเชจ เชฆเซเชตเชพเชฐเชพ เชเชฟเชจเซเชธเชฟเชธ เชฌเซเชฒเซเชเชจเซเช เชจเชฟเชฐเซเชฎเชพเชฃ เชนเชพเชฅ เชงเชฐเชตเชพเชฎเชพเช เชเชตเซ เชเซ.
เชเชเชณเชจเซ เชฒเซเช WebSocket เชฎเชฟเชเซเชจเชฟเชเชฎเชจเซ เชเชชเชฏเซเช เชเชฐเซเชจเซ เชเซเชฒเชพเชฏเชเชเชจเซ เชจเซเชก เชธเชพเชฅเซ เชเชจเซเชเซเช เชเชฐเชตเชพ เชตเชฟเชถเซ เชตเชพเชค เชเชฐเชถเซ.
เชธเซเชฐเซเชธ: www.habr.com