码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 长安链fact示例合约statedb存储数据原文带有cmecv1.0原因分析


    现象描述

    长安链在部署fact示例合约后,无论是rust语言还是go语言版本,当发起数据上链,也就是调用合约中的save方法后,存储到statedb中的世界状态数据会多出cmecv1.0数据,其中time的值在自己拷贝出DB中的数据通过String转换后还显示不出来。

    比如采用mysql数据库存储statedb时,通过navicat工具查看到的数据如下:

     采用levelDB数据库存储statedb时,通过自己编写工具查看到的数据如下:

     cmecv1.0��������            file_hash       57489dd0d217460b9e4220fa2ecc6639              file_name   &   9979e39f4e7fb34a21ed832bec7fc7b0132213      time       ��V 

    这是直接通过查看数据库的value值所看到的现象,但是通过sdk去查询合约,返回的结果值确实原来我们上链的数据原文。另外仔细看一下mysql数据库存储的object_key值也会发现多了一个前缀,后缀是file_hash的原文值。

    原因分析

    既然是官方的demo,那么产生这样结果肯定是有原因的。我们不妨稍微猜测一下作者的目的。我们知道数据库存数据有一个天然的易修改特性,但是区块链是可防篡改的,但是这也是基于共识算法。说的防篡改,实际上是在基于共识算

  • 相关阅读:
    遍历执行存放Linux命令的文件,并将命令执行结果保存到一个文本里面
    DevEco Studio如何安装中文插件
    RabbitMQ小结
    Linux内核驱动开发-001字符设备开发-内核中断驱动独立按键
    稳压二极管的应用及注意事项
    MYSQL索引解析
    全网首发克莱斯勒东南大捷龙jeep道奇DIY数码碟盒增加USB和蓝牙播放音乐功能使用原车接口无损改装
    Firefox Focus,一个 “专注“ 的浏览器
    Git 教程详解
    EAV模型(实体-属性-值)的设计和低代码的处理方案(2)--数据的查询处理
  • 原文地址:https://blog.csdn.net/h363659487/article/details/126182883
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号