CN108234112A - 数据加密和解密方法及系统 - Google Patents
数据加密和解密方法及系统 Download PDFInfo
- Publication number
- CN108234112A CN108234112A CN201611153590.7A CN201611153590A CN108234112A CN 108234112 A CN108234112 A CN 108234112A CN 201611153590 A CN201611153590 A CN 201611153590A CN 108234112 A CN108234112 A CN 108234112A
- Authority
- CN
- China
- Prior art keywords
- key
- data
- encryption
- version number
- ciphertext
- 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.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0819—Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本公开涉及数据加密和解密方法及系统。提供了一种数据加密方法,包括:获取需要加密的数据;判断所获取的数据是明文还是密文,密文包括加密数据和相应的密钥版本号;在所获取的数据是密文的情况下,获取密文包括的密钥版本号;根据密钥版本号从密钥文件获取加密数据被加密时所使用的密钥,其中密钥文件包括当前版本密钥、各历史版本密钥及对应的密钥版本号;使用所确定的密钥对加密数据进行解密,以获得明文数据;从密钥文件获取当前版本密钥;以及使用当前版本密钥对明文数据进行加密。根据本公开的数据加密和解密方法及系统提供了一种简捷、可靠的数据加密/解密方法,避免了每次密钥变更时大量的数据刷新操作。
Description
技术领域
本公开一般地涉及数据密码化领域,更具体地,涉及数据加密和解密方法及系统。
背景技术
当今,密码技术已被广泛使用。密码技术的核心内容是通过加密方法把对大量数据的管理和保护转化为对若干核心密钥的管理和保护。为了确保数据的安全,通常会通过指定密钥的变更周期来定期更换密钥。传统地,变更前后的密钥由技术人员维护,并且当更换密钥时,技术人员需要对所有使用变更前密钥加密的密文数据进行解密和加密。
发明内容
根据本公开的实施例的第一方面,提供了一种数据加密方法,包括:获取需要加密的数据;判断所获取的数据是明文还是密文,密文包括加密数据和相应的密钥版本号;在所获取的数据是密文的情况下,获取密文包括的密钥版本号;根据密钥版本号从密钥文件获取加密数据被加密时所使用的密钥,其中密钥文件包括当前版本密钥、各历史版本密钥及对应的密钥版本号;使用所确定的密钥对加密数据进行解密,以获得明文数据;从密钥文件获取当前版本密钥;以及使用当前版本密钥对明文数据进行加密。
根据本公开的实施例的第二方面,提供了一种数据解密方法,包括:获取需要解密的密文,密文包括加密数据和相应密钥版本号;获取密文包括的密钥版本号;根据密钥版本号从密钥文件获取加密数据被加密时所使用的密钥,其中密钥文件包括历史版本密钥及对应的密钥版本号;以及使用所确定的密钥对加密数据进行解密。
根据本公开的实施例的第三方面,提供了一种数据加密系统,包括:第一获取单元,被配置为获取需要加密的数据;判断单元,被配置为判断所获取的数据是明文还是密文,密文包括加密数据和相应的密钥版本号;第二获取单元,被配置为在所获取的数据是密文的情况下,获取密文包括的密钥版本号;第三获取单元,被配置为根据密钥版本号从密钥文件获取加密数据被加密时所使用的密钥,其中密钥文件包括当前版本密钥、各历史版本密钥及对应的密钥版本号;解密单元,被配置为使用所确定的密钥对加密数据进行解密,以获得明文数据;第四获取单元,被配置为从密钥文件获取当前版本密钥;以及加密单元,被配置为使用当前版本密钥对明文数据进行加密。
根据本公开的实施例的第四方面,提供了一种数据解密系统,包括:第一获取单元,被配置为获取需要解密的密文,密文包括加密数据和相应密钥版本号;第二获取单元,被配置为获取密文包括的密钥版本号;第三获取单元,被配置为根据密钥版本号从密钥文件获取加密数据被加密时所使用的密钥,其中密钥文件包括历史版本密钥及对应的密钥版本号;以及解密单元,被配置为使用所确定的密钥对加密数据进行解密。
根据本公开的数据加密和解密方法及系统,避免了每次密钥变更时都对大量加密数据进行批量刷新操作,并且能够防止在需要处理大量密码化业务时由于技术人员的出错而导致元数据无法安全的加密和/或解密。
附图说明
结合附图参照以下描述可以更好地理解本公开的实施例,相同的参考标号在不同的附图中表示相同的元件。应理解的是,这些附图通过示例非限制性地描绘了本公开的示例实施例,因此不应被视为对其范围的限制,其中:
图1是根据示例实施例示出了数据加密方法的流程图;
图2根据示例实施例示出了密钥文件的示意结构图;
图3根据示例实施例示出了加密数据的示意结构图;
图4根据示例实施例示出了分段加密数据的示意结构图;
图5是根据示例实施例示出了数据解密方法的流程图;
图6是根据示例实施例示出了加密系统的框图;以及
图7是根据示例实施例示出了解密系统的框图。
具体实施方式
本公开的各种实施例在下面被详细地讨论,附图被合并于此并构成详细描述的一部分。本公开的特征从下面的描述和所附权利要求中将是显而易见的,其他实施例可以包含结构的、逻辑的、电的、处理上的、以及其他方面的变化。本领域技术人员将认识到,在不脱离本公开的范围的情况下,某些实施的部分和特征可被包括在其他实施例的部分和特征中、或被其他实施例的部分和特征替代。
图1是根据示例实施例示出了数据加密方法100的流程图。数据加密方法100可包括以下步骤:获取需要加密的数据;判断所获取的数据是明文还是密文,密文包括加密数据和相应的密钥版本号;在所获取的数据是密文的情况下,获取密文包括的密钥版本号;根据密钥版本号从密钥文件获取加密数据被加密时所使用的密钥,其中密钥文件包括当前版本密钥、各历史版本密钥及对应的密钥版本号;使用所确定的密钥对加密数据进行解密,以获得明文数据;从密钥文件获取当前版本密钥;以及使用当前版本密钥对明文数据进行加密。
在一个示例实施例中,数据加密方法100可用于服务器端。例如,该服务器端可包括但不限于:与至少一个计算机总线相连的一个或多个处理单元、任意类型的易失性和/或非易失性计算机可读存储设备(例如,随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、闪速存储器、磁存储设备、磁盘或光盘等)、用于连接网络的网络接口、一个或多个输入/输出设备(例如,键盘、鼠标、显示器、打印机、扫描仪等)、各类接口(例如,并行端口接口和串行接口端口、USB接口等)等。
具体地,如图1所示,数据加密方法100可在步骤101处开始,其中,获取需要加密的数据。然后在步骤102中,判断所获取的加密数据是明文还是密文。在一个示例实施例中,所获取的需要加密的数据可包括但不限于:可被存储在上述计算机可读存储设备中的加密之后的(或未经加密的)用户个人身份验证信息、用户密码信息、个人隐私数据等。
若在步骤102中确定所获取的数据是密文数据,则数据加密方法100可前进到步骤103处。在一个实例实施例中,该密文数据可包括加密数据和相应的密钥版本号。如所示出的,在步骤103中,获取需要加密的数据(即,密文数据)的密钥版本号。在一个示例实施例中,密钥版本号可采取如下格式:1.0.0、1.0.1、1.0.2、1.0.3、…,其中,省略号“…”表示上述格式中的“1.0.0”、“1.0.1”、“1.0.2”、“1.0.3”仅示出了密钥版本号的一部分。特别地,一个密钥版本号仅与一个密钥相关联。
在需要加密的数据的密钥版本号被获取之后,数据加密方法100可前进到步骤104处,其中,根据在步骤103中获取的密钥版本号从密钥文件获取需要加密的数据被加密时所使用的密钥。在一个示例实施例中,密钥文件可包括当前版本密钥、各历史版本密钥及对应的密钥版本号。密钥文件也可被存储在上述计算机可读存储设备中,以便根据密钥版本号从该密钥文件中获取对密文数据进行加密时所使用的密钥。然后,数据加密方法100可前进到步骤105处,使用在步骤104中获取的密钥对首先对需要加密的数据进行解密,以获得对应的明文数据。
然后,数据加密方法100可前进到步骤106处,其中,从密钥文件获取当前版本密钥。在一个示例实施例中,在每次密钥变更时,可通过在密钥文件中添加变更后的密钥以及相应的密钥版本号来更新密钥文件。特别地,当前密钥版本号对应于更新后的最新的密钥。然后,数据加密方法100可前进到步骤107处,其中,使用步骤106中获取的当前版本密钥对步骤105中获得的明文数据进行加密,以便得到相应的密文数据。
在一个示例实施例中,步骤107中所使用的数据加密方法包括但不限于:对称式加密方法(例如,数据加密标准(DES)、三重数加密标准(3DES)、高级加密标准(AES)、RC2及RC4算法等)、非对称式加密方法(例如,RSA加密算法、Diffie-Hellman密钥交换(D-H)算法、椭圆曲线密码学(ECC)等)、以及哈希加密(例如,信息-摘要算法5(MD5)、安全哈希算法(SHA))等。
若在步骤102中确定所获取的数据是明文数据,则数据加密方法100可前进到步骤108处。如所示出的,在步骤108中,从密钥文件获取当前版本密钥。在一个示例实施例中,密钥文件可包括当前版本密钥、各历史版本密钥及对应的密钥版本号。密钥文件也可被存储在上述计算机可读存储设备中,以便根据密钥版本号从该密钥文件中获取对密文数据进行加密时所使用的密钥。
在一个示例实施例中,在每次密钥变更时,可通过在密钥文件中添加变更后的密钥以及相应的密钥版本号来更新密钥文件。类似地,当前密钥版本号对应于更新后的最新的密钥。然后,数据加密方法100可前进到步骤109处,其中,使用步骤108中获取的当前版本密钥对步骤101中获取的需要加密的数据进行加密,以便得到相应的密文数据。在一个示例实施例中,步骤109中所使用的数据加密方法包括但不限于:对称式加密方法(例如,数据加密标准(DES)、三重数加密标准(3DES)、高级加密标准(AES)、RC2及RC4算法等)、非对称式加密方法(例如,RSA加密算法、Diffie-Hellman密钥交换(D-H)算法、椭圆曲线密码学(ECC)等)、以及哈希加密(例如,信息-摘要算法5(MD5)、安全哈希算法(SHA))等。
图2根据示例实施例示出了密钥文件200的示意结构图。如图2所示,密钥文件200包括当前密钥版本号201、密钥版本号202及对应的密钥203、密钥版本号204及对应的密钥205。
一般地,在进行密钥变更时,每次密钥变更之后,可通过在密钥文件中添加变更后的密钥以及相应的密钥版本号来更新密钥文件,并且其中,一个密钥版本号对应于一个密钥。如图2所示,版本号202对应于密钥203,且版本号204对应于密钥205。
此外,如图2所示,密钥文件200还包括两个分隔符206和207。分隔符206、207可用于区分相邻的密钥版本号202及对应的密钥203以及密钥版本号204及对应的密钥205。在一个示例实施例中,分隔符206、207可以是能够区分密钥文件中相邻的两个密钥版本号及对应的密钥的任意类型的分隔符,例如,空格、逗号、或#等。如上所述,密钥版本号202、204可采取如下格式:1.0.0、1.0.1、1.0.2、1.0.3、…,其中,省略号“…”表示上述“1.0.0”、“1.0.1”、“1.0.2”、“1.0.3”仅示出了密钥版本号的一部分。在一个示例实施例中,密钥文件200中的密钥203和205为不少于128位。还应理解,分隔符并非必须的,也可以采用其他的形式来将相邻的密钥版本号及对应的密钥区别开。
尽管图2示出了密钥文件200具有两个密钥版本号(202、204)及两个对应的密钥(203、205)、两个分隔符(206、207),但这只是可用于上述数据加密方法的密钥文件的一个示例。应理解的是,本公开的实施例可包括两个或多个密钥版本号及对应的密钥。
特别地,当前密钥版本号201来自于密钥文件200中所有密钥版本号的集合(在此实施例中,密钥版本号202和204的集合),并且当前密钥版本号201对应于最新的密钥。也就是说,在一次或多次密钥变更之后,与变更之后的最新的密钥相关联的密钥版本号即为当前密钥版本号201。在对数据进行加密时,当面密钥版本号201及相应的密钥被使用。在一个示例实施例中,当前密钥版本号201可能是密钥版本号202(或密钥版本号204),则此时当前密钥版本号201所对应的密钥即为密钥203(或密钥205)。
图3根据示例实施例示出了加密数据300的示意结构图。如图3所示,加密数据300包括密钥版本号301、以及加密数据303。
具体地,密钥版本号301对应于加密数据303被加密时所使用的密钥。如上所述,由于密钥文件200记录了每次密钥变更后的密钥,可以理解的是,类似地,密钥版本号301也来自于密钥文件200中所有密钥版本的集合(在此实施例中,密钥版本号202和204的集合)。在一个示例实施例中,可使用与密钥版本号202所对应的密钥203对对应于加密数据303的加密前的数据进行加密,则加密数据300中的密钥版本号301即为密钥版本号202,并且密钥版本号301也对应于密钥203。此外,若需要,密钥203可用于对加密数据303的解密。同样的,加密数据300可被存储在上述计算机可读存储设备中。在另一示例实施例中,可使用与密钥版本号204所对应的密钥205对对应于加密数据303的加密前的数据进行加密,则加密数据300中的密钥版本号301即为密钥版本号204,并且密钥版本号301也对应于密钥205。
在一个示例实施例中,加密数据300还可包括分隔符302,用于区分密钥版本号301和相应的加密数据303。例如,分隔符302可以是空格、逗号、或#等。还应理解,分隔符并非必须的,也可以采用其他的形式来将密钥版本号和相应的加密数据区别开。
图4根据示例实施例示出了分段加密数据400的示意结构图。如图4所示,分段加密数据400包括密钥版本号401和两个分段加密数据,即分段1-加密数据402、以及分段2-加密数据403。
密钥版本号401对应于分段1-加密数据402以及分段2-加密数据403被加密时所使用的密钥。可以理解的是,密钥版本号401也来自于密钥文件200中所有密钥版本号的集合(在此实施例中,密钥版本号202和204的集合)。在一个示例实施例中,可使用密钥版本号204所对应的密钥205对对应于分段1-加密数据402以及分段2-加密数据403的加密之前的数据进行加密。在此情况下,分段加密数据400的密钥版本号401即为密钥版本号204,并且密钥版本号401也对应于密钥205。此外,若需要,密钥205可用于对分段1-加密数据402以及分段2-加密数据403的解密。分段加密数据400可被存储在上述计算机可读存储设备中。在另一示例实施例中,可使用密钥版本号202所对应的密钥203对对应于分段1-加密数据402以及分段2-加密数据403的加密之前的数据进行加密,则加密数据400的密钥版本号401即为密钥版本号202,并且密钥版本号401也对应于密钥203。
此外,如图4所示,分段加密数据400包括两个分隔符404和405,这两个分隔符404和405用于将密钥版本号以及分段加密数据区别开。在一个示例实施例中,分隔符404、405可以是能够区分分段1-加密数据402和分段2-加密数据403的任意类型的分隔符,例如,空格、逗号、或#等。还应理解,分隔符并非必须的,也可以采用其他的形式来将N段加密数据区别开。在如图4所示的示例实施例中,尽管分段加密数据400被示出仅包括两段加密数据,即,分段1-加密数据402以及分段2-加密数据403,但这仅是本公开的实施例的分段加密数据的一个示意性示例。在一个示例实施例中,分段加密数据400可包括N段加密后的数据及相应密钥版本号,其中,N为大于1的整数。
现在转向图5,图5是根据示例实施例示出了数据解密方法500的流程图。数据解密方法500包括:获取需要解密的密文数据、获取密文数据的密钥版本号、获取密文数据被加密时所使用的密钥、以及对密文数据进行解密。
类似地,数据解密方法500可用于服务器端。例如,该服务器端可包括但不限于:与至少一个计算机总线相连的一个或多个处理单元、任意类型的易失性和/或非易失性计算机可读存储设备(例如,随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM)、闪速存储器、磁存储设备、磁盘或光盘等)、用于连接网络的网络接口、一个或多个输入/输出设备(例如,键盘、鼠标、显示器、打印机、扫描仪等)、各类接口(例如,并行端口接口和串行接口端口、USB接口等)等。
如图5所示,数据解密方法500可开始于步骤501处,其中,获取需要解密的密文数据。例如,需要解密的密文数据可包括但不限于:存储在上述计算机可读存储设备中的加密之后的用户个人身份验证信息、用户密码信息、个人隐私数据等。在一个示例实施例中,需要解密的密文数据可以是使用下列数据加密方法进行加密的数据:对称式加密方法(例如,数据加密标准(DES)、三重数加密标准(3DES)、高级加密标准(AES)、RC2及RC4算法等)、非对称式加密方法(例如,RSA加密算法、Diffie-Hellman密钥交换(D-H)算法、椭圆曲线密码学(ECC)等)、以及哈希加密(例如,信息-摘要算法5(MD5)、安全哈希算法(SHA))等。在一个示例实施例中,该密文数据可以是如图3所示的加密数据或如图4所示的分段加密数据。
在需要解密的密文数据被获取之后,数据解密方法500可前进到步骤502,其中,获取密文数据的密钥版本号。然后在步骤503中,根据密文数据的密钥版本号从密钥文件获取密文数据被加密时所使用的密钥。在一个示例实施例中,密钥文件可包括历史版本密钥及对应的密钥版本号,并且在每次密钥变更时,可通过在密钥文件中添加变更后的密钥以及相应的密钥版本号来更新密钥文件。在一个示例实施例中,密钥文件中的密钥为不少于128位。数据解密方法500然后可前进到步骤504,其中,使用在步骤503中获取的密钥对步骤501中获取的需要解密的密文数据进行解密,以便得到相应的明文数据。
图6是根据示例实施例示出了数据加密系统600的框图,该数据加密系统600可用于对密文数据的加密。如图6所示,该数据加密系统600包括:第一获取单元601,可被配置为获取需要加密的数据;判断单元602,可被配置为判断所获取的数据是明文还是密文,该密文包括加密数据和相应的密钥版本号;第二获取单元603,可被配置为在所获取的数据是密文的情况下,获取密文包括的密钥版本号;第三获取单元604,可被配置为根据密钥版本号从密钥文件获取加密数据被加密时所使用的密钥,其中,密钥文件包括当前版本密钥、各历史版本密钥及对应的密钥版本号;解密单元605,可被配置为使用所确定的密钥对加密数据进行解密,以获得明文数据;第四获取单元606,可被配置为从密钥文件获取当前版本密钥;以及加密单元607,可被配置为使用当前版本密钥对明文数据进行加密。
在一个示例实施例中,数据加密系统600还可包括密钥文件更新单元,其可被配置为在每次密钥变更时,通过在密钥文件中添加变更后的密钥以及相应的密钥版本号来更新密钥问文件。
具体地,该密钥文件包括当前密钥版本号、分隔符、密钥版本号及对应的密钥,其中,当前密钥版本号来自于密钥文件中所有密钥版本号的集合,并且当前密钥版本号对应于变更后的最新的密钥。在一个示例实施例中,密钥文件中的密钥为不少于128位。在一个示例实施例中,加密单元607得到的密文数据可以是如图3所示的加密数据或如图4所示的分段加密数据。
在一个示例实施例中,加密单元607所使用的数据加密方法包括但不限于:对称式加密方法(例如,数据加密标准(DES)、三重数加密标准(3DES)、高级加密标准(AES)、RC2及RC4算法等)、非对称式加密方法(例如,RSA加密算法、Diffie-Hellman密钥交换(D-H)算法、椭圆曲线密码学(ECC)等)、以及哈希加密(例如,信息-摘要算法5(MD5)、安全哈希算法(SHA))等。
图7是根据示例实施例示出了数据解密系统700的框图,该数据解密系统700可用于对密文数据的解密。如图7所示,该数据解密系统700包括:第一获取单元701,可被配置为获取需要解密的密文,密文包括加密数据和相应密钥版本号;第二获取单元702,可被配置为获取密文包括的密钥版本号;第三获取单元703,可被配置为根据密钥版本号从密钥文件获取加密数据被加密时所使用的密钥,其中密钥文件包括历史版本密钥及对应的密钥版本号;以及解密单元704,可被配置为使用所确定的密钥对加密数据进行解密。
在一个示例实施例中,数据解密系统700还可包括密钥文件更新单元,其可被配置为在每次密钥变更时,通过在密钥文件中添加变更后的密钥以及相应的密钥版本号来更新密钥问文件。具体地,该密钥文件包括历史版本密钥及对应的密钥版本号。在一个示例实施例中,密钥文件中的密钥为不少于128位。在一个示例实施例中,获取单元701获取的需要解密的密文数据可以是如图4所示的分段加密数据。
注意到的是,上述实施例中的方法和系统可使用硬件、计算机软件、固件或其组合来有利地实现。计算机软件包括存储在计算机可读存储设备中的计算机可执行代码,当被执行时,执行本文描述的功能。例如,计算机可读存储设备包括随机存取存储器(RAM)、只读存储器(ROM)、便携式光盘只读存储器(CD-ROM)、半导体存储设备、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)闪速存储器、磁存储设备、磁盘、光盘、软盘以及其他存储设备和介质。当使用硬件来实现时,例如,硬件可以是微处理器、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、专用集成电路(ASIC)、射频集成电路(RFIC)等。
尽管本发明的示例性实施例参考附图已被详细描述,应理解的是,本发明不被限制于那些精确的实施例,并且在不脱离如所附权利要求所定义的本发明的范围的情况下,本领域技术人员可以在其中做出各种变化、添加、以及修改。
Claims (18)
1.一种数据加密方法,其特征在于,所述数据加密方法包括:
获取需要加密的数据;
判断所获取的数据是明文还是密文,所述密文包括加密数据和相应的密钥版本号;
在所获取的数据是密文的情况下,获取所述密文包括的密钥版本号;
根据所述密钥版本号从密钥文件获取所述加密数据被加密时所使用的密钥,其中所述密钥文件包括当前版本密钥、各历史版本密钥及对应的密钥版本号;
使用所确定的密钥对所述加密数据进行解密,以获得明文数据;
从所述密钥文件获取当前版本密钥;以及
使用所述当前版本密钥对所述明文数据进行加密。
2.如权利要求1所述的数据加密方法,其特征在于,所述数据加密方法包括:在所述需要加密的数据是明文的情况下,从所述密钥文件获取当前版本密钥;以及
使用所述当前版本密钥对所述需要加密的数据进行加密。
3.如权利要求1或2所述的数据加密方法,其特征在于,所述数据加密方法还包括:每次密钥变更时,通过在所述密钥文件中添加变更后的密钥以及相应的密钥版本号来更新所述密钥文件。
4.如权利要求1或2所述的数据加密方法,其特征在于,所述密文数据是具有至少两个分段加密数据的分段密文数据,并且包括针对各分段加密数据的相应密钥版本号。
5.如权利要求1或2所述的数据加密方法,其特征在于,所述当前版本密钥、各历史版本密钥分别为不少于128位。
6.一种数据解密方法,其特征在于,所述数据解密方法包括:
获取需要解密的密文,所述密文包括加密数据和相应密钥版本号;
获取所述密文包括的密钥版本号;
根据所述密钥版本号从密钥文件获取所述加密数据被加密时所使用的密钥,其中所述密钥文件包括历史版本密钥及对应的密钥版本号;以及
使用所确定的密钥对所述加密数据进行解密。
7.如权利要求6所述的数据解密方法,其特征在于,所述各历史版本密钥分别为不少于128位。
8.如权利要求6所述的数据解密方法,其特征在于,所述数据解密方法还包括:每次密钥变更时,通过在所述密钥文件中添加变更后的密钥以及相应的密钥版本号来更新所述密钥问文件。
9.如权利要求6所述的数据解密方法,其特征在于,所述密文数据是包括至少两个分段加密数据的分段密文数据,并且包括针对各分段加密数据的相应密钥版本号。
10.一种数据加密系统,其特征在于,所述数据加密系统包括:
第一获取单元,被配置为获取需要加密的数据;
判断单元,被配置为判断所获取的数据是明文还是密文,所述密文包括加密数据和相应的密钥版本号;
第二获取单元,被配置为在所获取的数据是密文的情况下,获取所述密文包括的密钥版本号;
第三获取单元,被配置为根据所述密钥版本号从密钥文件获取所述加密数据被加密时所使用的密钥,其中所述密钥文件包括当前版本密钥、各历史版本密钥及对应的密钥版本号;
解密单元,被配置为使用所确定的密钥对所述加密数据进行解密,以获得明文数据;
第四获取单元,被配置为从所述密钥文件获取当前版本密钥;以及
加密单元,被配置为使用所述当前版本密钥对所述明文数据进行加密。
11.如权利要求10所述的数据加密系统,其特征在于,所述第四获取单元还被配置为在所述需要加密的数据是明文的情况下,从所述密钥文件获取当前版本密钥;以及
加密单元还被配置为使用所述当前版本密钥对所述需要加密的数据进行加密。
12.如权利要求10或11所述的数据加密系统,其特征在于,所述数据加密系统还包括:密钥文件更新单元,被配置为每次密钥变更时,通过在所述密钥文件中添加变更后的密钥以及相应的密钥版本号来更新所述密钥文件。
13.如权利要求10或11所述的数据加密系统,其特征在于,所述密文数据是具有至少两个分段加密数据的分段密文数据,并且包括针对各分段加密数据的相应密钥版本号。
14.如权利要求10或11所述的数据加密系统,其特征在于,所述当前版本密钥、各历史版本密钥分别为不少于128位。
15.一种数据解密系统,其特征在于,所述数据解密系统包括:
第一获取单元,被配置为获取需要解密的密文,所述密文包括加密数据和相应密钥版本号;
第二获取单元,被配置为获取所述密文包括的密钥版本号;
第三获取单元,被配置为根据所述密钥版本号从密钥文件获取所述加密数据被加密时所使用的密钥,其中所述密钥文件包括历史版本密钥及对应的密钥版本号;以及
解密单元,被配置为使用所确定的密钥对所述加密数据进行解密。
16.如权利要求15所述的数据解密系统,其特征在于,所述各历史版本密钥分别为不少于128位。
17.如权利要求15所述的数据解密系统,其特征在于,所述数据解密系统还包括:密钥文件更新单元,被配置为每次密钥变更时,通过在所述密钥文件中添加变更后的密钥以及相应的密钥版本号来更新所述密钥问文件。
18.如权利要求15所述的数据解密系统,其特征在于,所述密文数据是包括至少两个分段加密数据的分段密文数据,并且包括针对各分段加密数据的相应密钥版本号。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611153590.7A CN108234112A (zh) | 2016-12-14 | 2016-12-14 | 数据加密和解密方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611153590.7A CN108234112A (zh) | 2016-12-14 | 2016-12-14 | 数据加密和解密方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108234112A true CN108234112A (zh) | 2018-06-29 |
Family
ID=62637678
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611153590.7A Pending CN108234112A (zh) | 2016-12-14 | 2016-12-14 | 数据加密和解密方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108234112A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109474423A (zh) * | 2018-12-10 | 2019-03-15 | 平安科技(深圳)有限公司 | 数据加解密方法、服务器及存储介质 |
CN109508993A (zh) * | 2018-10-16 | 2019-03-22 | 珠海横琴现联盛科技发展有限公司 | 基于防篡改加密算法的个人身份信息匹配方法 |
CN112580101A (zh) * | 2020-12-29 | 2021-03-30 | 厦门市美亚柏科信息股份有限公司 | 一种数据解密方法及终端 |
CN114710336A (zh) * | 2022-03-24 | 2022-07-05 | 武汉虹信技术服务有限责任公司 | 一种独立于物联网平台的安全通信方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1818920A (zh) * | 2005-02-07 | 2006-08-16 | 微软公司 | 管理用于文件加密和解密的多个密钥的系统和方法 |
US20100199106A1 (en) * | 2009-01-30 | 2010-08-05 | Kabushiki Kaisha Toshiba | Magnetic disk apparatus and cipher key updating method |
CN104579645A (zh) * | 2015-01-26 | 2015-04-29 | 中国科学院半导体研究所 | 基于aes加密系统的密钥更新方法 |
CN105721393A (zh) * | 2014-12-02 | 2016-06-29 | 阿里巴巴集团控股有限公司 | 数据安全加密的方法及装置 |
-
2016
- 2016-12-14 CN CN201611153590.7A patent/CN108234112A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1818920A (zh) * | 2005-02-07 | 2006-08-16 | 微软公司 | 管理用于文件加密和解密的多个密钥的系统和方法 |
US20100199106A1 (en) * | 2009-01-30 | 2010-08-05 | Kabushiki Kaisha Toshiba | Magnetic disk apparatus and cipher key updating method |
CN105721393A (zh) * | 2014-12-02 | 2016-06-29 | 阿里巴巴集团控股有限公司 | 数据安全加密的方法及装置 |
CN104579645A (zh) * | 2015-01-26 | 2015-04-29 | 中国科学院半导体研究所 | 基于aes加密系统的密钥更新方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109508993A (zh) * | 2018-10-16 | 2019-03-22 | 珠海横琴现联盛科技发展有限公司 | 基于防篡改加密算法的个人身份信息匹配方法 |
CN109474423A (zh) * | 2018-12-10 | 2019-03-15 | 平安科技(深圳)有限公司 | 数据加解密方法、服务器及存储介质 |
CN109474423B (zh) * | 2018-12-10 | 2022-10-21 | 平安科技(深圳)有限公司 | 数据加解密方法、服务器及存储介质 |
CN112580101A (zh) * | 2020-12-29 | 2021-03-30 | 厦门市美亚柏科信息股份有限公司 | 一种数据解密方法及终端 |
CN112580101B (zh) * | 2020-12-29 | 2023-08-08 | 厦门市美亚柏科信息股份有限公司 | 一种数据解密方法及终端 |
CN114710336A (zh) * | 2022-03-24 | 2022-07-05 | 武汉虹信技术服务有限责任公司 | 一种独立于物联网平台的安全通信方法及系统 |
CN114710336B (zh) * | 2022-03-24 | 2023-09-26 | 武汉虹信技术服务有限责任公司 | 一种独立于物联网平台的安全通信方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101401105B (zh) | 用于提供加密文件系统的加密系统和方法 | |
TW201740305A (zh) | 資料加密方法、資料解密方法、裝置及系統 | |
US7499552B2 (en) | Cipher method and system for verifying a decryption of an encrypted user data key | |
CN103067170B (zh) | 一种基于ext2文件系统的加密方法 | |
US10013561B2 (en) | Dynamic pre-boot storage encryption key | |
CN108234112A (zh) | 数据加密和解密方法及系统 | |
JP5736994B2 (ja) | 情報処理装置、正当性検証方法、及びプログラム | |
CN108959978A (zh) | 设备中密钥的生成与获取方法及装置 | |
US20150334096A1 (en) | Method and arrangement for secure communication between network units in a communication network | |
US20230325516A1 (en) | Method for file encryption, terminal, electronic device and computer-readable storage medium | |
CN105809042A (zh) | 信息保护、显示方法及信息保护、显示装置及终端 | |
WO2015152935A1 (en) | Storing and retrieving ciphertext in data storage | |
CN111884986B (zh) | 一种数据加密处理方法、装置及存储介质 | |
CN110929291A (zh) | 一种存取文本文件的方法、装置和计算机可读存储介质 | |
JP2014175970A (ja) | 情報配信システム、情報処理装置及びプログラム | |
CN104463019A (zh) | 电子文档的加解密方法 | |
CN111008400A (zh) | 数据处理方法、装置及系统 | |
CN113722741A (zh) | 数据加密方法及装置、数据解密方法及装置 | |
CN115208557A (zh) | 数据加密方法、装置、电子设备及计算机存储介质 | |
CN104866738A (zh) | 一种程序代码保护方法及装置 | |
CN103377327A (zh) | Php程序保护方法及系统 | |
KR101448060B1 (ko) | 가상 머신을 이용한 암호화 장치 및 방법 | |
EP3754528A1 (en) | Secure provision of programmable devices | |
TWI558152B (zh) | Key replacement method and computer program products | |
CN109635577A (zh) | 一种离线解密oracle tde加密的数据文件的方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180629 |
|
RJ01 | Rejection of invention patent application after publication |