一种数据加密方法、数据解密方法、装置、设备及系统与流程
本技术涉及加解密,尤其涉及一种数据加密方法、数据解密方法、装置、设备及系统。
背景技术:
1、分布式业务需要使用广播进行通信,现有的广播数据加解密使用的是固定密钥,即一个设备上的多个用户、多个业务应用之间加解密广播共享一个设备级的广播秘钥。
2、解密端接收到广播数据后,若解密端为多用户系统,每个用户的每个业务应用都可以使用加密端的密钥进行解密,导致广播数据在解密端容易被泄露,存在数据泄露的安全问题。
技术实现思路
1、本技术实施例提供一种数据加密方法、数据解密方法、装置、设备及系统,能够降低数据泄露风险。
2、第一方面,提供一种数据加密方法,该方法应用于加密端,加密端与解密端通信连接。该方法包括:加密端根据目标域信息和根密钥生成目标域密钥;目标域信息用于指示待加密数据对应的目标用户和/或目标业务应用,根密钥为加密端和解密端协商得到的。加密端基于目标域密钥对待加密数据进行加密,得到加密后数据。加密端向解密端发送加密后数据。
3、基于上述数据加密方法,加密端首先根据加密端和解密端共享的根密钥和目标域信息生成对应目标域信息的目标域密钥,目标域信息用于指示待加密数据对应的目标用户和/或目标业务应用。加密端基于目标域密钥对待加密数据进行加密得到加密后数据,向解密端发送加密后数据。如此,解密端仅有目标用户和/或目标业务应用的域信息能够派生得到加密用的目标域密钥,实现对加密后数据解密成功。其他用户和/或其他业务应用的域信息派生得到的域密钥与目标域密钥不同,无法实现对加密后数据解密,从而降低了数据泄露风险。
4、作为一种可能的实现方式,加密端获取安全随机数,安全随机数对应目标域信息。加密端根据目标域信息、安全随机数和预设密钥长度生成目标域密钥,目标域密钥的长度为预设密钥长度。如此,由于其他用户和/或其他业务应用能够获取到目标用户和/或目标业务应用的目标域信息,并派生出目标域密钥实现对加密后数据进行解密,故通过在密钥派生过程增加与目标域信息对应的安全随机数,从而提高了派生出目标域密钥的安全性,进一步降低了数据泄露风险。
5、可选地,加密端还可以获取在时间戳对应的时间范围内有效的安全随机数。加密端根据目标域信息、安全随机数、时间戳、根密钥和预设密钥长度生成目标域密钥。目标域密钥在时间戳对应的时间范围内有效。如此,安全随机数仅在时间戳对应的时间范围内有效,从而使得目标域密钥仅在时间戳对应的时间范围内有效,从而进一步提高了目标域密钥的安全性,进一步降低了数据泄露风险。
6、可选地,加密端按照预设周期更新安全随机数;和/或加密端在确定要加密待加密数据向解密端发送的情况下,更新安全随机数。如此加密端实现对安全随机数的定期更新和/或数据发送前更新,从而基于更新后的安全随机数实现对目标域密钥的定期更新和/或数据发送前更新,保证了目标域密钥的实时性和有效性。
7、作为一种可能的实现方式,加密端基于第一预设认证算法使用根密钥,生成安全随机数的第一认证值;向解密端发送第一认证值和安全随机数。
8、作为一种可能的实现方式,加密端基于第一预设认证算法使用根密钥,生成安全随机数和时间戳的第二认证值;向解密端发送第二认证值和安全随机数。
9、基于上述两种可能的实现方式,加密端通过使用预设认证算法生成认证值,并向解密端广播认证值和安全随机数,从而使得解密端可以基于认证值对安全随机数的完整性进行验证,避免安全随机数在广播过程中被篡改的风险。
10、作为一种可能的实现方式,加密端基于预设加密算法和根密钥对安全随机数进行加密得到加密值;向解密端发送加密值。如此,加密端通过将安全随机数进行加密后到解密端,提高了安全随机数的安全性,避免安全随机数在传输过程中被篡改的风险。并且解密成功即隐含表示了安全随机数认证成功,相比采用认证算法对安全随机数进行认证的方案,传输的数据量减少,从而减少了通信开销。
11、作为一种可能的实现方式,加密端基于目标域密钥对待加密数据进行加密得到加密后数据之前,加密端向解密端发送认证请求,接收解密端发送的一次性随机数(nonce),基于第二预设认证算法使用目标域密钥生成nonce的第三认证值。加密端向解密端发送第三认证值,在接收到解密端的认证通过的消息的情况下,启用目标域密钥进行加密广播。如此,加密端通过挑战响应机制实现身份认证,从而降低了数据泄露风险。
12、作为一种可能的实现方式,加密端基于哈希函数对目标域密钥进行哈希运算,得到目标哈希值。加密端向解密端发送目标哈希值。如此,解密端通过目标域密钥的目标哈希值进行验证,确保加密端和解密端派生出的目标域密钥一致,防止出现密钥派生错误。
13、第二方面,提供一种数据解密方法,该方法应用于解密端,解密端于加密端通信连接。该方法包括:解密端根据根密钥和每个域信息生成每个域密钥。每个域信息用于指示每个用户和/或每个业务应用,根密钥为加密端和解密端协商得到的。接收加密端发送的加密后数据,基于每个域密钥对加密后数据进行解密,得到解密后数据。
14、基于上述数据解密方法,解密端根据加密端和解密端共享的根密钥和每个域信息生成对应每个域信息的每个域密钥。解密端基于每个域密钥对加密后数据进行解密,得到解密后数据。如此,解密端不能直接使用共享的根密钥进行解密,而是采用根密钥和每个域信息派生后的域密钥进行解密。从而使得仅有目标用户和/或目标业务应用的域信息能够生成目标域密钥,实现对加密后数据解密成功。其他用户和/或其他业务应用的域信息生成域密钥与目标域密钥不同,无法实现对加密后数据解密成功,从而降低了数据泄露风险。
15、作为一种可能的实现方式,解密端接收加密端发送的安全随机数,解密端根据根密钥、每个域信息、安全随机数和预设密钥长度生成每个域密钥。每个域密钥的长度为预设密钥长度。如此,解密端通过在每个域密钥的密钥派生过程增加安全随机数,安全随机数是加密端发送的与目标域信息对应的安全随机数,从而提高了解密端派生出目标域密钥的复杂性和安全性,进一步降低了数据泄露风险。
16、可选地,解密端接收加密端发送的安全随机数和时间戳,解密端根据根密钥、每个域信息、安全随机数、时间戳和预设密钥长度生成每个域密钥。如此,安全随机数仅在时间戳对应的时间范围内有效,从而使得每个域密钥仅在时间戳对应的时间范围内有效,从而进一步降低了数据泄露风险。
17、可选地,解密端接收加密端发送的第一认证值和安全随机数,基于第一预设认证算法使用根密钥计算第一认证值,得到待验证安全随机数。解密端确定待验证安全随机数和安全随机数一致。如此,解密端基于第一认证值对安全随机数的完整性进行验证,避免安全随机数在传输过程中被篡改的风险。
18、可选地,解密端接收加密端发送的第二认证值、安全随机数和时间戳,基于第一预设认证算法使用根密钥计算第二认证值,得到待验证安全随机数。解密端确定待验证安全随机数与安全随机数一致、且当前时间位于时间戳对应的时间范围。如此,解密端基于第二认证值对安全随机数的完整性和有效性进行验证,避免了安全随机数在传输过程中被篡改的风险,确保了安全随机数的有效性。
19、可选地,解密端接收加密端发送的加密值,基于预设加密算法和根密钥解密加密值,得到安全随机数。如此,安全随机数在数据传输过程中是加密数据,解密端对加密值进行解密才能得到安全随机数,提高了安全随机数的安全性,避免安全随机数在广播过程中被篡改的风险。并且解密成功即隐含表示了安全随机数认证成功,相比采用认证算法对安全随机数进行认证的方案,传输的数据量减少,从而减少了通信开销。
20、作为一种可能的实现方式,解密端在基于每个域密钥对加密后的数据进行解密得到解密后数据之前,解密端在接收到加密端发送的认证请求的情况下,生成nonce;向加密端发送nonce。解密端基于第二预设认证算法使用每个域密钥进行生成nonce的每个第四认证值;接收加密端发送的第三认证值;确定每个第四认证值中存在与第三认证值一致的目标第四认证值的情况下,向加密端发送认证通过的消息。如此,解密端通过挑战响应机制实现身份认证,从而降低了数据泄露风险。
21、作为一种可能的实现方式,解密端接收加密端发送的目标哈希值,基于预设哈希函数对每个域密钥进行哈希运算,得到每个域密钥对应的每个待验证哈希值。解密端确定域目标哈希值一致的目标待验证哈希值对应的目标域密钥。如此,解密端通过目标域密钥的目标哈希值进行验证,确保加密端和解密端派生出的目标域密钥一致,防止出现密钥派生错误。
22、作为一种可能的实现方式,解密端轮询采用每个域密钥对加密后数据进行解密,确定采用目标域密钥解密成功后的解密后数据。如此,解密端实现按每个用户和/或每个业务应用的域信息进行解密,确保了数据跨域不泄露,从而降低了数据泄露风险。
23、可选地,解密端确定目标域密钥对应的目标用户和/或目标业务应用,向目标用户和/或目标业务应用上报解密后数据。如此,解密端实现了数据按域隔离,确保数据只能到达目标用户和/或目标业务应用,确保数据跨域不泄露,从而降低了数据泄露风险。
24、第三方面,提供一种数据加密装置,所述装置包括用于执行第一方面或第一方面任一种可能实现方式中的数据加密方法的各个模块。
25、第三方面所述的数据加密装置可以是终端设备或网络设备,也可以是可设置于终端设备或网络设备中的芯片(系统)、网卡或其他部件或组件,还可以是包含终端设备或网络设备的装置,本技术对此不做限定。
26、此外,第三方面所述的数据加密装置的技术效果可以参考第一方面所述的数据加密方法的技术效果,此处不再赘述。
27、第四方面,提供一种数据解密装置,所述装置包括用于执行第二方面或第二方面任一种可能实现方式中的数据解密方法的各个模块。
28、第四方面所述的数据解密装置可以是终端设备或网络设备,也可以是可设置于终端设备或网络设备中的芯片(系统)、网卡或其他部件或组件,还可以是包含终端设备或网络设备的装置,本技术对此不做限定。
29、此外,第四方面所述的数据解密装置的技术效果可以参考第二方面所述的数据解密方法的技术效果,此处不再赘述。
30、第五方面,提供一种电子设备,该电子设备包括处理器和存储器;处理器与存储器耦合;存储器用储计算机指令,计算机指令由处理器加载并执行以使计算设备实现上述第一方面或第二方面中任意一种可能的实现方式中所述方法的操作步骤。
31、第六方面,提供一种计算机可读存储介质,包括:计算机软件指令;当计算机软件指令在计算机中运行时,使得计算机执行如第一方面或第二方面中任意一种可能的实现方式中所述方法的操作步骤。
32、第七方面,本技术实施例提供了一种芯片系统。该芯片系统包括存储器和至少一个处理器。该存储器用于存储一组计算机指令,当处理器执行该一组计算机指令时,执行第一方面或第二方面中任意一种可能的实现方式中所述方法的操作步骤。
33、第八方面,提供一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如第一方面或第二方面中任意一种可能的实现方式中所述方法的操作步骤。
34、本技术在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com