论文部分内容阅读
随着社会的进步与计算机信息技术的发展,个人信息指数级的增长,个人信息的数字化是必然的趋势,各个行业的信息系统存储着相关的个人信息与个人活动。如公安部存储着我们的身份信息、社保局存储我们的社保信息、学信网存储我们的学籍信息。然后分散的个人信息并不方便个人信息的管理,因而,统一的信息平台是需要的,必须的。但是,目前并不存在一个统一的信息平台来管理不同类别的个人信息。因为一个中心化的组织或商业机构来推动信息的整合成本太大且面临着信任问题,难以获得使用者的信赖,同时,信息真假的辨别也是一个需要被解决的问题。因而,需要一个信息可证明,不需要依赖一个可信任的机构来完成这样的需求和业务场景。区块链是近年大热的技术,依托于分布式链式结构的账本系统,具有去中心化、去信任、不可篡改、可追溯等特点,能有效解决中心化系统的信任问题及数据有效性的保证问题。区块链来源于比特币,但随着越来越多的研究与技术进步,区块链技术被应用于众多行业,在金融、信托、物联网等行业有着广泛的前景。本论文借助区块链的不可篡改,自证其信的特点,构建一个去中心化的存证系统。本文旨在利用区块链的交易来存储个人的存证信息,解决现有中心化存证系统的问题。系统分为普通用户与机构用户两种角色,每一个用户对应一个区块链地址,通过用户之间的不同交易类型来分别存证与审核交易。同时,引入加密技术对存证信息进行加密处理,既包括了三方机构的审核,也能保护用户的隐私数据,区块链的自证其信保证了数据的可靠性。使用区块链作为存储的本系统将避免现今各存证系统的问题,将具有确切的落地场景与广泛的应用前景。本论文的主要研究内容如下:1)完成了基于区块链存证系统的设计本系统分为三个架构模块,ethermint区块链底层、区块链SDK、上层应用。ethermint为底层的区块链技术,对存证信息进行存储,区块链SDK作为上层应用与区块链的交互的中间件,上层应用为存证系统的业务实现。设计了系统的总体业务模块,将系统用户分为普通用户与机构用户两种角色,对不同角色进行了权限拆分与控制。对每类用户的各个功能模块进行了详细设计,根据系统的功能模块,抽象了本系统的实体关系,进而设计了本系统的数据库的各个表结构。2)完成了基于区块链存证系统的实现本系统所有应用均使用Docker容器技术搭建运行环境,Docker容器均使用Ubuntu操作系统。首先,完成了四个节点的ethermint网络搭建,保证了底层区块链的正常运行且具有一定的容错能力。其次,完成了区块链SDK的开发,开发了JB-SDK与GB-SDK两个版本用户上层应用前后端语言的调用。然后,通过详细设计对实体的抽象使用Mysql数据库完成数据库的部署、建立,确保了存证系统的上层业务实现。最后,完成了存证系统上层业务实现,采用gin+gorm两个go语言后台框架及angular2前端框架开发了基于区块链的B/S模式的存证系统。