当前位置: 首页 > 专利查询>赵晓波专利>正文

一种通信程序身份定义和识别方法技术

技术编号:34546267 阅读:17 留言:0更新日期:2022-08-17 12:28
本发明专利技术公开了一种通信程序身份定义和识别方法,借助于区块链的支持,通信程序厂商在区块链上创建普通账号,利用该普通账号创建一个初始合约账号和为每个通信程序注册合约账号,其中初始合约账号负责管理该普通账号创建的所有通信程序合约账号,其他合约账号保存当前程序的可执行模块名称和对应的哈希值,同时创建主进程哈希值与当前账号的索引,为当前账号增加属性信息,在每个通信节点上均部署安全软件,安全软件之间建立的通道为通信双方确认身份和权限提供了一种识别认证途径,通过对通信程序身份的定义和有效识别,实现了通信程序之间的一种安全通信方法。之间的一种安全通信方法。

【技术实现步骤摘要】
一种通信程序身份定义和识别方法


[0001]本专利技术涉及一种基于区块链的通信程序身份定义识别方法。

技术介绍

[0002]目前安全管理软件对本机运行的程序,通常是通过数字签名进行识别,但这种基于数字签名的应用有一定局限性,一个是代价太大,而且都是基于一个中心机构进行签名,无法适应电脑程序的普遍身份识别要求,而且也缺少对该程序身份的属性信息描述,只能确认是否有没被篡改,无法适应当前网络通信安全要求。

技术实现思路

[0003]本专利技术所要解决的技术问题是,借助于区块链的支持,通信程序厂商在区块链上创建普通账号,利用该普通账号创建一个初始合约账号和为每个通信程序注册合约账号,其中初始合约账号负责管理该普通账号创建的所有通信程序合约账号,其他合约账号保存当前程序的可执行模块名称和对应的哈希值,同时创建主进程哈希值与当前合约账号的索引,为当前账号增加属性信息,属性信息可以包括自身的访问权限,如只接收哪些账号的连接或拥有哪些账号签名的账号可以连接,这样两个通信节点上的安全软件可以通过进程信息获取到对应的合约账号,实现了通信程序身份的定义和有效识别。
[0004]为解决上述技术问题,本专利技术的技术方案如下:一种通信程序身份定义和识别方法,包括以下步骤:每个通信程序均在区块链上创建一个合约账号,在该合约账号上会登记软件名称,版本,可执行文件内容特征值,所有者以及各种权限等,同时还会建立各种索引;在区块链上建立主程序索引,索引键为

主程序索引前缀+主程序内容哈希特征值
r/>,值为该主程序对应的合约账号,通信程序在通信连接过程中就可以通过其进程内容哈希值识别到当前通信程序的合约账号;在区块链上建立分配权限索引,程序所有者,可以为当前程序分配对外服务的准入权限要求,如只有拥有指定账号签名的,或多个账号之一签名的,才能连接本程序,索引创建方法,索引键为

分配权限前缀+权限类型操作符+账号

,值为账号列表或者为分配权限的合约地址,权限类型操作符可以根据应用需要灵活设置,比如连接上后是否可以读写数据库,是否可以删除本地文件等;一个完整的通信身份识别流程包括通过通信双方本地的安全软件相互协作来共同完成;节点A上的通信程序A发起对节点B上的通信程序B的连接,节点B上的安全软件B会收到对通信程序A的身份查询,通信程序B会把通信程序A的通信端口和IP地址发给安全软件B,安全软件B会把查询请求转发到安全软件A,安全软件A通过操作系统接口查询当前端口对应的进程名称,查到该进程的完整路径,读取该进程内容的哈希值,在区块链上检索到对应的账号,下载该进程的可执行代码哈希值,检查通信程序A是否干净完整,确认跟区块
链上登记发布的一致,没有被篡改,然后把通信程序A的账号及相关属性信息发回给安全软件B,对通信程序A的权限检查可以由安全软件B来检测,也可以由通信程序B自己进行检查,这样就实现了两个通信程序之间安全可控的通信。
附图说明
[0005]图1是本专利技术的一种通过通信程序身份识别实现可信连接的流程图。
具体实施方式
[0006]下面根据附图,给出本专利技术的较佳实施例,并予以详细描述,使能更好地理解本专利技术的功能、特点。
[0007]通信程序厂商在区块链上创建普通账号,利用该普通账号创建一个初始合约账号和为每个通信程序注册合约账号,其中初始合约账号负责管理该普通账号创建的所有通信程序合约账号,其他合约账号保存当前程序的可执行模块名称和对应的哈希值,同时创建主进程哈希值与当前账号的索引,为当前账号增加属性信息,属性信息可以包括自身的访问权限,如只接收哪些账号的连接或拥有哪些账号签名的账号可以连接;节点A中的程序A跟节点B中的程序B建立连接的过程描述:程序A对程序B发起连接,程序B收到连接请求后,先解析对方IP和通信端口,再发送到安全软件B,查询当前通信方的账号和通信权限;安全软件B收到查询请求后,把请求转发到对应IP的安全软件A,由安全软件A在本地进行安全检查;安全软件A收到查询请求后,通过操作系统接口,遍历当前通信端口,找到对应的进程号和进程路径,读取该进程内容的哈希值,在区块链上查询对应账号,同时下载该账号的相关属性,包括该账号登记的可执行文件哈希值和访问权限,安全软件A先对程序A进行完整性检查,保证程序A没有被篡改,如果没有查询到对应账号或者对程序A安全性检查没有通过均返回连接失败,如果检测通过则把账号和权限信息发回到安全软件B;安全软件B收到安全软件A的响应信息后,可以选择性做部分权限检查,然后交给程序B,由程序B最终确认是否有连接权限,没有就返回失败,如果有连接权限,就可以成功建立连接;通过对通信程序身份的定义和有效识别,实现了通信程序之间的一种安全通信方法显然,在上述教导下,可能对本专利技术进行多种修正和变型,并在所附权利要求的范围内,本专利技术可以以不同于具体描述的方式实施。
本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种通信程序身份定义和识别方法,包括以下步骤:(1

1) 通信程序厂商自主在区块链上为每个通信程序分配一个账号,登记敏感文件哈希特征值,建立主程序索引和配置相应访问权限;(1

2)通信发起方通信时,通信服务方会用解析到的远程IP和端口发送给服务端安全软件查询身份;(1

3)服务端安全软件把身份查询请求发送到通信发起端安全软件;(1

4)发起端安全软件通过通信端口,操作系统接口查询到对应进程路径,读取进程内容哈希值,在区块链中查询账号,下载相关信息,先用下载的敏感文件哈希值对发起方通信程序进行安全检查,检查通过后会把身份信息...

【专利技术属性】
技术研发人员:赵晓波
申请(专利权)人:赵晓波
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1