当前位置:首页 期刊杂志

基于区块链的手机APP点评系统

时间:2024-05-04

周雨晗 尚泽昊 耿晓晗 北方工业大学计算机学院

基于区块链的手机APP点评系统

周雨晗 尚泽昊 耿晓晗 北方工业大学计算机学院

APP点评系统可帮助用户选择适合的App,具有广泛的应用前景。然而,现有的点评系统存在着易受DDoS攻击、真实性验证缺乏问题。因此,本文设计了一种基于区块链的分布式APP点评系统,利用去中心化的区块链,将用户上传的点评信息分别记录到区块链的不同节点上并进行验证。该点评系统具有分布式安全、点评记录真实可验证等特性。

区块链,点评系统

1 引言

随着移动互联网的迅猛发展,涌现了各类基于计算机的软件和应用程序。从社交到各种生活服务,我们的生活被各种应用占领,尤其是移动设备。据统计,苹果的AppStore应用总数达220万,谷歌Play商店应用程序数量达270万,我国App数量超过1700万个。然而,在移动应用市场涌现出的数量如此庞大的App中,仅有25%的App被用户持续使用,其中,坚持更新版本活跃型App应用数量占比仅为6%,而在1700多万个App中,活跃型App占比仅为0.0046%。虽然整个APP市场大体的分类已经形成并趋向稳定,但随着APP的火爆,APP的总体性能却令人堪忧,部分APP无法满足用户的需求和市场的需要,因此评价一款APP是极其必要的,不仅能够让开发商发现设计等方面存在的问题,做到进一步的完善,也可以帮助用户挑选更令人满意的APP。

在现有的点评系统中,比如大众点评,用户可在系统上为其使用过的App进行评分并给出自己对该款App的评价,点评系统根据现有用户的评分计算一个综合评分作为此款App的最终评分,在用户选择App时,为用户提供一项性能的参考度量,同时,点评系统也是帮助商家收集用户反馈的重要途径。然而,现有的点评系统中存在以下问题:1)点评系统大多采用服务器集中式存储数据,一旦遭受DDoS攻击,将导致系统无法继续使用;2)App开发者为了抢占市场,存在对App刷评分以及恶意评价的现象,影响App点评结果的真实性。

为解决这些问题,本文设计了基于区块链的分布式点评系统。在本系统中,用户利用点评客户端将对移动应用App的点评信息上传到区块链,由区块链上的节点共同对点评进行验证,从而筛选出真实可信的评论进行记录,验证的点评被分散地存储在区块链的不同矿工节点上,从而有效防止DDoS攻击,最后区块链将点评信息反馈至移动终端,以便用户查看。由于系统采用去中心化、不可伪造的区块链技术,使得系统具有更强的安全性,为点评的可信评估提供了支撑。因此,该点评系统为用户提供了一个客观、真实、可信的App点评平台。

2 区块链技术

区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法。区块链技术具有去中心化、开放性、安全性、不可伪造、弱匿名性等特性。

区块链的工作流程主要包括如下步骤:

1)发送节点将新的数据记录向全网进行广播;

2)接收节点对收到的数据记录信息进行检验,比如记录信息是否合法,通过检验后,数据记录将被纳入到一个区块中;

3)全网所有接收节点对区块执行共识算法(工作量证明、权益证明等);

4)区块通过共识算法过程后被正式纳入区块链中存储,全网节点均表示接受该区块,而表示接受的方法,就是将该区块的随机散列值视为最新的区块散列值,新区块的制造将以该区块链为基础进行延长。

图1 区块链工作流程

节点始终都将最长的区块链视为正确的链,并持续以此为基础验证和延长它。如果有两个节点同时广播不同版本的新区块,那么其他节点在接收到该区块的时间上将存在先后差别,他们将在率先收到的区块基础上进行工作,但也会保留另外一个链条,以防后者变成长的链条。

3 基于区块链点评系统设计

系统由分布式点评系统端和客户端构成。分布式点评系统端的主要功能是将用户上传的点评信息提交到区块链,由区块链上节点对该点评信息进行验证,将验证得到的具有真实性的点评记录到区块链上,并将点评反馈到移动终端显示。客户端的主要功能是用户可对其使用过的App的性能进行评分,并可通过上传评论和截图,同时也可浏览各种App的相关点评,以便准确选择最佳App。

图2 点评系统基本架构

3.1 分布式点评系统端

用户通过App上传点评信息到点评系统端,这些点评信息被提交到区块链上,基于区块链去中心化的优势,区块链中的用户节点可对用户提交的点评信息进行真实性验证,获得大多数用户节点赞同的点评视为是真实点评,由区块链上的用户节点共同验证,保证了点评结果的真实性,避免了传统点评系统中虚假评论的产生。同时,对于验证通过的真实点评信息的记录,不同于传统点评系统的集中式服务器存储,分布式点评系统将点评信息分散的记录到区块链中不同的矿工节点上,使得系统能过有效避免DDoS攻击,在一个用户节点受到攻击损坏后,不影响其他节点的记录,系统仍可继续使用。然后更新其客户端数据,使得用户可以查看最新的点评。

3.2 点评软件客户端

用户使用此点评App可查看各类App的评分情况及其他用户的评价留言,可从中获取App的相关信息,从而选择自己所需的最佳性能的App。同时,用户可以选择使用过的软件,对其进行点评,上传评分、评论以及截图等,由移动终端将点评信息提交到区块链上。

3.3 点评链设计

点评链使用区块链技术对所有点评信息进行存储。点评信息由用户填写并提交,成功上传后将由矿工进行收集验证并加入到点评链中。点评信息一旦加入点评链将不可修改,用户可以随时下载点评链进行检索查看。

点评信息包括软件名称、分类、评分、截图、评论、点赞数、评论摘要、用户签名,其中点赞这一项可由其他用户进行操作。每次对已有的点评信息修改将会被重新提交,按流程加入最新的点评链中。用户检索到的点评信息将是最近一次提交的点评信息。

图3 点评链

3.4 点评区块生成

1)用户将新的点评记录向全网进行广播;

2)矿工对收到的数据记录信息的签名进行验证,通过检验后,数据记录将被纳入到一个区块中;

3)全网中矿工对区块执行共识算法(工作量证明、权益证明等),区块通过共识算法过程后被正式纳入点评链中存储,该区块的随机散列值视为最新的区块散列值,新区块的制造将以该区块链为基础进行延长。

4 总结

本文设计了一种基于区块链的分布式APP点评系统,利用去中心化的区块链,将用户上传的点评信息记录到点评链中,由矿工验证点评信息的签名,一段时间内的所有点评信息签名被验证后,执行共识协议产生随机散列值,从而生成新的点评区块加入到点评链中。该点评系统消除了可信中心带来的安全威胁,具有分布式安全、点评记录真实可验证等特性,拥有广阔的市场发展前景。

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!