首页 / 专利库 / 计算机网络 / 对等网络 / 互联网通话方法及装置

互联网通话方法及装置

阅读:546发布:2020-05-08

专利汇可以提供互联网通话方法及装置专利检索,专利查询,专利分析的服务。并且本 发明 实施例 提供一种互联网通话方法及装置。该方法包括: 对等网络 中的 节点 接收用户终端发送的用户终端的用户名、公钥、IP地址、时间戳、第一签名信息;按照时间戳对用户终端的用户名、公钥、IP地址进行排序,得到记录信息;在记录信息中增加一个随机数,并根据增加有随机数的记录信息以及历史哈希值,计算得到当前哈希值;若当前哈希值小于 阈值 ,则将用户终端的用户名、公钥、IP地址、时间戳、随机数、当前哈希值和第二签名信息发送给对等网络中的其他节点。本发明实施例保证了该P2P网络中的所有用户的用户名,公钥,IP地址的信息的安全性,提高了通话可靠性。,下面是互联网通话方法及装置专利的具体信息内容。

1.一种互联网通话方法,其特征在于,包括:
对等网络中的节点接收用户终端发送的所述用户终端的用户名、公钥、IP地址、时间戳、第一签名信息;
所述节点按照所述时间戳对所述用户终端的用户名、公钥、IP地址进行排序,得到记录信息;
所述节点在所述记录信息中增加一个随机数,并根据增加有所述随机数的所述记录信息以及历史哈希值,计算得到当前哈希值;
若所述当前哈希值小于阈值,则所述节点将所述用户终端的用户名、公钥、IP地址、时间戳、所述随机数、所述当前哈希值和第二签名信息发送给所述对等网络中的其他节点,以使所述对等网络中的其他节点记录所述用户终端的用户名、公钥、IP地址、时间戳、所述随机数。
2.根据权利要求1所述的方法,其特征在于,所述第一签名信息是对所述用户终端的用户名、公钥、IP地址、时间戳进行签名后得到的信息;所述第二签名信息是对所述用户终端的用户名、公钥、IP地址、时间戳、所述随机数、所述当前哈希值进行签名后得到的信息。
3.根据权利要求1或2所述的方法,其特征在于,还包括:
所述节点接收所述用户终端发送的所述用户终端的用户名、新的IP地址、第三签名信息,所述第三签名信息是对所述用户终端的用户名、新的IP地址进行签名后得到的信息;
所述节点对所述第三签名信息进行验证,如果验证成功,则在所述节点存储所述用户终端的用户名、新的IP地址的映射关系。
4.根据权利要求3所述的方法,其特征在于,所述节点对所述第三签名信息进行验证,包括:
所述节点采用所述用户终端的公钥对所述第三签名信息进行解密,得到解密后的信息;
若所述解密后的信息是所述用户终端的用户名、新的IP地址,则验证成功。
5.根据权利要求4所述的方法,其特征在于,所述节点在所述记录信息中增加一个随机数,包括:
所述节点在所述记录信息中的固定位置增加一个随机数。
6.一种互联网通话装置,其特征在于,包括:
接收模,用于接收用户终端发送的所述用户终端的用户名、公钥、IP地址、时间戳、第一签名信息;
排序模块,用于按照所述时间戳对所述用户终端的用户名、公钥、IP地址进行排序,得到记录信息;
计算模块,用于在所述记录信息中增加一个随机数,并根据增加有所述随机数的所述记录信息以及历史哈希值,计算得到当前哈希值;
发送模块,用于当所述当前哈希值小于阈值时,将所述用户终端的用户名、公钥、IP地址、时间戳、所述随机数、所述当前哈希值和第二签名信息发送给所述对等网络中的其他节点,以使所述对等网络中的其他节点记录所述用户终端的用户名、公钥、IP地址、时间戳、所述随机数。
7.根据权利要求6所述的互联网通话装置,其特征在于,所述第一签名信息是对所述用户终端的用户名、公钥、IP地址、时间戳进行签名后得到的信息;所述第二签名信息是对所述用户终端的用户名、公钥、IP地址、时间戳、所述随机数、所述当前哈希值进行签名后得到的信息。
8.根据权利要求6或7所述的互联网通话装置,其特征在于,所述接收模块还用于接收所述用户终端发送的所述用户终端的用户名、新的IP地址、第三签名信息,所述第三签名信息是对所述用户终端的用户名、新的IP地址进行签名后得到的信息;
所述互联网通话装置还包括:
验证模块,用于对所述第三签名信息进行验证,如果验证成功,则存储所述用户终端的用户名、新的IP地址的映射关系。
9.根据权利要求8所述的互联网通话装置,其特征在于,所述验证模块具体用于采用所述用户终端的公钥对所述第三签名信息进行解密,得到解密后的信息;若所述解密后的信息是所述用户终端的用户名、新的IP地址,则验证成功。
10.根据权利要求9所述的互联网通话装置,其特征在于,所述计算模块具体用于在所述记录信息中的固定位置增加一个随机数。

说明书全文

互联网通话方法及装置

技术领域

[0001] 本发明实施例涉及通信技术领域,尤其涉及一种互联网通话方法及装置。

背景技术

[0002] 网络电话(Voice over Internet Protocol,VoIP)简而言之就是将模拟信号(Voice)数字化,以数据封包(Data Packet)的形式在IP网络(IP Network)上做实时传递。
[0003] VoIP的基本原理是通过语音的压缩算法对语音数据编码进行压缩处理,然后把这些语音数据按传输控制协议(Transmission Control Protocol,TCP)/网络之间互连的协议(Internet Protocol,IP)标准进行打包,经过IP网络把数据包送至接收地,再把这些语音数据包串起来,经过解压处理后,恢复成原来的语音信号,从而达到由互联网传送语音的目的。IP电话的核心与关键设备是IP网关,它把各地区电话区号映射为相应的地区网关IP地址。这些信息存放在一个数据库中,数据接续处理软件将完成呼叫处理、数字语音打包、路由管理等功能。在用户拨打长途电话时,网关根据电话区号数据库资料,确定相应网关的IP地址,并将此IP地址加入IP数据包中,同时选择最佳路由,以减少传输延时,IP数据包经互联网Internet到达目的地的网关。在一些Internet尚未延伸到或暂时未设立网关的地区,可设置路由,由最近的网关通过长途电话网转接,实现通信业务。
[0004] 当前的互联网通话系统都必须有中央服务器,如果该中央服务器瘫痪,或者被攻击,则通信双方将无法建立通话连接,导致通话可靠性降低。

发明内容

[0005] 本发明实施例提供一种互联网通话方法及装置,以提高通话可靠性。
[0006] 本发明实施例的一个方面是提供一种互联网通话方法,包括:
[0007] 对等网络中的节点接收用户终端发送的所述用户终端的用户名、公钥、IP地址、时间戳、第一签名信息;
[0008] 所述节点按照所述时间戳对所述用户终端的用户名、公钥、IP地址进行排序,得到记录信息;
[0009] 所述节点在所述记录信息中增加一个随机数,并根据增加有所述随机数的所述记录信息以及历史哈希值,计算得到当前哈希值;
[0010] 若所述当前哈希值小于阈值,则所述节点将所述用户终端的用户名、公钥、IP地址、时间戳、所述随机数、所述当前哈希值和第二签名信息发送给所述对等网络中的其他节点,以使所述对等网络中的其他节点记录所述用户终端的用户名、公钥、IP地址、时间戳、所述随机数。
[0011] 本发明实施例的另一个方面是提供一种互联网通话装置,包括:
[0012] 接收模,用于接收用户终端发送的所述用户终端的用户名、公钥、IP地址、时间戳、第一签名信息;
[0013] 排序模块,用于按照所述时间戳对所述用户终端的用户名、公钥、IP地址进行排序,得到记录信息;
[0014] 计算模块,用于在所述记录信息中增加一个随机数,并根据增加有所述随机数的所述记录信息以及历史哈希值,计算得到当前哈希值;
[0015] 发送模块,用于当所述当前哈希值小于阈值时,将所述用户终端的用户名、公钥、IP地址、时间戳、所述随机数、所述当前哈希值和第二签名信息发送给所述对等网络中的其他节点,以使所述对等网络中的其他节点记录所述用户终端的用户名、公钥、IP地址、时间戳、所述随机数。
[0016] 本发明实施例提供的互联网通话方法及装置,通过对等网络中的节点接收用户终端发送的用户终端的用户名、公钥、IP地址、时间戳、第一签名信息,结合随机数和历史哈希值,计算得到当前哈希值,若当前哈希值小于阈值,则该节点将用户终端的用户名、公钥、IP地址、时间戳、随机数、当前哈希值发送给其他节点,以便其他节点记录用户终端的用户名、公钥、IP地址、时间戳、随机数、当前哈希值,由于这些信息经过了全网所有节点的验证,并且账本最终每个节点都保存了实时信息的记录,这样就保证了该P2P网络中的所有用户的用户名,公钥,IP地址的信息的安全性,提高了通话可靠性。附图说明
[0017] 图1为本发明实施例提供的互联网通话方法流程图
[0018] 图2为本发明实施例提供的互联网通话方法适用的网络架构图;
[0019] 图3为本发明另一实施例提供的互联网通话方法流程图;
[0020] 图4为本发明实施例提供的互联网通话装置的结构图;
[0021] 图5为本发明另一实施例提供的互联网通话装置的结构图。

具体实施方式

[0022] 图1为本发明实施例提供的互联网通话方法流程图;图2为本发明实施例提供的互联网通话方法适用的网络架构图。本发明实施例针对中央服务器瘫痪,或者被攻击时,通信双方将无法建立通话连接,导致通话可靠性降低,提供了互联网通话方法,该方法具体步骤如下:
[0023] 步骤S101、对等网络中的节点接收用户终端发送的所述用户终端的用户名、公钥、IP地址、时间戳、第一签名信息。
[0024] 如图2所示,当用户终端首次连接到对等网络(Peer-to-peer,P2P)时,首先生成自己的公钥和私钥,并以广播方式向对等网络发送自己的用户名,公钥和当前的IP地址,具体的,例如用户终端A和用户终端B首次连接到对等网络,则用户终端A和用户终端B分别向对等网络发送自己的用户名,公钥和当前的IP地址,下面以用户终端A为例,用户终端A向对等网络广播的消息包括:用户终端A的用户名A、公钥A、IP-A、时间戳、第一签名信息,时间戳可以是用户终端A广播该消息时的时刻,第一签名信息可以是用户终端A用自己的私钥对用户名A、公钥A、IP-A、时间戳进行签名后得到的信息。
[0025] 步骤S102、所述节点按照所述时间戳对所述用户终端的用户名、公钥、IP地址进行排序,得到记录信息。
[0026] 对等网络中的节点可能不只收到用户终端A广播的消息,还有可能收到其他用户终端例如用户终端B广播的消息。对等网络中的所有节点接收到用户终端A广播的消息后,将用户终端A广播的消息记录下来,之后所有节点开始抢占用户终端A的登记权,一种可实现的方式是:由于每个用户终端广播的消息的均携带有时间戳,则各个节点可以根据该时间戳对各用户终端广播的消息进行排序,得到记录信息,如果用户终端A广播的消息中的时间戳大于用户终端B广播的消息中的时间戳,且按照时间戳从大到小的顺序排序,则排序后得到的记录信息为:{用户名A、公钥A、IP-A}{用户名B、公钥B、IP-B}。
[0027] 步骤S103、所述节点在所述记录信息中增加一个随机数,并根据增加有所述随机数的所述记录信息以及历史哈希值,计算得到当前哈希值。
[0028] 并且各节点在所述记录信息中增加一个随机数,并根据增加有所述随机数的所述记录信息以及历史哈希值,计算得到当前哈希值,由于每个节点选择的随机数不同,在记录信息中选择的位置不同,则每个节点计算出的当前哈希值不同。
[0029] 可选的,各节点在所述记录信息中的固定位置增加一个随机数。
[0030] 步骤S104、若所述当前哈希值小于阈值,则所述节点将所述用户终端的用户名、公钥、IP地址、时间戳、所述随机数、所述当前哈希值和第二签名信息发送给所述对等网络中的其他节点,以使所述对等网络中的其他节点记录所述用户终端的用户名、公钥、IP地址、时间戳、所述随机数。
[0031] 当某个节点计算出的当前哈希值小于阈值时,表示该节点获取到了用户终端A的登记权,则该节点将用户名A、公钥A、IP-A、时间戳、该节点选择的随机数、该节点计算出的当前哈希值和第二签名信息发送给所述对等网络中的其他节点,其中,第二签名信息是该节点采用该节点的私钥对用户名A、公钥A、IP-A、时间戳、该节点选择的随机数、该节点计算出的当前哈希值进行签名后得到的信息。
[0032] 对等网络中的其他节点接收到该节点发送的用户名A、公钥A、IP-A、时间戳、该节点选择的随机数、该节点计算出的当前哈希值时,将用户名A、公钥A、IP-A、时间戳、该节点选择的随机数、该节点计算出的当前哈希值记录到本地。
[0033] P2P网络的所有节点在新加入网络的时候,都按照本实施例所述的方法进行广播,其他的节点都按照前面的方式进行记录。由于这些信息经过了全网所有节点的验证,并且账本最终每个节点都保存了实时信息的记录,这样就保证了该P2P网络中的所有用户的用户名,公钥,IP地址的信息的安全性。
[0034] 本发明实施例通过对等网络中的节点接收用户终端发送的用户终端的用户名、公钥、IP地址、时间戳、第一签名信息,结合随机数和历史哈希值,计算得到当前哈希值,若当前哈希值小于阈值,则该节点将用户终端的用户名、公钥、IP地址、时间戳、随机数、当前哈希值发送给其他节点,以便其他节点记录用户终端的用户名、公钥、IP地址、时间戳、随机数、当前哈希值,由于这些信息经过了全网所有节点的验证,并且账本最终每个节点都保存了实时信息的记录,这样就保证了该P2P网络中的所有用户的用户名,公钥,IP地址的信息的安全性,提高了通话可靠性。
[0035] 图3为本发明另一实施例提供的互联网通话方法流程图;在上述实施例的基础上,还包括如下步骤:
[0036] 步骤S301、所述节点接收所述用户终端发送的所述用户终端的用户名、新的IP地址、第三签名信息,所述第三签名信息是对所述用户终端的用户名、新的IP地址进行签名后得到的信息。
[0037] 当用户终端A的IP地址发生变化时,用户终端A还可以向对等网络中的节点发送用户终端A的用户名A、用户终端A的新的IP地址、第三签名信息,第三签名信息可以是用户终端A采用自己的私钥对用户名A、用户终端A的新的IP地址进行签名后得到的信息。
[0038] 步骤S302、所述节点对所述第三签名信息进行验证,如果验证成功,则在所述节点存储所述用户终端的用户名、新的IP地址的映射关系。
[0039] 当该节点接收到用户终端A发送的用户名A、用户终端A的新的IP地址、第三签名信息后,首先对第三签名信息进行验证,如果验证通过后,则该节点存储用户名A、用户终端A的新的IP地址的映射关系,如果节点对第三签名信息验证不通过,则该节点丢弃用户名A、用户终端A的新的IP地址。
[0040] 节点对第三签名信息进行验证的一种可实现的方式是:所述节点采用所述用户终端的公钥对所述第三签名信息进行解密,得到解密后的信息;若所述解密后的信息是所述用户终端的用户名、新的IP地址,则验证成功。由于对等网络中的节点已经存储有用户终端A的公钥,则当用户终端A重新发送自己的IP地址后,采用用户终端A已有的公钥对该第三签名信息进行解密,得到解密后的信息,如果解密后的信息是用户名A和用户终端A的新的IP地址,则说明验证成功,如果解密后的信息不是用户名A和用户终端A的新的IP地址,则说明验证不成功。如果解密后得到的用户名+新IP地址和该信息中没有加密的用户名+新IP地址信息一致,则说明该信息是用户A发送的,然后将用户A的新的IP地址进行记录。这样也就是说,任何一个用户,都存储有全P2P网络中的其他用户节点的最新的IP地址信息。
[0041] 当用户A要是用户B通信的时候,首先从用户A自己的表中查询到用户B的公钥和用户B的IP地址,用户A与用户B的IP地址建立通信连接,用户A发送一段随机码要求用户B签名,用户B用自己的私钥签名后,发送签名后的随机码给用户A,用户A用用户B的公钥进行解密来验证后,如果验证通过,说明这个IP地址是真的用户B。然后用户A用自己的私钥给这段随机码进行签名,然后将签名后的内容发送给用户B,用户B用用户A的公钥进行解密来验证,如果也验证通过,说明这个通信请求是真的用户A发起的。双发互相验证通过,可以开始通信。
[0042] 本实施例通过通信双方根据签名认证过程,保证了保证通信双方身份的真实性,进一步提高了通信的可靠性。
[0043] 图4为本发明实施例提供的互联网通话装置的结构图。本发明实施例提供的互联网通话装置可以执行互联网通话方法实施例提供的处理流程,如图4所示,互联网通话装置40包括接收模块41、排序模块42、计算模块43、发送模块44,其中,接收模块41用于接收用户终端发送的所述用户终端的用户名、公钥、IP地址、时间戳、第一签名信息;排序模块42用于按照所述时间戳对所述用户终端的用户名、公钥、IP地址进行排序,得到记录信息;计算模块43用于在所述记录信息中增加一个随机数,并根据增加有所述随机数的所述记录信息以及历史哈希值,计算得到当前哈希值;发送模块44用于当所述当前哈希值小于阈值时,将所述用户终端的用户名、公钥、IP地址、时间戳、所述随机数、所述当前哈希值和第二签名信息发送给所述对等网络中的其他节点,以使所述对等网络中的其他节点记录所述用户终端的用户名、公钥、IP地址、时间戳、所述随机数。
[0044] 本发明实施例通过对等网络中的节点接收用户终端发送的用户终端的用户名、公钥、IP地址、时间戳、第一签名信息,结合随机数和历史哈希值,计算得到当前哈希值,若当前哈希值小于阈值,则该节点将用户终端的用户名、公钥、IP地址、时间戳、随机数、当前哈希值发送给其他节点,以便其他节点记录用户终端的用户名、公钥、IP地址、时间戳、随机数、当前哈希值,由于这些信息经过了全网所有节点的验证,并且账本最终每个节点都保存了实时信息的记录,这样就保证了该P2P网络中的所有用户的用户名,公钥,IP地址的信息的安全性,提高了通话可靠性。
[0045] 图5为本发明另一实施例提供的互联网通话装置的结构图。在上述实施例的基础上,所述第一签名信息是对所述用户终端的用户名、公钥、IP地址、时间戳进行签名后得到的信息;所述第二签名信息是对所述用户终端的用户名、公钥、IP地址、时间戳、所述随机数、所述当前哈希值进行签名后得到的信息。
[0046] 接收模块41还用于接收所述用户终端发送的所述用户终端的用户名、新的IP地址、第三签名信息,所述第三签名信息是对所述用户终端的用户名、新的IP地址进行签名后得到的信息;互联网通话装置还包括:验证模块45,验证模块45用于对所述第三签名信息进行验证,如果验证成功,则存储所述用户终端的用户名、新的IP地址的映射关系。
[0047] 验证模块45具体用于采用所述用户终端的公钥对所述第三签名信息进行解密,得到解密后的信息;若所述解密后的信息是所述用户终端的用户名、新的IP地址,则验证成功。
[0048] 计算模块43具体用于在所述记录信息中的固定位置增加一个随机数。
[0049] 本发明实施例提供的互联网通话装置可以具体用于执行上述图1所提供的方法实施例,具体功能此处不再赘述。
[0050] 本发明实施例通过通信双方根据签名认证过程,保证了保证通信双方身份的真实性,进一步提高了通信的可靠性。
[0051] 综上所述,本发明实施例通过对等网络中的节点接收用户终端发送的用户终端的用户名、公钥、IP地址、时间戳、第一签名信息,结合随机数和历史哈希值,计算得到当前哈希值,若当前哈希值小于阈值,则该节点将用户终端的用户名、公钥、IP地址、时间戳、随机数、当前哈希值发送给其他节点,以便其他节点记录用户终端的用户名、公钥、IP地址、时间戳、随机数、当前哈希值,由于这些信息经过了全网所有节点的验证,并且账本最终每个节点都保存了实时信息的记录,这样就保证了该P2P网络中的所有用户的用户名,公钥,IP地址的信息的安全性,提高了通话可靠性;通过通信双方根据签名认证过程,保证了保证通信双方身份的真实性,进一步提高了通信的可靠性。
[0052] 在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0053] 所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0054] 另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
[0055] 上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
[0056] 本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0057] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈