[发明专利]一种基于区块链的基金会系统有效
申请号: | 202110176779.2 | 申请日: | 2021-02-07 |
公开(公告)号: | CN112988887B | 公开(公告)日: | 2022-07-15 |
发明(设计)人: | 王明生;罗明;李波;邓智洪;刘冬冬;赖强;亓彬;向奎;向勇;王晓蓓 | 申请(专利权)人: | 中国科学院信息工程研究所 |
主分类号: | G06F16/27 | 分类号: | G06F16/27;G06F21/64;G06Q40/06 |
代理公司: | 北京君尚知识产权代理有限公司 11200 | 代理人: | 司立彬 |
地址: | 100093 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 区块 基金会 系统 | ||
1.一种基于区块链的基金会系统,其特征在于,包括受基金会管理平台管理与维护的多个基金会服务平台,每一基金会对应一个基金会服务平台;所述基金会服务平台将注册的捐赠者提供的捐赠信息且审核通过后发布到区块链上并返回去向凭证,以及将基金会服务平台管理员提供的捐赠信息的捐赠去向发布到区块链上;其中
所述基金会服务平台包括中间层、后端开发模块和前端开发模块;后端开发模块包括区块链技术层、链码层、服务层和数据层,前端开发模块包括视图层和展现层;
所述区块链技术层包括排序共识组件和多个不同的Fabric镜像,不同基金会平台对应不同Fabric镜像;所述排序共识组件用于为链码层传来的每笔捐赠信息和捐赠去向信息提供共识排序并打包成块,以确保数据一致性;
所述链码层用于编写区块链中受信任的分布式系统业务执行逻辑,实现对区块链技术层数据的具体操作,从而完成区块链技术层和其上层业务的对接;其中所述区块链技术层数据包括捐赠信息和捐赠去向信息,所述区块链技术层的数据包包括捐赠链码包和去向链码包,所述区块链技术层的区块链包括捐赠链码和去向链码;通过在捐赠链码中编写具备对捐赠数据进行设定功能的智能合约;通过在去向链码中编写具备对去向数据进行设定功能的智能合约;
数据层,用于在捐赠链码编写发布到区块链上的捐赠信息、在去向链码上编写发布到区块链上的捐赠去向信息;
服务层用于资源管理和运维监控,包括SDK服务端、资源管理模块和运维监控模块;所述资源管理模块管理的资源包括CA证书、区块链底层的配置文件、可插拔的共识插件、Fabric镜像和外接的镜像;
中间层,用于提供供后端开发模块与前端开发模块进行数据交互的各终端模块;
展现层,用于设置接口层各终端模块的交互方式、数据获取与处理的方式;
视图层,用于对数据进行展示。
2.如权利要求1所述的系统,其特征在于,所述智能合约包括在捐赠链码中编写具备对捐赠数据进行添加状态、删除状态、更新状态、查询状态、富查询、分页显示的智能合约,在捐赠链码中编写具备对捐赠数据进行更新审核状态、根据审核状态查询捐赠、根据去向查询捐赠的智能合约,以及在去向链码中编写具备对去向数据进行添加状态、删除状态、更新状态、查询状态、富查询、分页显示的智能合约。
3.如权利要求1所述的系统,其特征在于,所述数据层对上链数据与不上链数据进行区分,并对上链数据在区块链底层之上封装一层数据备份;所述数据层将封装的数据备份和未上链数据存储到外层数据库,将需上链数据及其哈希值以备份的形式存储在区块链底层数据库。
4.如权利要求1所述的系统,其特征在于,客户端与服务器端在所述数据层进行用户密码交互时的用户密码存储方法为:
a)注册阶段,客户端接收用户注册时输入的用户密码和用户名username;然后获取该用户名username对应的盐值;然后客户端根据该用户密码和该盐值生成一哈希值,将该哈希值与该盐值发送给服务器端;服务器端保存该哈希值和该盐值;
b)登录阶段,客户端接收用户登陆时输入的用户密码和用户名username并发送给服务器端,服务器端根据用户名username查询对应的盐值,如果存在对应的盐值则生成一个新盐值发送给客户端;客户端根据该用户密码和更新前的盐值生成的哈希值hash1、根据该用户密码与新盐值生成哈希值hash2,然后将哈希值hash1、哈希值hash2发送给服务器端;服务器端验证哈希值hash1和数据库保存的哈希值是否一致,如果一致则该用户登陆成功,并将该用户的哈希值更新为哈希值hash2、盐值更新为该新盐值;如果对比结果不一致,则返回登陆失败信息;
c)密码更改阶段,客户端接收用户输入的用户名username、旧密码和新密码并发送给服务器端;服务器端根据用户名username查询对应的盐值,如果存在对应的盐值则生成一个新盐值发送给客户端;客户端根据该旧密码和更新前的盐值生成的哈希值hash1、根据该新密码与新盐值生成哈希值hash2,然后将哈希值hash1、哈希值hash2发送给服务器端;服务器端验证哈希值hash1和数据库保存的哈希值是否一致,如果一致则将该用户的旧密码更新为该新密码,并将该用户的哈希值更新为哈希值hash2、盐值更新为该新盐值;如果对比结果不一致,则返回失败信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国科学院信息工程研究所,未经中国科学院信息工程研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110176779.2/1.html,转载请声明来源钻瓜专利网。