一种基于区块链技术的打印管理系统与方法与流程

文档序号:20485596发布日期:2020-04-21 21:38阅读:303来源:国知局
一种基于区块链技术的打印管理系统与方法与流程

本发明属于打印及打印管理技术,涉及一种基于区块链技术的打印管理方法,是一种去中心化的、在多个打印节点之间端到端通讯的打印管理系统与方法。



背景技术:

目前,企业内部常用的打印管理方法是购买专业的打印管理软件,如printshield打印监控软件(http://www.ronsung.com/printshield.htm)、emprint打印监控系统(http://www.emsh.com.cn/)等。这些商业打印管理软件通常是部署一台或多台打印监控服务器,承担打印中心监控管理的任务;然后在发起打印任务的众多台式机上,安装“监控端”客户端软件(手机需要安装app),客户端的所有打印任务由客户端的监控模块发送给打印服务器,打印服务器进行任务记录和管理。这种模式的商业打印管理软件一是部署繁杂,需要搭建和维护专用服务器,二是这种专业级软件研发或者购买费用不菲,对于小型企业单位或者团队往往因成本过高、流程复杂而不能适用。

随着区块链技术的异军突起,去中心化、不可篡改、高透明度、低成本的运营模式受到了各行业用户的追捧,金融、保险、电子商务等越来越多的应用领域采用区块链技术来优化各自的业务模式。将区块链技术的不可篡改和高透明度特性应用到打印管理当中,可以有效解决上述专业打印管理系统所带来的高成本、重配置的弊端。



技术实现要素:

为了克服现有技术存在的不足,本发明提供了一种基于区块链技术的打印管理系统及方法,利用区块链技术的不可篡改和高透明特性解决小型企业单位或者团队的打印管理问题,使得打印管理简单,方便实用,成本低。

本发明中的术语定义包括以下内容:

1)打印区块链:由企业内部若干网络互通的、有打印需求且打印任务需要监管的电脑终端以及打印机组成一个打印区块链,打印区块链上的节点即打印节点是前面所述的电脑终端。

2)监管节点:一部分打印节点具有监管权力,监管其它打印节点的打印任务。

监管节点的选择,采用身份选择基准原则,即以用户身份为选择基准,将有权限管理其它节点打印数据的节点设置为监管节点。

监管节点除了监管普通打印节点的打印数据外,本身也是一个打印节点。

3)打印管理节点:该节点与打印机直接相连(物理连接),负责打印节点传输到打印机的打印任务数据的接收、处理与响应。

4)打印账本:每个打印节点都存储有一份打印账本,即按照定义的打印区块结构封装起来的打印任务数据。

监管节点存储自身和其所监管节点的打印账本,普通打印节点仅存储涉及自身的打印账本。

打印管理节点是全节点(拥有完整区块链账本的节点),记录链上所有节点的打印任务数据。

5)打印区块链模块:每个打印节点(终端)都部署有一个打印区块链模块,负责节点打印账本的记录与维护,以及节点间的信息通讯与处理。

6)链通讯协议:打印节点间通过端到端通讯协议tcp/ip进行节点间信息与数据的传递。

7)共识机制,通过共识机制确定记账节点:

记账节点须是一个监管节点;当打印区块链中为单监管模式时(即一个打印节点隶属于且仅隶属于一个监管节点),记账节点即为发生打印任务节点的监管节点;当为多监管模式(即一个打印节点可以隶属于2个或2个以上监管节点)时,采用成熟的分布式一致性协议raft(raplicationandfaulttolerant)算法在多个监管节点间选举出记账节点。

在该共识机制下,根据实用拜占庭容错算法pbft(practicalbyzantinefaulttolerance)算法,n为总打印节点数,f为容错节点(容忍f个打印节点失效,即打印节点的打印账本不可信)数,f≤(n-1)/3。

8)打印区块结构:定义每一块打印区块的具体数据组成结构。

本发明具体实施时,建立打印区块链作为基于区块链技术的打印管理系统,基于区块链技术的打印管理方法包括:

1)建立打印区块链(即基于区块链技术的打印管理系统),打印区块链包括:多个部署打印区块链模块的打印节点和打印机;打印区块链模块包括链通讯协议模块;

a.打印区块链包括多个网络互通的、有打印需求且打印任务需要监管的打印节点(电脑终端)以及打印机;打印节点间通过链通讯协议(端到端通讯协议tcp/ip)进行节点间信息与数据的传递;打印机通过打印区块链中的打印节点(电脑终端)与打印区块链进行信息交互;

b.打印区块链上的节点即打印节点是打印区块链上的电脑终端;每个打印节点(终端)都部署有一个打印区块链模块,用于负责节点打印账本的记录与维护,以及节点间的信息通讯与处理;打印节点包括监管节点、打印管理节点和普通打印节点;

当打印区块链中为单监管模式时(即一个打印节点隶属于且仅隶属于一个监管节点),记账节点即为发生打印任务节点的监管节点;

每个打印节点都存储一份打印账本,打印账本即按照打印区块结构封装起来的打印任务数据。监管节点存储自身和其所监管的打印节点的打印账本,普通打印节点仅存储涉及自身的打印账本。打印管理节点记录打印区块链上所有打印节点的打印任务数据;

打印区块结构包括区块头和区块体;区块头和区块体均包括与区块相关的多个字段信息;具体实施时,打印区块结构由区块头和区块体组成。区块头包括当前区块的版本号、前区块头的哈希值、当前区块的merkleroot值、时间戳以及随机数nonce;区块体包括当前区块的id即区块识别码、区块大小,区块头、当前区块内记录的打印请求数量以及具体的打印请求详情。

c.将打印节点中的部分节点设置为监管节点,监管节点具有监管权力,监管其它打印节点的打印任务。

监管节点的选择,可采用身份选择基准原则,即以用户身份为选择基准,将有权限管理其它节点打印数据的节点设置为监管节点。

d.与打印机直接相连的打印节点作为打印管理节点,该节点与打印机物理连接,用于接收、处理与响应打印节点传输到打印机的打印任务数据;

2)打印节点通过链通讯协议向打印区块链发出打印申请;

3)打印区块链中的打印管理节点接收到打印请求后,对打印文档进行检查;

4)可根据文档属性,采用不同方式实施打印任务;

5)完成打印任务后,打印区块链按照上述共识机制选举出记账节点,记账节点按照定义的打印区块结构将打印任务数据封装成打印区块,其中包括加盖时间戳等认证信息。如果要降低打印区块链上打印节点之间的交互频率,减少网络通讯和数据操作的压力,记账节点可以将多次打印任务数据打包在同一个打印区块内。

6)当有新打印区块生成时,进行打印区块链更新,包括新打印区块的广播操作和各打印节点本地的打印区块链的更新操作。记账节点完成新打印区块封装后,将新的打印区块通过链通讯协议广播给发出打印请求的打印节点、该打印节点的监管节点和打印管理节点。上述被广播节点接收到新的打印区块后,通过该被广播节点的区块链模块将新的打印区块添加到被广播节点本地的打印区块链中,完成打印区块链的更新操作。

7)当有新打印节点加入到打印区块链中时,首先需要在新加入的打印节点部署打印区块链模块。部署好后,打印区块链模块通过链通讯协议通知新加入打印节点的监管节点。监管节点接收到加入通知后,更新自己本地的节点监管范围,完成节点加入操作。

更进一步,为使本发明具有更好的效果,还可以有以下附加技术特征:

(1)在打印区块链或打印管理系统中,可以通过文件敏感等级设置模块对被打印文件设置敏感等级。普通级文件,只需监管节点对打印数据进行监察即可;对于敏感级文件,可以在执行敏感文件打印前,先由监管节点授权,授权通过的打印请求才能被打印机节点执行。这样可以做到打印数据的实时控制,更好地防范相关敏感数据的外泄;

(2)在打印管理系统中,可以对敏感打印数据的传输进行加密处理,进一步确保敏感数据的机密性;

(3)可以进一步支持打印区块链上打印节点的删除。支持打印节点的删除功能,需要在监管节点维护一个有效打印节点列表。删除打印节点时,由监管节点向被删除节点及其它监管节点广播删除节点消息,被删除打印节点的打印区块链模块将自身的链通讯、区块更新等功能设置为禁用状态,监管节点则从本地的有效打印节点列表中去掉被删除的打印节点。

与现有技术相比,本发明的效果在于:

本发明提供的基于区块链技术的打印管理技术,对于小型单位或者团队,不用通过购买价格不菲的专业打印管理系统就可以实现打印管控的目的;其次,基于区块链的打印管理机制基于端到端通讯,部署简单易行,不需要搭建复杂的集中式服务器管理系统,减少软硬件开支;再次,通过部署打印区块私链,可以很好地对链上节点的打印数据进行监控,确保打印数据的不可篡改和抵赖;进一步,对于敏感数据,可以增加打印监管节点的授权操作和传输加密操作,以提升敏感数据的保护力度。

附图说明

图1为本发明打印方法实施例采用的打印节点部署架构示意图;

图中:1—打印节点,2—区块链,3—监管节点,4—监管范围,5—打印管理节点,6—打印机,7—局域网。

图2为本发明的打印区块结构图。

图3为本发明的打印请求处理的流程框图。

具体实施方式

下面结合附图,通过实施例进一步描述本发明,但不以任何方式限制本发明的范围。

本发明提供了一种基于区块链技术的打印管理系统及方法,图1所示为本发明方法一实施例采用的打印区块链及其打印节点部署架构。如图1所示,打印区块链由在同一局域网络内的普通打印节点和监管节点,以及打印管理节点组成。每个节点存储独立的打印账本,即按照区块结构封装起来的打印任务数据。其中,监管节点本身也是一个打印节点。图2为本发明的打印区块结构的示意图,如图2所示,打印区块结构由区块头和区块体组成。区块头包括当前区块的版本号、前区块头的哈希值、当前区块的merkleroot值、时间戳以及随机数nonce;区块体包括当前区块的id即区块识别码、区块大小,区块头、当前区块内记录的打印请求数量以及具体的打印请求详情。图3是对一个打印节点请求敏感数据文件打印的处理流程方案。

实施例:

本发明提供的实施例是搭建一个打印区块链,并针对一个节点请求敏感数据文件打印的处理流程方案。具体包括以下步骤:

(1)搭建打印区块链

在局域网内选择若干网络互通的、可网络访问打印机的电脑终端(包括台式机和笔记本),打印机,以及与打印机直接连接的电脑,组成一个打印区块链。

打印节点数为n,f为容错节点数,则f≤(n-1)/3。

在每个打印节点端部署打印区块链模块。

根据打印节点的身份设定监管节点,并初始化监管范围。

(2)发起打印请求

打印区块链上的一个打印节点打开一篇文档,点击打印按钮,发起打印请求。

(3)数据敏感度检查

打印管理节点接收到打印请求后,检查该打印文档是否包含敏感数据,如果是,则进行步骤(4),否则直接进行步骤(5)。

(4)敏感数据打印授权

当打印管理节点确认打印文档包含敏感数据后,将打印请求数据打包,并将打包数据发送给打印请求节点的监管节点,由监管节点确认打印请求节点是否有权限打印该文档。

监管节点接收到打印请求数据后,检查敏感数据是否在打印请求节点的授权范围内,如果是,则对打印请求授权,返回授权成功;否则,返回授权失败。

(5)打印请求处理

如果打印请求包含敏感数据,打印管理节点需要等待相应监管节点的授权结果。接收到授权结果后,检查授权状态,授权成功则执行打印操作;授权失败,则拒绝打印操作。

如果不包含敏感数据,则对打印请求直接执行打印操作。

(6)确定记账节点

根据共识机制,确定当前打印任务的记账节点。

(7)生成打印数据块

完成打印操作后,打印管理节点将打印任务数据打包发送给记账节点。

记账节点接收到打印任务数据后,按照打印区块结构将打印任务数据封装成块,并加盖时间戳等认证信息。

为了降低链上节点之间的交互频率,减少网络通讯和数据操作的压力,记账节点可以将多次打印任务数据打在同一个区块内。

(8)打印区块链更新

记账节点完成新的区块封装后,将新区块通过链通讯协议广播给打印请求节点、该节点的监管节点和打印管理节点。

被广播节点接收到新区块数据后,将新区块添加到各自的本地打印账本中去,完成打印区块链的账本更新操作。

从上述实施例中可以看出,本发明具有如下效果:基于区块链技术的打印管理机制不需要搭建和维护一个完备的中央服务器,减少了软硬件的成本开支和管理上的复杂度;该机制的链通讯模式基于端到端通讯协议,简单易实现,方便用户部署;该机制利用区块链的高透明度和不可篡改特点,很好地实现了链上节点的打印数据监控;链上监管节点对敏感数据的授权可以进一步加强内部敏感数据的保护力度,减少敏感数据的外泄可能性。

虽然已经详细描述了本发明,但是以上描述用于说明而非限制。本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。倘若对本发明的修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1