浅谈比特币的网络完全性问题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
浅谈比特币的网络安全问题
孟凡伟
摘要:基于P2P网络的各类应用逐渐占据了互联网应用中的重要地位,其采用的分布式结构在提供可扩展性和灵活性的同时,也面临着巨大的安全风险和挑战。而比特币的正是基于
P2P网络产生的一种虚拟货币,因此其网络安全性问题也面临着巨大的风险和挑战。本文重点从P2P网络的安全问题来分析比特币所面临的风险。
关键词:比特币;P2P网络;僵尸网络;网络安全
Abstract:The applications based on P2P networks have been playing an important role in the Internet.P2P networks with the distributed architecture are scalable and flexible while they are facing the enormous security challenges.Bitcoin is a virtual currency based on P2P network, therefore the network security of Bitcoin faced the enormous security challenges as well. This paper focuses on security issues from P2P networks to analyze the risks faced by Bitcoin. Keywords:Bitcoin;P2P Networks;Botnet;Network security
1引言
近年来,随着P2P(peer to peer)技术的日趋成熟,基于P2P网络的各种应用系统不断涌现和壮大。,P2P技术在数据存储、数据库管理、web搜索、网络缓存、网络电话等诸多领域都有重要应用。这些P2P网络系统在人们的网络体验中扮演了越来越重要的角色,甚至对人们的生活习惯乃至思维模式都具有不可忽视的作用[1]。
比特币(bitcoin)就是基于P2P网络产生的一种虚拟货币。比特币是一种新型的虚拟货币,由加密算法生成,通过网络在持有者之间流通[2]。比特币以开放、对等、共识、直接参与的理念,结合开源软件和密码学中块密码的工作模式,在P2P对等网络和分布式数据库平台上,开发发行、交易和账户管理的操作系统。该系统让整个对等网络用户端的各个节点,按照种子文件达成网络协议,保证货币在发行、管理、流通等环节中的公平、安全和可靠。
[3]
虽然比特币有着无发行中心、去中心化在流通中保证公平等优点,但是由于其本事的交易是基于P2P网络的,因此其所面临的的安全问题很大程度上也正是P2P网络所面临的安全问题。
P2P技术在自身发展与完善的同时,对全球的经济、政治、军事与文化都产生了重要影响,同时面临着来自多个方面的安全威胁。首先,P2P应用已经形成了一个完善的产业,许多IT服务公司利用P2P网络技术开发新产品,并实现了盈利;但是,P2P技术对传统版权管理机制的重大冲击使得传统经济实体的利益受损,而使其不断投入资金研发反P2P技术。其次,P2P应用对网络流量的大量占用,使其成为网络服务提供商(IsP,Intemet Service Provider)的众矢之的,ISP也不断研发各种技术来过滤P2P流量。再次,由于P2P技术的无服务器特征,其共享信息可能涉及违法内容(如色情、暴力音像、军事、政治机密等),但却极易被无限制地传播,政府部门需要对其进行有效监管。另一方面,P2P技术的支持者一直在致力于研究各种有效手段,在保证其提供分布式服务的同时,提高其可靠性和安全性。
基于上述原因,近年来,P2P网络安全成为了一个新的研究热点。P2P技术存在的安全缺陷为网络攻击者提供了各种各样的机会。P2P网络面临的一些主要安全威胁有:由信息共享导致的知识产权纠纷、路由攻击、存取攻击、行为不一致攻击、目标节点过载攻击、穿越防火墙以及新型网络病毒的传播。
目前,P2P网络在科研、教育、军事等领域都有大规模的应用,然而P2P网络因其每个节点具有多重角色(客户机、服务器和路由器)、网络自身的灵活性以及P2P网络自身的安全漏洞等,为僵尸的大范围传播提供了便利条件。 [4]
2比特币的原理
比特币的原理是:比特币开发者开发出来最原始的区块,并赋予每个区块一定数量的比特币,作为对后来参与者的奖励;后来参与者通过客户端,按照种子文件达成网络协议,成为新的节点,然后参加特定的计算和验证,产生新的区块;最后新节点获得比特币作为奖励,比特币网络逐渐壮大。
新区块产生的过程是:节点客户端运行计算软件,通过寻找一个最小的散列值创建一个新版块。想要制造出比特币,需要成为网络中第一个创造出新版块的人,并将新版块向整个网络公布,网络上的其他人均可对其进行检查。如果通过验证,则可获得比特币,但如果10 分钟内被他人抢先完成,前面的计算作废,需重新再创建一个版块。
寻找最小散列值的过程是:新节点基于P2P网络、数字签名、密码学证据发起和验证交易。然后,节点向网络广播该交易,该交易经过其他节点验证和确认后的交易会被打包到数据块中,数据块会串起来形成连续的数据块链。每个节点都会收集所有尚未确认的交易,并将其归集到一个数据块中,这个数据块会和前面一个数据块集成在一起。节点们会附加一个随机调整数,并计算前一个数据块的SHA-256哈希运算值。新节点不断重复进行尝试,直到找到的随机调整数使得产生的哈希值低于某个特定目标。由于哈希运算是不可逆的,寻找到符合要求的随机调整数非常困难,需要一个可以预计总数的不断试错过程。当一个节点找到了符合要求的解,那么它就可以向全网广播自己的结果。其他节点就可以接收这个新解出来的数据块,并检验其是否符合规格。如果其他节点通过计算哈希值发现确实满足要求,那么该数据块有效,其他节点便会接受该数据块,并将其附加在自己已有的链条之后。[3]
3 P2P网络综述
P2P网络是一种分布式网络,在这种网络中所有的节点是对等的,各节点具有相同的责任与能力以协同完成任务,每一个节点既能充当网络服务的请求者,又能对其他节点的请求做出响应。对等节点之间通过直接互联共享信息资源、处理器资源、存储资源甚至高速缓存资源等,无须依赖集中式服务器。
P2P网络一般具有如下特点:
a)非中心化。网络中的资源和服务分散在所有节点上,信息的传输和服务的实现都直接在节点之间进行。
b)可扩展性。在P2P网络中,随着用户的加入,不仅服务的需求增加了,系统整体的资源和服务能力也在同步地扩展,理论上其扩展性几乎可以认为是无限的。
c)健壮性。由于服务是分散在各个节点之间进行的,部分节点在遭到破坏时对其它部分的影响很小。
d)隐私保护。在P2P网络中,由于信息的传输分散在各节点之间进行,而无需经过某个特定的中间环节,大大降低了用户的隐私信息被窃听和泄漏的可能性。
e)负载均衡。在P2P网络环境下,由于每个节点既是服务器又是客户机,减少了对传统c/s结构服务器计算能力、存储能力的要求,资源分布在多个节点,更好地实现了整个网络的负载均衡。
与传统c/s模式相比,P2P网络弱化了服务器的功能,甚至取消了服务器。所有P2P 节点在逻辑上是对等的,每个节点既充当服务器,为其他节点提供服务,也充当客户端,享用其他节点提供的服务。网络节点越多,P2P网络的性能就越好、稳定性就越高。图1图2分别给出了P2P系统和c/s系统的结构示意图。