blockChain_Server

所属分类:区块链开发
开发工具:Java
文件大小:1497KB
下载次数:0
上传日期:2018-06-13 13:41:08
上 传 者sh-1993
说明:  blockChain_Server,区块链中心服务器的JAVA实现
(blockChain_ JAVA Implementation of Server, Blockchain Center Server)

文件列表:
.idea (0, 2018-06-13)
.idea\artifacts (0, 2018-06-13)
.idea\artifacts\blockC_war.xml (510, 2018-06-13)
.idea\artifacts\blockC_war_exploded.xml (1225, 2018-06-13)
.idea\encodings.xml (438, 2018-06-13)
.idea\libraries (0, 2018-06-13)
.idea\libraries\Java_EE_6_Java_EE_6.xml (759, 2018-06-13)
.idea\misc.xml (273, 2018-06-13)
.idea\modules.xml (252, 2018-06-13)
.idea\vcs.xml (180, 2018-06-13)
blockC.iml (1870, 2018-06-13)
lib (0, 2018-06-13)
lib\javax.annotation.jar (7713, 2018-06-13)
lib\javax.ejb.jar (47581, 2018-06-13)
lib\javax.jms.jar (25957, 2018-06-13)
lib\javax.persistence.jar (129793, 2018-06-13)
lib\javax.resource.jar (44511, 2018-06-13)
lib\javax.servlet.jar (69933, 2018-06-13)
lib\javax.servlet.jsp.jar (78836, 2018-06-13)
lib\javax.servlet.jsp.jstl.jar (28120, 2018-06-13)
lib\javax.transaction.jar (9714, 2018-06-13)
src (0, 2018-06-13)
src\cn (0, 2018-06-13)
src\cn\itcast (0, 2018-06-13)
src\cn\itcast\dao (0, 2018-06-13)
src\cn\itcast\dao\UserDao.java (862, 2018-06-13)
src\cn\itcast\dao\impl (0, 2018-06-13)
src\cn\itcast\dao\impl\UserDaoImpl.java (10857, 2018-06-13)
src\cn\itcast\domain (0, 2018-06-13)
src\cn\itcast\domain\Block.java (1055, 2018-06-13)
src\cn\itcast\domain\ProblemBlock.java (1050, 2018-06-13)
src\cn\itcast\domain\User.java (930, 2018-06-13)
src\cn\itcast\exception (0, 2018-06-13)
src\cn\itcast\exception\UserExistException.java (750, 2018-06-13)
src\cn\itcast\junit (0, 2018-06-13)
src\cn\itcast\junit\test (0, 2018-06-13)
src\cn\itcast\junit\test\ServiceTest.java (1019, 2018-06-13)
src\cn\itcast\junit\test\UserDaoTest.java (1658, 2018-06-13)
... ...

# blockChain_Server 区块链中心服务器的JAVA实现 服务端:一个servlet负责用httpURLconnenct接收请求,请求参数为一个数字,是客户端计算出的hash值,和其余信息。然后服务端读取xml文件的最后一个值,并且计算hash是不是当前参数的值,如果是,则将当前值所包含的所有信息添加到xml文件的最后一个节点,如果不是,则通知客户端未同步,并强制客户端同步数据。 客户端:不需要成为一个公网服务器,只需要安装Tomcat,哈希的计算在客户端本地进行,中心服务器负责进行验证,所以客户端无法在区块信息上作弊。 中心服务器:要求成为一个公网服务器,有固定的公网IP地址,有足够大的容量,计算能力和带宽。 中心服务器奖励:每次为客户端添加一个区块后,为该客户端服务的中心服务器会获得一定的奖励,并广播到所有节点上。 中心服务器信誉:每次为客户端添加区块,或者客户端要求添加区块后,都会对所有的中心服务器进行一次区块对比操作,选择随机的两个区块,测试该区块以及该区块前后两个区块的哈希,这样,大部分中心服务器的区块信息都是一样的,如果出现有中心服务器对哈希进行篡改,则认为该服务器信誉程度下降,给予扣除一定的信誉值并广播到所有节点。信誉值过低的服务器的IP会自动的被踢出网络,并进入网络黑名单,其所有的账户会被封锁。 要想重新改写整个区块的网络,必须同时控制百分之90以上的中心服务器,并同时修改数据为一致。 应对网络攻击:每次中心服务器同步的时候,需要百分之九十以上的中心服务器数据是同步的,如果不满足这个条件,就需要中心服务器去找用户节点同步数据。如果用户开启了区块备份功能,则会在中心服务器记住一份相应的用户地址,并通过多个用户节点进行同步,等所有的中心服务器同步完成后,然后在中心服务器网络中继续同步。开启了数据备份的用户,每次被中心服务器使用备份都可以获得一定的奖励。

近期下载者

相关文件


收藏者