1.一种基于区块链的即时通讯方法,应用于基于区块链的即时通讯系统,其特征在于,所述系统包括管理节点及多种域即时通讯服务器,多种所述域即时通讯服务器对应多种即时通讯应用,所述管理节点用于接收域即时通讯服务器的信息并对其进行处理;
所述方法包括如下步骤:
步骤1:用户通过域即时通讯服务器向管理节点发送注册请求,管理节点响应于注册请求执行针对所述用户的注册处理,将用户登记为注册用户,记录该用户的相关信息,并将其写入区块链;
步骤2:发送用户生成通讯信息,并对其进行加密,通过域即时通讯服务器向管理节点发送加密后的通讯信息,管理节点获取加密后的通讯信息,并对其进行解密,根据解密后的通讯信息获取接收用户的标识,根据接收用户的标识判断接收用户是否为注册用户,若接收用户不为注册用户则取消通讯信息的传送,并向发送用户反馈通讯失败;
步骤3:若接收用户为注册用户,则根据通讯信息判断发送用户的即时通讯应用与接收用户的即时通讯应用是否相同,若相同则对解密后的通讯信息进行加密,并通过域即时通讯服务器将加密后的通讯信息发送至接收用户;
步骤4:若发送用户的即时通讯应用与接收用户的即时通讯应用不相同,则管理节点对通讯信息进行加密,并通过与接收用户的即时通讯应用相对应的域即时通讯服务器将加密后的通讯信息发送至接收用户;
步骤5:接收用户对加密后的通讯信息进行解密。
2.根据权利要求1所述的基于区块链的即时通讯方法,其特征在于,步骤1中,用户通过域即时通讯服务器向管理节点发送注册请求,管理节点响应于注册请求执行针对所述用户的注册处理,将用户登记为注册用户,记录该用户的相关信息,并将其写入区块链,具体为:用户通过域即时通讯服务器向管理节点发送注册请求,其中注册请求中包用户的身份信息,管理节点根据用户的身份信息为用户生成唯一的标识及非对称密钥对,其中非对称密钥对包括公钥及私钥,将标识及非对称密钥发送至用户,管理节点记录用户发送注册请求的域即时通讯服务器的服务器标识,其中,服务器标识与域即时通讯服务器及即时通讯应用相对应,通过管理节点自身的对称密钥将用户的身份信息、标识及服务器标识进行加密,并将其写入区块链,完成用户的注册。
3.根据权利要求2所述的基于区块链的即时通讯方法,其特征在于,步骤2中,发送用户生成通讯信息,并对其进行加密,通过域即时通讯服务器向管理节点发送加密后的通讯信息,管理节点获取加密后的通讯信息,并对其进行解密,根据解密后的通讯信息获取接收用户的标识,根据接收用户的标识判断接收用户是否为注册用户,若接收用户不为注册用户则取消通讯信息的传送,并向发送用户反馈通讯失败,具体为:发送用户根据需求生成通讯信息,并获取自身的公钥,通过公钥将通讯信息加密,通过域即时通讯服务器向管理节点发送加密后的通讯信息及发送用户的公钥,管理节点根据发送用户的公钥获取发送用户的私钥,通过发送用户的私钥对加密后的通讯信息进行解密,其中通讯信息包括接收用户的标识、发送用户的标识及通讯内容,管理节点根据接收用户的标识判断接收用户是否为注册用户,若接收用户不为注册用户,则停止通讯信息的传输,并向发送用户反馈通讯失败。
4.根据权利要求3所述的基于区块链的即时通讯方法,其特征在于,步骤3中,若接收用户为注册用户,则根据通讯信息判断发送用户的即时通讯应用与接收用户的即时通讯应用是否相同,若相同则对解密后的通讯信息进行加密,并通过域即时通讯服务器将加密后的通讯信息发送至接收用户,具体为:
若判断接收用户为注册用户,则根据接收用户的标识获取接收用户的公钥及接受用户的服务器标识,根据发送用户的标识获取发送用户的服务器标识,判断接收用户的服务器标识与发送用户的服务器标识是否相同,若相同,则判断发送用户的即时通讯应用与接收用户的即时通讯应用相同,通过接收用户的公钥对通讯内容进行加密,将加密后的通讯内容通过与服务器标识相对应的域即时通讯服务器发送至接收用户的即时通讯应用,通过对称密钥将加密后的通讯内容、接收用户的公钥及接收用户与发送用户的服务器标识进行加密,并作为备份记录写入区块链。
5.根据权利要求4所述的基于区块链的即时通讯方法,其特征在于,步骤4中,若发送用户的即时通讯应用与接收用户的即时通讯应用不相同,则管理节点通过接收用户的即时通讯应用相对应的域即时通讯服务器将加密后的通讯信息发送至接收用户,具体为:若判断发送用户的即时通讯应用与接收用户的即时通讯应用不相同,通过接收用户的公钥对通讯内容进行加密,管理节点通过与接收用户的服务器标识对应的域即时通讯服务器将加密后的通讯内容发送至接收用户的即时通讯应用,通过对称密钥将加密后的通讯内容、接收用户的公钥、接收用户的服务器标识及发送用户的服务器标识进行加密,并作为备份记录写入区块链。
6.根据权利要求5所述的基于区块链的即时通讯方法,其特征在于,步骤5中,接收用户对加密后的通讯信息进行解密,具体为:接收用户获取自身的私钥,通过私钥对加密后的通讯内容进行解密,得到通讯内容。