zoukankan      html  css  js  c++  java
  • 浅谈区块链技术

    背景

    随着比特币被越来越多的国家使用,它最基础的技术区块链也被人提及起来,那么这门技术有哪些新的理念呢?

    首先是基于货币的技术,安全肯定是第一位的,区块链采用分布式架构将账本数据存储到每个节点上,且每个节点的账本数据都是完整的。没有人可以同时摧毁整个节点。

    说白了区块链的本质就是 一门数据库技术,具体来讲是一门账本技术。

    在这里主要讨论区块链在三个方面的独特性:去中心和去中介、隐私保护、时间戳。

    中心和去中介:

    一个去中心化的系统,没有一个中央的、至上而下的控制主体,而完全是由大量相互联结看似无组织的小个体构成,这些个体有一定的独立性,可以相互作用,它们自发地形成一个整体以后,由量变引起质变,结果整体的能力、智慧、适应性和灵活性,都大大超过了个体的简单相加。

    这样的去中心化系统生命力极强,遭到破坏可以自我修复,因而很难被完全摧毁。

    互联网就是一个典型去中心化的例子,极强的适应性和抗破坏性是互联网的根本。不过如今的互联网却有了中心化的趋势。

    去中心和去中介有多种不同层次,可以体现在业务模式、业务数据的产生和传播、应用系统的架构、应用系统的开发、运行、维护、升级等方面。比特币和区块链是一种比较彻底的去中心和去中介应用,它包含以下几种去中心和去中介技术:

    • 点对点网络(P2P network)

    • 去中心化数据库

    • 去中心化应用(Decentralized App,简称 DApp)

    • 共识算法

    隐私保护:

    个人隐私信息泄露在中国是一个非常严重的现象。

    盗取、贩卖个人信息已经有完整的黑市产业链,部分互联网征信和数据公司,从黑市上购买数据,甚至雇佣黑客盗取数据。互联网用户普遍意识到个人隐私信息的重要,对隐私保护的要求会更高。程序员有责任从技术上加强个人隐私的保护。

    在传统的应用架构设计中,隐私保护或者安全性设计的优先级并不是很高,现在这种情况必须有所改变,架构师需要提升隐私保护设计的优先级。

    区块链应用领域采用了很多密码学的技术,例如哈希算法、加密算法、公钥密码学、默克尔树、和零身份证明。

    Bitcoin 在保护用户身份方面,使用哈希过的公钥作为个人账号,这样在交易时隐藏了个人信息。另外,个人账号可以设计成一次性的,每次交易都使用新账号,这样就很难通过追踪某个账号的交易来推测用户身份。Bitcoin 的总帐是公开的,上面每笔交易记录包含付费账号、收费账号以及转账金额。

    如果觉得这样的隐私保护还不够,另一个数字货币 Zcash 在 Bitcoin 之上增加了一些协议,将付费账号、收费账号以及转账金额都隐藏了起来,采用的方法仍然是加密、哈希、默克尔树和零知识证明。

    时间戳:

    传统关系型数据库在设计表时一般会有一个或多个时间戳(timestamp)字段,用来标记一行记录添加或修改时的时间。

    基本上,这些时间戳是给应用内部使用的。当数据被共享给其他应用时,这些时间戳并没有多大意义,因为时间戳可以伪造。

    在数据黑市上,一个数据掮客可以将一份银行 VIP 客户数据进行注水,掺入一半的假数据。

    一家保险公司为了搅乱市场上竞争对手的视线,故意污染数据,将高净值用户放入骗保用户黑名单,将骗保用户放入高净值用户名单,然后让污染后的数据故意泄露出去。

    如果每条数据都带有一个真实可信的时间戳(这条数据产生的真实时间点),这样的造假行为就比较难奏效,因为假数据的时间戳一般都是最近的。

    以前我们很少关心数据的时间戳,很少去了解时间戳对数据的意义,一个原因也许是我们不知道如何用技术去实现这样的时间戳。

    如果技术实现完全可行,那么这个时间戳对我们来说就有了全新的意义。

    希望这篇文章对大家了解区块链有所帮助。

  • 相关阅读:
    PatentTips
    PatentTips
    PatentTips
    Xvisor ARM32 启动分析
    PatentTips
    PatentTips
    PatentTips
    PatentTips
    PatentTips
    PatentTips
  • 原文地址:https://www.cnblogs.com/pzyin/p/8405399.html
Copyright © 2011-2022 走看看