专利详情

标题一种基于国产密码的智能航行数据存储交换方法及系统
[标]当前申请(专利权)人交通运输部水运科学研究所 | 南开大学
申请日2024年5月16日
申请号CN202410605747.3
公开(公告)日2024年8月6日
公开(公告)号CN118200051B
授权日2024年8月6日
法律状态/事件授权发明
专利类型授权
发明人耿雄飞 | 汪定 | 李雨彤 | 洛佳男 | 文捷 | 李春旭 | 丁格格 | 周丹 | 姚治萱 | 周宝霆
受理局中国
当前申请人(专利权)地址100088 北京市海淀区西土城路8号 (北京,北京,海淀区)
IPC分类号H04L9/40 | H04L9/32 | G08G3/00 | H04L9/08 | H04L9/06
国民经济行业分类号-
代理机构北京方安思达知识产权代理有限公司
代理人杨小蓉 | 杨青
被引用专利数量-
专利价值-

摘要

本发明涉及信息安全传输技术领域,尤其涉及一种基于国产密码的智能航行数据存储交换方法及系统,用于通过可信中心实现遥控驾驶船舶间、岸基间及船舶和岸基间的数据存储交换,方法包括:注册与认证:船舶向可信中心提交注册请求,可信中心验证身份合法性后,将注册信息反馈给船舶并向岸基分配注册信息;数据交换与签名:船舶之间、岸基之间或船舶与岸基之间使用SM4算法通过加密通信互相认证并确认数据信息,使用SM2算法对航行数据进行签名;数据上传与监管:岸基对航行数据进行认证,将签名的航行数据报告上传至区块链。本发明为船舶与岸基之间的数据交换提供了一个安全、高效且易于监管的框架,确保了航行数据的真实性、完整性和隐私性。

1.一种基于国产密码的智能航行数据存储交换方法,用于通过可信中心实现遥控驾驶船舶之间、岸基之间以及遥控驾驶船舶和岸基之间的数据存储交换,所述方法包括:
注册与认证:船舶向可信中心提交注册请求,可信中心验证身份合法性后,将注册信息反馈给船舶;并向岸基分配注册信息;
数据交换与签名:船舶之间、岸基之间或船舶与岸基之间使用SM4算法通过加密通信互相认证并确认数据信息,使用SM2算法对航行数据进行签名;
数据上传与监管:岸基对航行数据进行认证,将签名的航行数据报告上传至区块链;
所述方法还包括可信中心的初始化;包括:
根据SM2算法选取椭圆曲线,用于后续的密钥生成和签名验证,其中是椭圆曲线上的一个基点,代表伽瓦罗域,为一个有限域;
采用SM3算法作为单向Hash函数,选择一个随机数作为长期私钥,使用SM2算法,通过椭圆曲线函数计算对应的公钥,用于数据加密、签名和验证;公开参数;
所述船舶向可信中心提交注册请求,包括:
船舶选择随机数作为长期私钥,使用SM2算法生成公钥,将其身份信息、公钥及其他船舶相关信息发送给可信中心;
所述可信中心验证身份合法性后,将注册信息反馈给船舶;并向岸基分配注册信息;包括:
可信中心使用SM2算法验证公钥的有效性,并检查是否存在重复的身份,以验证提交的身份信息是否合法;验证身份合法,选择一个随机数,计算椭圆曲线上的点,并采用SM2算法对进行加密,生成为船舶分配的唯一标识符,并计算共享秘密;将发送给船舶;
船舶收到可信中心的发送后,使用公钥进行认证,计算是否等于,判断为是,则通过认证,船舶存储;
可信中心为岸基选择唯一标识符,私钥及对应公钥;选取随机数,计算椭圆曲线上的点,计算共享秘密,将发送给岸基;
岸基收到可信中心的发送后,使用公钥进行认证,计算是否等于,判断为是,则通过认证,岸基存储。
2.根据权利要求1所述的基于国产密码的智能航行数据存储交换方法,其特征在于,所述船舶之间、岸基之间或船舶与岸基之间使用SM4算法通过加密通信互相认证并确认数据信息,包括:
设定船舶之间、岸基之间或船舶与岸基之间的一个为节点A,另一个为节点B,节点A生成一对SM2密钥对作为本次会话的临时密钥,同时生成时间戳;将长期信息连同发送给节点B;其中分别为节点A的身份信息、公钥、共享秘密和椭圆曲线上的点;
节点B验证时间戳是否有效,以及是否成立,判断为是,则认证成功,节点B生成一对SM2临时密钥对和时间戳,根据SM2算法生成会话密钥,并根据SM4算法使用对要传输的数据内容进行加密,得到;将发送给节点A;其中分别为节点B的身份信息、公钥、共享秘密和椭圆曲线上的点;
节点A验证时间戳是否有效,以及是否成立,判断为是,则认证成功,节点A根据SM2算法生成与相等的会话密钥,并根据SM4算法使用对节点B传输的数据内容进行解密;在之后的通信中,节点A和节点B将利用共享的会话密钥,依照SM4算法执行数据的安全加密和解密传输。
3.根据权利要求2所述的基于国产密码的智能航行数据存储交换方法,其特征在于,
所述验证时间戳是否有效,包括:当时间戳与当前时间之差小于设置的第一阈值时间,则有效;
所述验证时间戳是否有效,包括:当时间戳与时间戳之差小于设置的第二阈值,则有效。
4.根据权利要求2或3所述的基于国产密码的智能航行数据存储交换方法,其特征在于,所述使用SM2算法对航行数据进行签名;包括:
每个节点使用SM3算法对原始数据计算消息摘要;
选择一个随机数并计算椭圆曲线点;
计算签名值,其中是点的横坐标,是椭圆曲线的阶;计算签名值,从而得到最终的数字签名;其中,是该节点的长期私钥,k是随机数。
5.根据权利要求4所述的基于国产密码的智能航行数据存储交换方法,其特征在于,所述岸基对航行数据进行认证,将签名的航行数据报告上传至区块链,包括:
船舶将发送给岸基;
岸基验证是否成立,判断为是,将发送给船舶;
船舶验证是否成立,判断为是,收集包括航行计划和传感器数据的航行数据,发送给岸基;
岸基计算哈希值,并使用长期私钥,使用SM2算法计算哈希值的数字签名;将带有数字签名的航行数据组成数据报告,上传至区块链。
6.根据权利要求1所述的基于国产密码的智能航行数据存储交换方法,其特征在于,数据均在公共信道内传输。
7.一种基于国产密码的智能航行数据存储交换系统,基于权利要求1-6之一所述的方法实现,用于通过可信中心实现遥控驾驶船舶之间、岸基之间以及遥控驾驶船舶和岸基之间的数据存储交换,其特征在于,所述系统包括:在遥控驾驶船舶和岸基均部署的注册与认证模块和数据交换与签名模块,以及部署在岸基的数据上传与监管模块;其中,
所述注册与认证模块,用于向可信中心提交注册请求,可信中心验证身份合法性后,将注册信息反馈给船舶和岸基;
所述数据交换与签名模块,用于使用SM4算法通过加密通信互相认证并确认数据信息,使用SM2算法对航行数据进行签名;
所述数据上传与监管模块,用于对航行数据进行认证,将签名的航行数据报告上传至区块链。

技术领域
[0001]本发明涉及信息安全传输技术领域,尤其涉及一种基于国产密码的智能航行数据存储交换方法及系统。
背景技术
[0002]在现代航运业中,船舶智能化和信息化的提升极大地增强了航行数据安全存储与交换的能力,这对于提高航运效率和确保海上安全至关重要。这些技术不仅是智能航运的核心,也是海上安全管理的重要工具。通过实现实时数据交换,船舶能够在繁忙航道上共享航速、航向、位置等信息,有效预防碰撞和海上事故。在紧急情况下,如船舶故障或海上事故,该协议能迅速传输关键数据至搜索和救援团队,提升救援效率。同时,海上交通管理中心也可以利用该协议更精准地监控航行船舶,保障航海安全。安全协议的设计旨在保护航行数据,维护船舶数据隐私,同时支持法律和政策要求,推动技术创新与行业发展。国产密码技术,尤其是SM2、SM3和SM4算法的应用,可以为航行数据安全提供强大的保障,有效防御安全威胁,确保数据处理的高效性。这些技术的应用符合国家信息安全政策,促进航运业信息化。此外,区块链技术具有去中心化、不可篡改和透明性等特点,可以确保航行数据的真实性和完整性,提升数据信任度。将国产密码算法与区块链技术相结合,能够在有效防止数据被非法篡改和访问、保护数据隐私安全的同时,提供一个透明且可验证的数据存储交换平台。
发明内容
[0003]本发明的目的在于克服现有技术缺陷,提出了一种基于国产密码的智能航行数据存储交换方法及系统。
[0004]为了实现上述目的,本发明提出了一种基于国产密码的智能航行数据存储交换方法,用于通过可信中心实现遥控驾驶船舶之间、岸基之间以及遥控驾驶船舶和岸基之间的数据存储交换,所述方法包括:
[0005]注册与认证:船舶向可信中心提交注册请求,可信中心验证身份合法性后,将注册信息反馈给船舶;并向岸基分配注册信息;
[0006]数据交换与签名:船舶之间、岸基之间或船舶与岸基之间使用SM4算法通过加密通信互相认证并确认数据信息,使用SM2算法对航行数据进行签名;
[0007]数据上传与监管:岸基对航行数据进行认证,将签名的航行数据报告上传至区块链。
[0008]优选的,所述方法还包括可信中心的初始化;包括:
[0009]根据SM2算法选取椭圆曲线,用于后续的密钥生成和签名验证,其中是椭圆曲线上的一个基点;代表伽瓦罗域,为一个有限域;
[0010]采用SM3算法作为单向Hash函数,选择一个随机数作为长期私钥,使用SM2算法,通过椭圆曲线函数计算对应的公钥,用于数据加密、签名和验证;公开参数。
[0011]优选的,所述船舶和岸基向可信中心提交注册请求,包括:
[0012]船舶选择随机数作为长期私钥,使用SM2算法生成公钥,将其身份信息、公钥及其他船舶相关信息发送给可信中心。
[0013]优选的,所述可信中心验证其身份合法性后,将注册信息反馈给船舶和岸基;包括:
[0014]可信中心使用SM2算法验证公钥的有效性,并检查是否存在重复的身份,以验证提交的身份信息是否合法;验证身份合法,选择一个随机数,计算椭圆曲线上的点,并采用SM2算法对进行加密,生成为船舶分配的唯一标识符,并计算共享秘密;将发送给船舶;
[0015]船舶收到可信中心的发送后,使用公钥进行认证,计算是否等于,判断为是,则通过认证,船舶存储;
[0016]可信中心为岸基选择唯一标识符,私钥及对应公钥;选取随机数,计算椭圆曲线上的点,计算共享秘密,将发送给岸基;
[0017]岸基收到可信中心的发送后,使用公钥进行认证,计算是否等于,判断为是,则通过认证,岸基存储。
[0018]优选的,所述船舶之间、岸基之间或船舶与岸基之间使用SM4算法通过加密通信互相认证并确认数据信息;包括:
[0019]设定船舶之间、岸基之间或船舶与岸基之间的一个为节点A,另一个为节点B,节点A生成一对SM2密钥对作为本次会话的临时密钥,同时生成时间戳;将长期信息连同发送给节点B;其中分别为节点A的身份信息、公钥、共享秘密和椭圆曲线上的点;
[0020]节点B验证时间戳是否有效,以及是否成立,判断为是,则认证成功,节点B生成一对SM2临时密钥对和时间戳,根据SM2算法生成会话密钥,并根据SM4算法使用对要传输的数据内容进行加密,得到;将发送给节点A;其中分别为节点B的身份信息、公钥、共享秘密和椭圆曲线上的点;
[0021]节点A验证时间戳是否有效,以及是否成立,判断为是,则认证成功,节点A根据SM2算法生成与相等的会话密钥,并根据SM4算法使用对节点B传输的数据内容进行解密;在之后的通信中,节点A和节点B将利用共享的会话密钥,依照SM4算法执行数据的安全加密和解密传输。
[0022]优选的,所述验证时间戳是否有效,包括:当时间戳与当前时间之差小于设置的第一阈值时间,则有效;
[0023]所述验证时间戳是否有效,包括:当时间戳与时间戳之差小于设置的第二阈值,则有效。
[0024]优选的,所述使用SM2算法对航行数据进行签名;包括:
[0025]每个节点使用SM3算法对原始数据计算消息摘要;
[0026]选择一个随机数 并计算椭圆曲线点;
[0027]计算签名值,其中是点的横坐标,是椭圆曲线的阶;计算签名值,从而得到最终的数字签名;其中是该节点的长期私钥,k是随机数。
[0028]优选的,所述岸基对航行数据进行认证,将签名的航行数据报告上传至区块链,包括:
[0029]船舶将发送给岸基;
[0030]岸基验证是否成立,判断为是,将发送给船舶;
[0031]船舶验证是否成立,判断为是,收集包括航行计划和传感器数据的航行数据,发送给岸基;
[0032]岸基计算哈希值,并使用长期私钥,使用SM2算法计算哈希值的数字签名;将带有数字签名的航行数据组成数据报告,上传至区块链。
[0033]优选的,数据均在公共信道内传输。
[0034]另一方面,本发明提供了一种基于国产密码的智能航行数据存储交换系统,用于通过可信中心实现遥控驾驶船舶之间、岸基之间以及遥控驾驶船舶和岸基之间的数据存储交换,所述系统包括:在遥控驾驶船舶和岸基均部署的注册与认证模块和数据交换与签名模块,以及部署在岸基的数据上传与监管模块;其中,
[0035]所述注册与认证模块,用于向可信中心提交注册请求,可信中心验证身份合法性后,将注册信息反馈给船舶和岸基;
[0036]所述数据交换与签名模块,用于使用SM4算法通过加密通信互相认证并确认数据信息,使用SM2算法对航行数据进行签名;
[0037]所述数据上传与监管模块,用于对航行数据进行认证,将签名的航行数据报告上传至区块链。
[0038]与现有技术相比,本发明的优势在于:
[0039]本发明提出的智能航行数据存储交换方法,使用国密算法SM2、SM3和SM4,对数据的生成、存储和传输过程进行了严格的完整性校验,确保了数据的安全性,实现了船舶与船舶、船舶与岸基控制中心以及岸基控制中心与岸基控制中心之间的双向数据交换和认证,确保了信息交互的可信度和身份验证的可追溯性。同时,区块链的引入显著提升了航行数据管理的安全性和透明度,有效防止了数据的恶意追踪和篡改,为智能航行领域带来了重要的技术进步。
附图说明
[0040]图1是本发明的基于国产密码的智能航行数据存储交换方法的系统架构图。
具体实施方式
[0041]了解决智能航运领域中数据交换方法在安全性、效率以及隐私保护方面的不足,本发明公开了一种基于国产密码的智能航行数据存储交换方法,旨在提升航行数据处理的安全性和效率。本发明基于国密算法SM2、SM3和SM4,确保在船舶之间以及船舶与岸基控制中心之间进行的数据交换安全可靠。通过将加密后的航行数据上传至区块链,本发明保障了数据的不可篡改性和完整性,同时也便于监管机构的审查和验证。
[0042]一种基于国产密码的智能航行数据存储交换方法,用于通过可信中心实现遥控驾驶船舶之间、岸基之间以及遥控驾驶船舶和岸基之间的数据存储交换,如图1所示,包括:
[0043]S1 初始化:由可信中心初始化智能航行数据存储交换系统;
[0044]S2 注册与认证:船舶和岸基控制中心向可信中心提交注册请求,可信中心验证其身份合法性后,将注册信息反馈给船舶和岸基控制中心,并分别存储在船舶和岸基控制中心存储单元中;
[0045]S3 数据交换与签名:在智能航行过程中,船舶之间及船舶与岸基控制中心之间通过加密通信互相认证并确认数据信息,对关键航行数据进行签名;
[0046]S4 数据上传与监管:岸基控制中心对船舶的航行数据进行认证,将签名的航行数据报告上传至区块链,以供监管部门审查。
[0047]优选的,所述的可信中心初始化为:可信中心首先根据国密SM2算法选取椭圆曲线,用于后续的密钥生成和签名验证,是椭圆曲线上的一个基点,代表伽瓦罗域,为一个有限域。为确保消息的完整性和不可篡改性,可信中心采用国产密码算法SM3作为单向Hash函数。可信中心选择一个随机数作为长期私钥,使用国产密码算法SM2,通过椭圆曲线函数计算对应的公钥。用于数据加密、签名和验证。最后,可信中心公开参数。
[0048]优选的,所述的S2注册与认证的具体步骤为:
[0049]S2.1船舶选择随机数作为长期私钥,使用国产密码算法SM2生成公钥,将其身份信息(例如MMSI)、公钥及其他船舶相关信息发送给可信中心,可信中心接收并记录这些注册请求;
[0050]S2.2可信中心使用国密SM2算法验证公钥的有效性,并检查是否存在重复的身份,以验证提交的身份信息是否合法。如果身份合法,可信中心选择一个随机数,计算椭圆曲线上的点,并采用SM2算法对进行加密,生成为船舶分配的唯一标识符,并计算共享秘密。最后,将反馈给船舶;
[0051]S2.3船舶收到可信中心的反馈后,首先会使用可信中心的公钥对这些消息进行认证,计算是否等于。通过认证后,船舶会将这些注册信息存储到智能卡中。
[0052]S2.4为了确保所有岸基控制中心都符合系统的安全标准、便于管理,由可信中心直接为岸基控制中心分配注册信息。可信中心为岸基控制中心选择唯一标识符,私钥及对应公钥。选取随机数,计算椭圆曲线上的点,计算共享秘密。最后,将发送给岸基控制中心;
[0053]S2.5岸基控制中心收到可信中心的信息后,首先会使用可信中心的公钥对这些消息进行认证,计算是否等于。通过认证后,岸基控制中心会将这些注册信息存储到系统中。
[0054]优选的,所述的S3数据交换与签名的具体步骤为:
[0055]S3.1无论是两个船舶之间、两个岸基控制中心之间,还是船舶与岸基控制中心之间,当两个节点需要进行数据交换时,节点A首先生成一对SM2密钥对,作为本次会话的临时密钥,同时生成时间戳。最后,将智能卡或存储系统中的长期信息连同一起发送给目标节点B;
[0056]S3.2当节点B收到消息后,首先验证时间戳是否有效,以及是否成立。若认证成功,节点B也生成一对SM2临时密钥对和时间戳,根据SM2算法生成会话密钥,并根据SM4算法使用对要传输的数据内容进行加密,得到。最后,将发送给目标节点A;
[0057]S3.3当节点A收到反馈后,同样验证时间戳及是否成立。认证成功后,节点A根据SM2算法生成与相等的会话密钥,并根据SM4算法使用对节点B传输的数据内容进行解密。在之后的通信中,节点A和节点B将利用共享的会话密钥,依照SM4算法执行数据的安全加密和解密传输。这一过程确保了数据在传输过程中的机密性和完整性,同时也验证了通信双方的身份,防止未授权访问。
[0058]S3.4为了确保数据的完整性及不可抵赖性,要求节点使用其长期私钥,根据SM2算法对所传输的数据进行签名。首先,节点通过SM3算法对原始数据计算消息摘要。接着,选择一个随机数 并计算椭圆曲线点。然后,计算签名值,其中是点的横坐标,是椭圆曲线的阶。最后,计算签名值,其中是该节点的长期私钥,从而得到最终的数字签名。
[0059]优选的,所述的S4数据确认与签名的具体步骤为:
[0060]S4.1船舶首先将发送给目标岸基控制中心;
[0061]S4.2岸基控制中心收到消息后,验证是否成立。若成立,则将发送给船舶;
[0062]S4.3 船舶收到消息后,验证是否成立。若成立,则准备要上传的航行数据(例如航行计划、传感器数据等),发送给岸基控制中心;
[0063]S4.4 岸基控制中心收到回应后,计算哈希值,并使用其长期私钥,根据SM2算法计算哈希值的数字签名。最后,将带有签名的航行数据组成数据报告,上传至区块链中。
[0064]优选的,所述的数据交换与签名策略都是通过可信中心基于SM2算法选定的椭圆曲线函数进行加密计算。
[0065]优选的,所述验证时间戳的方法,具体为当接收到的信息中包含的时间戳(记作)与设备获取的当前时间戳(记作)之差满足 (预设通信过程中允许的阈值时间)时,可以继续认证;当时间差大于时,则终止认证,以确保数据的新鲜性。
[0066]优选的,所述S3、S4中的信息均在公共信道内传输。
[0067]下面结合附图和实施例对本发明的技术方案进行详细的说明。
[0068]实施例1
[0069]本实施例提供了一种基于国产密码的智能航行数据存储交换方法,包括以下步骤:
[0070]S1 初始化:由可信中心初始化智能航行数据存储交换系统;
[0071]在本实施例中,所述步骤S1具体包括以下步骤:可信中心首先根据国密SM2算法选取椭圆曲线,用于后续的密钥生成和签名验证,是椭圆曲线上的一个基点。为确保消息的完整性和不可篡改性,可信中心采用国产密码算法SM3作为单向Hash函数。可信中心选择一个随机数作为长期私钥,使用国产密码算法SM2,通过椭圆曲线函数计算对应的公钥。用于数据加密、签名和验证。最后,可信中心公开参数。
[0072]S2 注册与认证:船舶和岸基控制中心向可信中心提交注册请求,可信中心验证其身份合法性后,将注册信息反馈给船舶和岸基控制中心,并分别存储在船舶和岸基控制中心存储单元中。
[0073]在本实施例中,所述步骤S2具体包括以下步骤:
[0074]S2.1船舶选择随机数作为长期私钥,使用国产密码算法SM2生成公钥,将其身份信息(例如MMSI)、公钥及其他船舶相关信息发送给可信中心,可信中心接收并记录这些注册请求;
[0075]S2.2可信中心使用国密SM2算法验证公钥的有效性,并检查是否存在重复的身份,以验证提交的身份信息是否合法。如果身份合法,可信中心选择一个随机数,计算椭圆曲线上的点,并采用SM2算法对进行加密,生成为船舶分配的唯一标识符,并计算共享秘密。最后,将反馈给船舶;
[0076]S2.3船舶收到可信中心的反馈后,首先会使用可信中心的公钥对这些消息进行认证,计算是否等于。通过认证后,船舶会将这些注册信息存储到智能卡中。
[0077]S2.4为了确保所有岸基控制中心都符合系统的安全标准、便于管理,由可信中心直接为岸基控制中心分配注册信息。可信中心为岸基控制中心选择唯一标识符,私钥及对应公钥。选取随机数,计算椭圆曲线上的点,计算共享秘密。最后,将发送给岸基控制中心;
[0078]S2.5岸基控制中心收到可信中心的信息后,首先会使用可信中心的公钥对这些消息进行认证,计算是否等于。通过认证后,岸基控制中心会将这些注册信息存储到系统中。
[0079]步骤S3:数据交换与签名:在智能航行过程中,船舶之间及船舶与岸基控制中心之间通过加密通信互相认证并确认数据信息,对关键航行数据进行签名。
[0080]在本实施例中,所述步骤S3具体包括以下步骤:
[0081]S3.1无论是船舶与船舶、岸基控制中心与岸基控制中心,还是船舶与岸基控制中心之间,当两个节点需要进行数据交换时,节点A首先生成一对SM2密钥对,作为本次会话的临时密钥,同时生成时间戳。最后,将智能卡或存储系统中的长期信息连同一起发送给目标节点B;
[0082]S3.2当节点B收到消息后,首先验证时间戳是否有效,以及是否成立。若认证成功,节点B也生成一对SM2临时密钥对和时间戳,根据SM2算法生成会话密钥,并根据SM4算法使用对要传输的数据内容进行加密,得到。最后,将发送给目标节点A;
[0083]S3.3当节点A收到反馈后,同样验证时间戳及是否成立。认证成功后,节点A根据SM2算法生成与相等的会话密钥,并根据SM4算法使用对节点B传输的数据内容进行解密。在之后的通信中,节点A和节点B将利用共享的会话密钥,依照SM4算法执行数据的安全加密和解密传输。这一过程确保了数据在传输过程中的机密性和完整性,同时也验证了通信双方的身份,防止未授权访问。
[0084]S3.4为了确保数据的完整性及不可抵赖性,要求节点使用其长期私钥,根据SM2算法对所传输的数据进行签名。首先,节点通过SM3算法对原始数据 计算消息摘要。接着,选择一个随机数 并计算椭圆曲线点。然后,计算签名值,其中是点的横坐标,是椭圆曲线的阶。最后,计算签名值,其中是该节点的长期私钥,从而得到最终的数字签名。
[0085]步骤S4:数据上传与监管:岸基控制中心对船舶的航行数据进行认证,将签名的航行数据报告上传至区块链,以供监管部门审查。
[0086]在本实施例中,所述步骤S4具体包括以下步骤:
[0087]S4.1船舶首先将发送给目标岸基控制中心;
[0088]S4.2岸基控制中心收到消息后,验证是否成立。若成立,则将发送给船舶;
[0089]S4.3 船舶收到消息后,验证是否成立。若成立,则准备要上传的航行数据(例如航行计划、传感器数据等),发送给岸基控制中心;
[0090]S4.4 岸基控制中心收到回应后,计算哈希值,并使用其长期私钥,根据SM2算法计算哈希值的数字签名。最后,将带有签名的航行数据组成数据报告,上传至区块链中。
[0091]实施例2
[0092]本发明的实施例2提供了一种基于国产密码的智能航行数据存储交换系统,用于通过可信中心实现遥控驾驶船舶之间、岸基之间以及遥控驾驶船舶和岸基之间的数据存储交换,该系统基于实施例1的方法实现。包括:在遥控驾驶船舶和岸基均部署的注册与认证模块和数据交换与签名模块,以及部署在岸基的数据上传与监管模块;其中,
[0093]注册与认证模块,用于向可信中心提交注册请求,可信中心验证身份合法性后,将注册信息反馈给船舶和岸基;
[0094]数据交换与签名模块,用于使用SM4算法通过加密通信互相认证并确认数据信息,使用SM2算法对航行数据进行签名;
[0095]数据上传与监管模块,用于对航行数据进行认证,将签名的航行数据报告上传至区块链。
[0096]实施例3
[0097]本发明的实施例3提供的一种计算机设备,包括:至少一个处理器、存储器、至少一个网络接口和用户接口。该设备中的各个组件通过总线系统耦合在一起。可理解,总线系统用于实现这些组件之间的连接通信。总线系统除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。
[0098]其中,用户接口可以包括显示器、键盘或者点击设备(例如,鼠标,轨迹球(trackball)、触感板或者触摸屏等。
[0099]可以理解,本申请公开实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器 (Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器 (Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(DoubleData Rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本文描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
[0100]在一些实施方式中,存储器存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集:操作系统和应用程序。
[0101]其中,操作系统,包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。应用程序,包含各种应用程序,例如媒体播放器(Media Player)、浏览器(Browser)等,用于实现各种应用业务。实现本公开实施例方法的程序可以包含在应用程序中。
[0102]在本上述的实施例中,还可通过调用存储器存储的程序或指令,具体的,可以是应用程序中存储的程序或指令,处理器用于:
[0103]执行实施例1的方法的步骤。
[0104]实施例1的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application SpecificIntegrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行实施例1中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合实施例1所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程 存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
[0105]可以理解的是,本发明描述的这些实施例可以用硬件、软件、固件、中间件、微码或其组合来实现。对于硬件实现,处理单元可以实现在一个或多个专用集成电路(Application Specific Integrated Circuits,ASIC)、数字信号处理器(Digital SignalProcessing,DSP)、数字信号处理设备(DSP Device,DSPD)、可编程逻辑设备(ProgrammableLogic Device,PLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用处理器、控制器、微控制器、微处理器、用于执行本申请所述功能的其它电子单元或其组合中。
[0106]对于软件实现,可通过执行本发明的功能模块(例如过程、函数等) 来实现本发明技术。软件代码可存储在存储器中并通过处理器执行。存储器可以在处理器中或在处理器外部实现。
[0107]实施例4
[0108]本发明实施例还可提供一种非易失性存储介质,用于存储计算机程序。当该计算机程序被处理器执行时可以实现上述方法实施例中的各个步骤。
[0109]实施例5
[0110]本发明实施例还可提供一种计算机程序产品,包括计算机程序/指令。当该计算机程序/指令被处理器执行时可以实现上述方法实施例中的各个步骤。
[0111]本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0112]本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0113]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0114]这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0115]综述:
[0116]本发明结合国产密码算法SM2、SM3和SM4以及区块链技术,为船舶与岸基控制中心之间的数据交换提供了一个安全、高效且易于监管的框架。通过系统初始化、用户注册与认证、数据交换与签名,以及数据的区块链上传与监管等关键步骤,本方法确保了航行数据的真实性、完整性和隐私性。这一系统的实施,不仅减轻了船舶通信设备的计算负担,还提高了海上事故处理的响应速度和效率,对智能航运和海上安全管理具有显著的实际应用价值。本发明提出的认证方法能有效的抵抗已知的各种攻击,预计将促进航运业务流程向更加安全、高效的方向发展,推动航运业的现代化。
[0117]最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制。尽管参照实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,对本发明的技术方案进行修改或者等同替换,都不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。