CN110851856B - 缓存数据的获取方法及计算机可读存储介质 - Google Patents

缓存数据的获取方法及计算机可读存储介质 Download PDF

Info

Publication number
CN110851856B
CN110851856B CN201910967843.1A CN201910967843A CN110851856B CN 110851856 B CN110851856 B CN 110851856B CN 201910967843 A CN201910967843 A CN 201910967843A CN 110851856 B CN110851856 B CN 110851856B
Authority
CN
China
Prior art keywords
data
cache
decryption
key value
expired
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910967843.1A
Other languages
English (en)
Other versions
CN110851856A (zh
Inventor
刘德建
曾慧萍
王杰光
苏昌骏
郭玉湖
陈宏�
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujian Tianquan Educational Technology Ltd
Original Assignee
Fujian Tianquan Educational Technology Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujian Tianquan Educational Technology Ltd filed Critical Fujian Tianquan Educational Technology Ltd
Priority to CN201910967843.1A priority Critical patent/CN110851856B/zh
Publication of CN110851856A publication Critical patent/CN110851856A/zh
Application granted granted Critical
Publication of CN110851856B publication Critical patent/CN110851856B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services

Abstract

本发明公开了一种缓存数据的获取方法及计算机可读存储介质,方法包括:查询缓存数据;若所述缓存数据需要解密且解密失败,则将所述缓存数据的缓存过期时间设置成已过期的时间;根据所述缓存数据的缓存过期时间,判断所述缓存数据是否过期;若已过期,则重新请求网络数据;使用新的密钥值对所述网络数据进行加密,并将加密后的数据保存至本地数据库,得到缓存数据。本发明可解决本地数据缓存加密且密钥值改变时,无法兼容旧缓存数据的问题。

Description

缓存数据的获取方法及计算机可读存储介质
技术领域
本发明涉及数据处理技术领域,尤其涉及一种缓存数据的获取方法及计算机可读存储介质。
背景技术
在大部分Android应用中,网络请求数据之后都可以设置是否保存数据到本地数据库,并且可以对其中的字段数据进行加密,正常情况下,加密的key值不可随意改变,一旦改变,将无法解密数据,导致出错。
而在实际的场景中,也有改变加密key值的情况发生,就比如原始开发时,使用Android的设备id作为加密的key值加密数据,而在高版本的Android中,设备id的获取是需要动态申请权限,一旦没有权限,则设备id获取的值将为空,那么此时就无法解密原始数据,导致错误,也就是key值改变时,无法兼容旧的数据。
发明内容
本发明所要解决的技术问题是:提供一种缓存数据的获取方法及计算机可读存储介质,可在加密密钥值改变时,兼容旧的缓存数据。
为了解决上述技术问题,本发明采用的技术方案为:一种缓存数据的获取方法,包括:
查询缓存数据;
若所述缓存数据需要解密且解密失败,则将所述缓存数据的缓存过期时间设置成已过期的时间;
根据所述缓存数据的缓存过期时间,判断所述缓存数据是否过期;
若已过期,则重新请求网络数据;
使用新的密钥值对所述网络数据进行加密,并将加密后的数据保存至本地数据库,得到缓存数据。
本发明还提出一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上所述的步骤。
本发明的有益效果在于:当解密失败时,通过改变缓存数据的缓存过期时间,使得缓存数据变为已过期数据,从而重新获取网络数据,并用新的密钥值加密数据,保存新的数据。本发明可解决本地数据缓存加密且密钥值改变时,无法兼容旧缓存数据的问题。
附图说明
图1为本发明的一种缓存数据的获取方法的流程图;
图2为本发明实施例一的方法流程图。
具体实施方式
为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图详予说明。
本发明最关键的构思在于:当解密失败时,改变缓存数据的缓存过期时间,重新获取网络数据,并用新的密钥值加密数据,保存新的数据。
请参阅图1,一种缓存数据的获取方法,包括:
查询缓存数据;
若所述缓存数据需要解密且解密失败,则将所述缓存数据的缓存过期时间设置成已过期的时间;
根据所述缓存数据的缓存过期时间,判断所述缓存数据是否过期;
若已过期,则重新请求网络数据;
使用新的密钥值对所述网络数据进行加密,并将加密后的数据保存至本地数据库,得到缓存数据。
从上述描述可知,本发明的有益效果在于:可解决本地数据缓存加密且密钥值改变时,无法兼容旧缓存数据的问题。
进一步地,所述若所述缓存数据需要解密且解密失败,则将所述缓存数据的缓存过期时间设置成已过期的时间具体为:
判断所述缓存数据是否需要解密;
若不需要解密,则获取缓存数据;
若需要解密,则使用新的密钥值对所述缓存数据进行解密,并判断解密是否成功;
若不成功,则使用旧的密钥值对所述缓存数据进行解密,并判断解密是否成功;
若不成功,则将所述缓存数据的缓存过期时间设置成已过期的时间。
由上述描述可知,当新的密钥值和旧的密钥值均无法解密成功时,通过改变缓存过期时间,使得后续可重新获取网络数据进行缓存。
进一步地,所述若所述缓存数据需要解密且解密失败,则将所述缓存数据的缓存过期时间设置成已过期的时间之后,进一步包括:
若使用新的密钥值或旧的密钥值解密成功,则获取解密后的缓存数据。
本发明还提出一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如上所述的步骤。
实施例一
请参照图2,本发明的实施例一为:种缓存数据的获取方法,可应用于带有本地数据库缓存的Android应用,适用于当改变缓存数据的加密密钥值时,能兼容旧缓存数据的场景;所述方法包括如下步骤:
S1:查询缓存数据。进一步地,若查询不到缓存数据,则直接网络请求数据,请求完后若需要加密数据,则加密后保存到数据库中,并返回数据给调用方。
S2:判断所述缓存数据是否需要解密,若是,则执行步骤S3,若否,则执行步骤S6。
S3:使用新的密钥值对所述缓存数据进行解密,并判断解密是否成功,若是,则执行步骤S6,若否,则执行步骤S4。进一步地,使用所述缓存数据对应的最新的密钥值进行解密。
S4:使用旧的密钥值对所述缓存数据进行解密,并判断解密是否成功,若是,则执行步骤S6,若否,则执行步骤S5。
S5:将所述缓存数据的缓存过期时间设置成已过期的时间;执行步骤S7。具体地,可预先在本地缓存表中添加一个缓存时间字段,当需要改变缓存过期时间时,通过数据库更新的方式把缓存过期时间设置成已过期的时间,例如,可以设置为当前时间之前的时间。
S6:获取缓存数据;即若缓存数据不需要解密,则可直接获得缓存数据,若缓存数据需要解密且使用新的密钥值或旧的密钥值解密成功,则获取解密后的缓存数据。
S7:根据所述缓存数据的缓存过期时间,判断所述缓存数据是否过期,即判断所述缓存数据的缓存过期时间是否早于当前时间,若是,则执行步骤S8。
S8:重新请求网络数据;可选地,此时可先将网络数据返回给调用方。
S9:使用新的密钥值对所述网络数据进行加密,并将加密后的数据保存至本地数据库,即可得到新的缓存数据,新的缓存数据与旧的缓存数据(即原来要查询的缓存数据)是相同的数据。
本实施例可解决当本地缓存有加密,且解密时的key值和加密时的key不一致导致解密失败的问题。现有技术中,一般是通过改变加密或者解密的方式去解决,但在实际应用中比较难实现。本实施例通过改变缓存过期时间,触发网络请求,重新请求网络数据,然后用新的key值加密数据,接着保存至本地数据库,之后获取缓存数据时,则可使用新的key值解密成功。
实施例二
本实施例是对应上述实施例的一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如下步骤:
查询缓存数据;
若所述缓存数据需要解密且解密失败,则将所述缓存数据的缓存过期时间设置成已过期的时间;
根据所述缓存数据的缓存过期时间,判断所述缓存数据是否过期;
若已过期,则重新请求网络数据;
使用新的密钥值对所述网络数据进行加密,并将加密后的数据保存至本地数据库,得到缓存数据。
进一步地,所述若所述缓存数据需要解密且解密失败,则将所述缓存数据的缓存过期时间设置成已过期的时间具体为:
判断所述缓存数据是否需要解密;
若不需要解密,则获取缓存数据;
若需要解密,则使用新的密钥值对所述缓存数据进行解密,并判断解密是否成功;
若不成功,则使用旧的密钥值对所述缓存数据进行解密,并判断解密是否成功;
若不成功,则将所述缓存数据的缓存过期时间设置成已过期的时间。
进一步地,所述若所述缓存数据需要解密且解密失败,则将所述缓存数据的缓存过期时间设置成已过期的时间之后,进一步包括:
若使用新的密钥值或旧的密钥值解密成功,则获取解密后的缓存数据。
综上所述,本发明提供的一种缓存数据的获取方法及计算机可读存储介质,当解密失败时,通过改变缓存数据的缓存过期时间,使得缓存数据变为已过期数据,从而重新获取网络数据,并用新的密钥值加密数据,保存新的数据。本发明可解决本地数据缓存加密且密钥值改变时,无法兼容旧缓存数据的问题。
以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (4)

1.一种缓存数据的获取方法,其特征在于,包括:
查询缓存数据;
若所述缓存数据需要解密且解密失败,则将所述缓存数据的缓存过期时间设置成已过期的时间;
根据所述缓存数据的缓存过期时间,判断所述缓存数据是否过期;
若已过期,则重新请求网络数据;
使用新的密钥值对所述网络数据进行加密,并将加密后的数据保存至本地数据库,得到缓存数据;
所述若所述缓存数据需要解密且解密失败,则将所述缓存数据的缓存过期时间设置成已过期的时间具体为:
判断所述缓存数据是否需要解密;
若不需要解密,则获取缓存数据;
若需要解密,则使用新的密钥值对所述缓存数据进行解密,并判断解密是否成功;
若不成功,则使用旧的密钥值对所述缓存数据进行解密,并判断解密是否成功;
若不成功,则将所述缓存数据的缓存过期时间设置成已过期的时间。
2.根据权利要求1所述的缓存数据的获取方法,其特征在于,所述若所述缓存数据需要解密且解密失败,则将所述缓存数据的缓存过期时间设置成已过期的时间之后,进一步包括:
若使用新的密钥值或旧的密钥值解密成功,则获取解密后的缓存数据。
3.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如下步骤:
查询缓存数据;
若所述缓存数据需要解密且解密失败,则将所述缓存数据的缓存过期时间设置成已过期的时间;
根据所述缓存数据的缓存过期时间,判断所述缓存数据是否过期;
若已过期,则重新请求网络数据;
使用新的密钥值对所述网络数据进行加密,并将加密后的数据保存至本地数据库,得到缓存数据;
所述若所述缓存数据需要解密且解密失败,则将所述缓存数据的缓存过期时间设置成已过期的时间具体为:
判断所述缓存数据是否需要解密;
若不需要解密,则获取缓存数据;
若需要解密,则使用新的密钥值对所述缓存数据进行解密,并判断解密是否成功;
若不成功,则使用旧的密钥值对所述缓存数据进行解密,并判断解密是否成功;
若不成功,则将所述缓存数据的缓存过期时间设置成已过期的时间。
4.根据权利要求3所述的计算机可读存储介质,其特征在于,所述若所述缓存数据需要解密且解密失败,则将所述缓存数据的缓存过期时间设置成已过期的时间之后,进一步包括:
若使用新的密钥值或旧的密钥值解密成功,则获取解密后的缓存数据。
CN201910967843.1A 2019-10-12 2019-10-12 缓存数据的获取方法及计算机可读存储介质 Active CN110851856B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910967843.1A CN110851856B (zh) 2019-10-12 2019-10-12 缓存数据的获取方法及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910967843.1A CN110851856B (zh) 2019-10-12 2019-10-12 缓存数据的获取方法及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN110851856A CN110851856A (zh) 2020-02-28
CN110851856B true CN110851856B (zh) 2021-10-08

Family

ID=69597261

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910967843.1A Active CN110851856B (zh) 2019-10-12 2019-10-12 缓存数据的获取方法及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN110851856B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101841669A (zh) * 2010-04-16 2010-09-22 北京创毅视讯科技有限公司 移动多媒体广播接收芯片、装置、方法及基带处理芯片
CN102255723A (zh) * 2010-05-17 2011-11-23 中华电信股份有限公司 非同步密钥更新方法
CN106294607A (zh) * 2016-07-29 2017-01-04 北京奇虎科技有限公司 缓存数据的更新方法及更新装置
CN107526974A (zh) * 2017-08-03 2017-12-29 致象尔微电子科技(上海)有限公司 一种信息密码保护装置和方法
CN108429618A (zh) * 2018-05-16 2018-08-21 安徽问天量子科技股份有限公司 一种无信道的对称密钥同步方法及装置
CN108512849A (zh) * 2018-04-02 2018-09-07 北京奇艺世纪科技有限公司 一种访问服务器的握手方法及系统
CN110113385A (zh) * 2019-04-15 2019-08-09 中国平安人寿保险股份有限公司 缓存动态配置方法、装置、计算机设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10230695B2 (en) * 2017-01-11 2019-03-12 Red Hat, Inc. Distribution of secure data with entitlement enforcement

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101841669A (zh) * 2010-04-16 2010-09-22 北京创毅视讯科技有限公司 移动多媒体广播接收芯片、装置、方法及基带处理芯片
CN102255723A (zh) * 2010-05-17 2011-11-23 中华电信股份有限公司 非同步密钥更新方法
CN106294607A (zh) * 2016-07-29 2017-01-04 北京奇虎科技有限公司 缓存数据的更新方法及更新装置
CN107526974A (zh) * 2017-08-03 2017-12-29 致象尔微电子科技(上海)有限公司 一种信息密码保护装置和方法
CN108512849A (zh) * 2018-04-02 2018-09-07 北京奇艺世纪科技有限公司 一种访问服务器的握手方法及系统
CN108429618A (zh) * 2018-05-16 2018-08-21 安徽问天量子科技股份有限公司 一种无信道的对称密钥同步方法及装置
CN110113385A (zh) * 2019-04-15 2019-08-09 中国平安人寿保险股份有限公司 缓存动态配置方法、装置、计算机设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
面向分布式缓存的安全扩展及性能优化研究;黎方江;《中国优秀硕士学位论文全文数据库 信息科技辑》;20180215(第2期);第I138-207页 *

Also Published As

Publication number Publication date
CN110851856A (zh) 2020-02-28

Similar Documents

Publication Publication Date Title
CN110417781B (zh) 基于区块链的文档加密管理方法、客户端及服务器
US11271726B2 (en) Key encryption methods, apparatuses, and systems
CN106603713B (zh) 会话管理方法和系统
CN110213276B (zh) 一种微服务架构下的授权验证方法、服务器、终端及介质
CN106992851B (zh) 基于TrustZone的数据库文件口令加解密方法、装置及终端设备
EP3860036A1 (en) Key management method, security chip, service server and information system
CN108449187B (zh) 一种令牌刷新的方法及装置
US7032067B2 (en) Security token sharable data and synchronization cache
CN107040520B (zh) 一种云计算数据共享系统及方法
CN110635906A (zh) 一种分布式块存储系统的密钥管理方法及装置
WO2021027115A1 (zh) 数据同步方法、装置、计算机设备和存储介质
CN111917711B (zh) 数据访问方法、装置、计算机设备和存储介质
US20210306150A1 (en) Computer implemented methods and systems for managing a cryptographic service
CN109120636A (zh) 对内容访问请求进行授权的方法和服务端设备
CN114428784A (zh) 数据存取方法、装置、计算机设备及存储介质
CN103532989A (zh) 文件数据的下载方法
CN116015767A (zh) 一种数据处理方法、装置、设备及介质
CN110851856B (zh) 缓存数据的获取方法及计算机可读存储介质
US11743356B2 (en) Email notification system
US20240086562A1 (en) User data management method and related device
US9665732B2 (en) Secure Download from internet marketplace
CN115221183A (zh) 数据处理方法及装置
CN109783499B (zh) 一种数据缓存方法、装置和服务器
CN111988262B (zh) 认证方法、装置及服务器、存储介质
CN111290884A (zh) 收银设备的数据备份方法及装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant