一种云数据安全存储方法和系统技术方案

技术编号:16761031 阅读:190 留言:0更新日期:2017-12-09 05:08
本发明专利技术提供了一种新的云数据安全存储方法和系统,不仅能够防止数据信息的恶意泄露,更能够提供用户个人的数据安全保护,防止服务器端或服务提供商对个人数据信息的非授权访问。本发明专利技术根据用户输入的身份认证的口令以及系统存储的校验信息,共同生成加解密用的对称密钥,用于保护系统存储的数据。用户的身份认证口令以及个人数据均以密文方式保存在云端,有效地保护了个人隐私和信息安全。

A secure storage method and system for cloud data

The invention provides a new cloud data security storage method and system, which not only prevents malicious leakage of data information, but also provides users with personal data security protection, so as to prevent server or service providers from accessing unauthorized access to personal data. The invention generates cryptographic keys for encryption and decryption based on user input authentication and password checking information, which is used to protect data stored in the system. The user's identity authentication password and personal data are kept in the cloud in the way of ciphertext, which effectively protects the privacy and information security of the individual.

【技术实现步骤摘要】
一种云数据安全存储方法和系统
本专利技术涉及云数据安全存储方法和系统。
技术介绍
随着云服务技术的发展,越来越多的用户选择将自己的数据存储在云端服务器上,虽然已有的各种私有云、公有云或混合云的数据隔离技术能够将不同用户的数据隔离开来,但就单个用户而言,如何保证自己的数据安全甚至个人隐私需要一个完整的安全解决方案。很多数据信息涉及个人隐私和安全,虽然商家通常承诺保证用户信息的安全,对单独用户来说,信息的存储和查阅主动权都在服务端,若个人信息被浏览、下载、以致公开都完全不由个人所控制,因此,存在一定的隐患。本申请通过对用户数据的加密存储、用户设置安全码认证实现了对个人数据信息的完全保护,使得服务器端无法获取个人信息的真实内容,极大提高了信息的安全度。一般用户的口令的存储会用SHA256或SM3等杂凑算法处理后,存储相关的杂凑值,为了防止攻击者撞库或系统操作人员查看,还会进一步的采用加盐等方式保证口令数据的存储及使用安全。另一方面,传统的SM4、DES、AES等对称数据加密算法以及SM2、RSA等非对称加密算法在工作时都需要密钥。将用户口令加盐后杂凑得到的值作为杂凑值,结合用户口令一起形成密钥,用于用户云端数据的安全存储,可以有效保护用户的数据及隐私安全。基于国家提倡的安全自主可控理念,我们采用国产化算法,包括公钥算法SM2、杂凑算法SM3及对称加密算法SM4。在实际应用中,为了与已有系统对接,或密码服务资源限制,可以适当的对等采用RSA或ECC公钥算法、SHA256或SHA3杂凑算法以及DES、AES等对称算法。
技术实现思路
为解决上述技术问题,本专利技术提供了一种新的云数据安全保护方案,不仅能够防止数据信息的恶意泄露,更能够提供用户个人的数据安全保护,防止服务器端或服务提供商对个人数据信息的非授权访问。本专利技术根据用户输入的身份认证的口令以及系统存储的校验信息,共同生成加解密用的对称密钥,用于保护系统存储的数据。用户的身份认证口令以及个人数据均以密文方式保存在云端,有效地保护了个人隐私和信息安全。一种云数据安全存储方法,其特征在于包括以下步骤:用户在注册时,设置特定的用户登录口令PIN码作为登录密码,服务器端在保存用户信息时,将该PIN码通过加密方式保存为PIN码的密文,服务器采用杂凑算法对PIN码进行加密,在保存用户信息时,只记录PIN码的杂凑值:SerPIN=HASH(PIN||ID||TIME)其中ID为用户ID,具有唯一标识性,TIME为用户的注册时间,用户注册完成后,在登录过程中,需输入用户设置的PIN码,服务器端将根据存储的已加密的SerPIN码和用户输入的PIN码生成加解密密钥KEY;KEY=HASH(PIN||SerPIN),用户在登录服务器后,产生数据E需保存、或将本地的数据E上传至系统中时,在上传的过程中,服务器将以KEY为密钥对数据E进行加密,实际以密文C进行存储:C=ENC(E),C只有以KEY为密钥才能解密。当用户需要使用系统中的数据、或从系统中下载数据时,需要首先输入PIN码进行身份验证,服务器将首先验证PIN码的合法性,确认是否与存储的SerPIN一致,如果一致,则身份验证成功,进一步计算解密密钥KEY,如果不一致,身份验证失败。当用户身份验证通过后,服务器根据存储的SerPIN码和用户的PIN码生成加解密密钥KEY=HASH(PIN||SerPIN),用户读取数据时,系统在读取相应的密文C的同时做解密操作:E=DEC(C),并将解密后的明文E发送给用户,用户得到真正的数据信息。当用户更新PIN1码时,系统需要用户输入原PIN,系统计算SerPIN1=HASH(PIN1||ID||TIME)以及KEY1=HASH(PIN1||SerPIN1),系统将数据用KEY=KEY=HASH(PIN||SerPIN)解密C后,用KEY1重新加密,得到密文C1。基于密钥管理和计算复杂度,上述加密算法均可采用对称加密算法。一种云数据安全存储系统,其特征在于该系统包括:客户端:用户在注册时,设置特定的用户登录口令PIN码作为登录密码,服务器端:在保存用户信息时,将该PIN码通过加密方式保存为PIN码的密文,服务器采用杂凑算法对PIN码进行加密,在保存用户信息时,只记录PIN码的杂凑值:SerPIN=HASH(PIN||ID||TIME)其中ID为用户ID,具有唯一标识性,TIME为用户的注册时间,用户注册完成后,在登录过程中,需输入用户设置的PIN码,服务器端将根据存储的已加密的SerPIN码和用户输入的PIN码生成加解密密钥KEY;KEY=HASH(PIN||SerPIN),用户在登录服务器后,产生数据E需保存、或将本地的数据E上传至系统中时,在上传的过程中,服务器将以KEY为密钥对数据E进行加密,实际以密文C进行存储:C=ENC(E),C只有以KEY为密钥才能解密。所述服务器端进一步包括验证模块:当用户需要使用系统中的数据、或从系统中下载数据时,需要首先输入PIN码进行身份验证,验证模块将首先验证PIN码的合法性,确认是否与存储的SerPIN一致,如果一致,则身份验证成功,进一步计算解密密钥KEY,如果不一致,身份验证失败。所述服务器端进一步包括解密模块:当收到验证模块发送的用户身份验证成功消息后,服务器的解密模块根据存储的SerPIN码和用户的PIN码生成加解密密钥:KEY=HASH(PIN||SerPIN),用户读取数据时,服务器的解密模块在读取相应的密文C的同时做解密操作:E=DEC(C),并将解密后的明文E发送给用户,用户得到真正的数据明文信息。服务器端进一步包括密钥更新模块:当收到用户需更新PIN1码的信息时,服务器需要用户输入原PIN,密钥更新模块计算SerPIN1=HASH(PIN1||ID||TIME)以及KEY1=HASH(PIN1||SerPIN1),服务器将数据用KEY=KEY=HASH(PIN||SerPIN)解密C后,用KEY1重新加密,得到密文C1。基于密钥管理和计算复杂度,上述加密算法均可采用对称加密算法。附图说明图1:用户注册及服务器数据存储流程图图2:用户访问数据时的身份认证流程图具体实施方式为了便于表述,首先对一下技术数据做统一说明:如图1所示,密钥生成阶段:步骤S1:用户注册,输入PIN码用户在注册时,设置特定的用户登录口令PIN码作为登录密码。该PIN码的设定规则可依据需要的计算复杂度进行设定。步骤S2:服务器对PIN码加密,生成SerPIN,并以SerPIN进行存储服务器端在保存用户信息时,将该PIN码通过加密方式保存为PIN码的密文,服务器采用杂凑算法对PIN码进行加密,在保存用户信息时,只记录PIN码的杂凑值:SerPIN=HASH(PIN||ID||TIME)其中ID为用户ID,具有唯一标识性,TIME为用户的注册时间,这些要素可以替换。为了防止撞库,服务器需要避免只保存HASH(PIN)的情况。由于PIN码具有User独占属性,那么服务器端的SerPIN码对服务器来说具有独占属性,为了保护数据的安全性,只有用户登录系统时才能产解密密钥,密钥设计为:KEY=HASH(PIN||SerPIN)基于密钥管理和计算复杂度,上述加密算法均可采用对本文档来自技高网...
一种云数据安全存储方法和系统

【技术保护点】
一种云数据安全存储方法,其特征在于包括以下步骤:用户在注册时,设置特定的用户登录口令PIN码作为登录密码,服务器端在保存用户信息时,将该PIN码通过加密方式保存为PIN码的密文,服务器采用杂凑算法对PIN码进行加密,在保存用户信息时,只记录PIN码的杂凑值:SerPIN=HASH(PIN||ID||TIME)其中ID为用户ID,具有唯一标识性,TIME为用户的注册时间,用户注册完成后,在登录过程中,需输入用户设置的PIN码,服务器端将根据存储的已加密的SerPIN码和用户输入的PIN码生成加解密密钥KEY;KEY=HASH(PIN||SerPIN),用户在登录服务器后,产生数据E需保存、或将本地的数据E上传至系统中时,在上传的过程中,服务器将以KEY为密钥对数据E进行加密,实际以密文C进行存储:C=ENC(E),C只有以KEY为密钥才能解密。

【技术特征摘要】
1.一种云数据安全存储方法,其特征在于包括以下步骤:用户在注册时,设置特定的用户登录口令PIN码作为登录密码,服务器端在保存用户信息时,将该PIN码通过加密方式保存为PIN码的密文,服务器采用杂凑算法对PIN码进行加密,在保存用户信息时,只记录PIN码的杂凑值:SerPIN=HASH(PIN||ID||TIME)其中ID为用户ID,具有唯一标识性,TIME为用户的注册时间,用户注册完成后,在登录过程中,需输入用户设置的PIN码,服务器端将根据存储的已加密的SerPIN码和用户输入的PIN码生成加解密密钥KEY;KEY=HASH(PIN||SerPIN),用户在登录服务器后,产生数据E需保存、或将本地的数据E上传至系统中时,在上传的过程中,服务器将以KEY为密钥对数据E进行加密,实际以密文C进行存储:C=ENC(E),C只有以KEY为密钥才能解密。2....

【专利技术属性】
技术研发人员:陈伟潘国新陶春静苏宏伦康婷
申请(专利权)人:国家康复辅具研究中心
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1