草庐IT

区块链是如何重构社会信任关系的?

方塘书社 2023-03-28 原文
文丨黄艳芳(方塘智库科创中国研究中心实习研究员)

简言之,区块链可以分解为“区块”和“链”两部分,我们可以将其理解为由区块构成的一条链。其中,区块可分为区块头和区块体,区块头记录前一个区块的加密数据并为数据加盖时间戳,就像发票代码一样。区块体保存区块所有的交易内容,如同发票上的明细。一个个区块相连,形成一个链,这个链就是区块链。

区块链是一个可信的分布式数据库,其网络是基于安全的密码技术运作的,具有分布式、难以篡改两大核心机制。分布式和难以篡改的性质保证了区块链的“诚实”与“透明”,这是区块链能够创造信任的基础。

区块链之所以得到快速的推广并向着广泛普及的方向不断推进,与其针对社会信任关系的重构有直接而密切的关系。

信任问题在人类社会发展中占据重要地位,德国社会学家齐美尔指出,信任是社会中最重要的综合力量之一。但在社会发展进程中,信任危机愈演愈烈,亟需找到重构信任的出路。

从重构信任关系的角度来看,区块链技术的进一步应用,可谓恰逢其时。区块链正在悄悄改变社会的交易方式、生产效率和人际关系,其核心价值不在于计算机技术,而是链接各行业,让数据经济时代没有信任难题。

《区块链:看得见的信任》这本出版于2019年的书,前瞻性地展望了区块链技术的应用场景及其未来的发展趋势,阐释了现代社会的信任难题,并结合案例提出区块链技术重构社会信任的路径。

一、数字时代的社会信任危机

德国社会学家尼可拉斯·卢曼将农业社会和工业社会状态下的信任分为人际信任和系统信任。人际信任是基于熟悉的信任,中国传统社会的信任就是典型的人际信任。

但这种建立在“熟人”基础上的信任,有着天然的局限性,因为每个人能够认识且熟悉的人数是有限的。

另外,在基于地缘和血缘的“熟人”社会,信任更多地体现了人与人之间的情感纽带。但从个人交往角度来说,很多时候都是知人知面不知心,此时的信任在很大程度上是一种情感认同,因为缺乏必要的数据而无从推理,更没有制度上的保障。

随着科技的发展、社会的进步,工业化、城市化、信息化接踵而来,以地域和血缘为纽带的社群被打破,系统信任取代人际信任。

系统信任是工业社会状态下的信任,高效率的、大规模的社会分工协作,在社会各个方面成就了一批令人信服的机构,这些机构有着无比强大的公信力,充当着“陌生人”之间的信任中介。例如消费者不相信商家,觉得商家会弄虚作假,所以他们更倾向于信任第三方检测机构。

在“陌生人”社会,理性权衡成为信任关系中的主要成分。人们在利用制度或机构保护自己的同时,也可以从不同的机构得到其他对象的大量数据,从而仔细进行利弊分析,最后判断风险的大小。

但是,在大数据时代,人们仍无法完全基于理性分析信任。因为很多机构都不完全透明,难免存在暗箱操作。人们获取的对方信息总是片面的、不完整的,加上自身逻辑推论难免有缺陷,所以在做出信任决定的最后时刻,不得不求助于情感。信任一旦求助情感,就意味着我们被伤害的风险依然存在。

此外,随着科技的进一步发展,特别是互联网的普及,信任遭到更大的挑战。在互联网时代,个体的精神和肉体都禁锢在自己的舒适圈。同时,新技术赋能的商业主体穷尽所能,迎合和营造舒适区,构成了强大的外部力量。内外结合使得每个人只愿意接触和自己价值观相同的人,远离那些价值观不同的人,社会更加碎片化,导致原本基于社会协作的系统信任被动摇,所以人们必须重新找到信任的基础。

于是,重塑社会信任就变成了一个越来越重要的社会治理问题,当然,也是一个非常明显的技术问题。

二、数据共享是重构社会信任关系的关键

信任由最初的基于“熟人”进化成基于“制度”,最终将演变成基于“技术”的信任。现在,随着社会网络向虚拟网络的进一步迁移,社会信任有可能完全基于信息技术,而区块链正是其核心技术,通过区块链技术的应用,建立在信任基础上的一切将会获得跨越式的发展。

那么,区块链技术对社会信任关系的重构是如何发生的呢?

首先,及时验证,保证数据真实。在区块链的世界里,任何一个现实社会的机构,都可以用网络里的节点进行表达。所有节点数据的输入与输出,以及体现运营规则的智能合约,都得到了网络的验证,没有获得认证的信息,无法在网络中传播。所以,在区块链网络世界里,每个节点的信息都是真实的。如果节点的所有行为都在区块链网络中进行,那么数据将得到及时验证,永久储存。

在区块链网络中,每个节点的信息一旦上链,将难以篡改。比如,在医疗健康领域,区块链可以完整记录包含生命体征、医生诊断、康复情况等在内的全周期治疗信息,这些信息无法删除,会被永久保存,且难以篡改,这将有助于重塑医生与病人及医疗机构之间的信任。

其次,信任量化,评估客观度极高。区块链网络可以调用某节点的所有信息,计算该节点的可信度。更重要的是,计算信用的算法是公开透明的。这种完全客观的计算,杜绝了现实世界里评估每个节点可信度的主观性。因此,在区块链网络里,一个节点对另一个节点的信任没有掺杂半点感情色彩,也不需要理性的衡量,只是节点的数据通过特定算法得到的某个数值。信任不再是情感表达,只是数学的表达。

近年来陆续有疫情诈捐、善款挪用的报道,究其原因,还是事实不清,信息不透明。公益组织善款使用不完全透明,捐赠方对善款去向产生担忧。民众担忧善款的使用是否合法,善款是否真正落到了需要帮助的人手里,这些都会影响爱心人士对公益组织的信任。

区块链在公益领域的应用能有效解决以上这些信任难题。区块链上整个捐赠过程的信息是透明的,数据上链的同时进行加密,并加盖时间戳,用户的每一次操作内容和时间都会生成区块,记录在链上,用户可以查阅任何一位捐款者的捐款时间、款项转移时间,追溯善款是否落实到位。区块链的应用将信任量化、数据化,确保整个捐款流程更具有可信性。

第三,智能合约自动执行,无条件信任。区块链上的智能合约是用计算机程序语言编写的,一旦满足合同的预定要求,将在计算机上自动执行。传统交易过程由于信任严重不对等,缔约双方签订的合约很可能成为霸王条款,所以需要第三方机构担任“信任”中介,但这不能完全消除双方对信任的担忧。

智能合约的引入不需要求助第三方机构作为“信任中介”。这是因为区块链技术将信任量化,交易双方无论处在哪条区块链上,都可以轻松获得对方的信用值,从而决定是否进行交易,双方缔约时的信任成本趋于零。此外,智能合约的应用能够在不影响真实性和可信度的情况下,减少付款延迟、错误的风险,这些都将大幅提升交易可信度。

区块链将信任数字化和量化,以网络为边界,以代码为载体,以数据和算法为依据,是重构社会信任的利器。

但需要注意的是,区块链要重构信任,数据共享至关重要。作者在书中提到,虽然物联网正在蓬勃发展,但是现实社会普及物联网仍需时日。在未来相当长一段时间内,区块链只可能得到有关节点的部分数据,信任计算也基于已获得的数据进行。因此,实现各类外部系统和链与链之间的数据共享以及跨链操作,是保证区块链重构信任的基础。

有关区块链是如何重构社会信任关系的?的更多相关文章

  1. ruby - 如何使用 Nokogiri 的 xpath 和 at_xpath 方法 - 2

    我正在学习如何使用Nokogiri,根据这段代码我遇到了一些问题:require'rubygems'require'mechanize'post_agent=WWW::Mechanize.newpost_page=post_agent.get('http://www.vbulletin.org/forum/showthread.php?t=230708')puts"\nabsolutepathwithtbodygivesnil"putspost_page.parser.xpath('/html/body/div/div/div/div/div/table/tbody/tr/td/div

  2. ruby - 如何从 ruby​​ 中的字符串运行任意对象方法? - 2

    总的来说,我对ruby​​还比较陌生,我正在为我正在创建的对象编写一些rspec测试用例。许多测试用例都非常基础,我只是想确保正确填充和返回值。我想知道是否有办法使用循环结构来执行此操作。不必为我要测试的每个方法都设置一个assertEquals。例如:describeitem,"TestingtheItem"doit"willhaveanullvaluetostart"doitem=Item.new#HereIcoulddotheitem.name.shouldbe_nil#thenIcoulddoitem.category.shouldbe_nilendend但我想要一些方法来使用

  3. python - 如何使用 Ruby 或 Python 创建一系列高音调和低音调的蜂鸣声? - 2

    关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。

  4. ruby-on-rails - 如何验证 update_all 是否实际在 Rails 中更新 - 2

    给定这段代码defcreate@upgrades=User.update_all(["role=?","upgraded"],:id=>params[:upgrade])redirect_toadmin_upgrades_path,:notice=>"Successfullyupgradeduser."end我如何在该操作中实际验证它们是否已保存或未重定向到适当的页面和消息? 最佳答案 在Rails3中,update_all不返回任何有意义的信息,除了已更新的记录数(这可能取决于您的DBMS是否返回该信息)。http://ar.ru

  5. ruby-on-rails - 'compass watch' 是如何工作的/它是如何与 rails 一起使用的 - 2

    我在我的项目目录中完成了compasscreate.和compassinitrails。几个问题:我已将我的.sass文件放在public/stylesheets中。这是放置它们的正确位置吗?当我运行compasswatch时,它不会自动编译这些.sass文件。我必须手动指定文件:compasswatchpublic/stylesheets/myfile.sass等。如何让它自动运行?文件ie.css、print.css和screen.css已放在stylesheets/compiled。如何在编译后不让它们重新出现的情况下删除它们?我自己编译的.sass文件编译成compiled/t

  6. ruby - 如何将脚本文件的末尾读取为数据文件(Perl 或任何其他语言) - 2

    我正在寻找执行以下操作的正确语法(在Perl、Shell或Ruby中):#variabletoaccessthedatalinesappendedasafileEND_OF_SCRIPT_MARKERrawdatastartshereanditcontinues. 最佳答案 Perl用__DATA__做这个:#!/usr/bin/perlusestrict;usewarnings;while(){print;}__DATA__Texttoprintgoeshere 关于ruby-如何将脚

  7. ruby - 如何指定 Rack 处理程序 - 2

    Rackup通过Rack的默认处理程序成功运行任何Rack应用程序。例如:classRackAppdefcall(environment)['200',{'Content-Type'=>'text/html'},["Helloworld"]]endendrunRackApp.new但是当最后一行更改为使用Rack的内置CGI处理程序时,rackup给出“NoMethodErrorat/undefinedmethod`call'fornil:NilClass”:Rack::Handler::CGI.runRackApp.newRack的其他内置处理程序也提出了同样的反对意见。例如Rack

  8. ruby - 如何每月在 Heroku 运行一次 Scheduler 插件? - 2

    在选择我想要运行操作的频率时,唯一的选项是“每天”、“每小时”和“每10分钟”。谢谢!我想为我的Rails3.1应用程序运行调度程序。 最佳答案 这不是一个优雅的解决方案,但您可以安排它每天运行,并在实际开始工作之前检查日期是否为当月的第一天。 关于ruby-如何每月在Heroku运行一次Scheduler插件?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8692687/

  9. ruby-on-rails - 如何从 format.xml 中删除 <hash></hash> - 2

    我有一个对象has_many应呈现为xml的子对象。这不是问题。我的问题是我创建了一个Hash包含此数据,就像解析器需要它一样。但是rails自动将整个文件包含在.........我需要摆脱type="array"和我该如何处理?我没有在文档中找到任何内容。 最佳答案 我遇到了同样的问题;这是我的XML:我在用这个:entries.to_xml将散列数据转换为XML,但这会将条目的数据包装到中所以我修改了:entries.to_xml(root:"Contacts")但这仍然将转换后的XML包装在“联系人”中,将我的XML代码修改为

  10. ruby - 如何使用文字标量样式在 YAML 中转储字符串? - 2

    我有一大串格式化数据(例如JSON),我想使用Psychinruby​​同时保留格式转储到YAML。基本上,我希望JSON使用literalstyle出现在YAML中:---json:|{"page":1,"results":["item","another"],"total_pages":0}但是,当我使用YAML.dump时,它不使用文字样式。我得到这样的东西:---json:!"{\n\"page\":1,\n\"results\":[\n\"item\",\"another\"\n],\n\"total_pages\":0\n}\n"我如何告诉Psych以想要的样式转储标量?解

随机推荐