安全存储数据和访问数据的方法及系统的制作方法
【技术领域】
[0001] 本发明设及信息技术领域,尤其设及一种安全存储数据和访问数据的方法及系 统。
【背景技术】
[0002] 目前的软件中的各种数据都是W明文的形式存在内存中,该样很容易被第=方通 过两次查询并对比就可W将对应数据的内存地址查询出来,并修改。
[0003] 申请号为201210145812. 6的专利文件公开了一种安卓系统中内存数据的保护方 法,将多个密钥存放在远程服务器上,访问接口从远程服务器获取AES加密密钥和RSA签名 密钥,使用AES算法对内存数据进行加密,使用RSA签名算法来校验加密后的数据,而相关 的解密密钥存放在远程服务器中。
[0004] 然而,上述方案采用固定的加密算法对内存数据进行加密,加密算法很容易被破 解,而且一旦破解,就需要更新所有的客户端,否则内存数据将面临泄露的危险。
【发明内容】
[0005] 本发明所要解决的技术问题是;如何对数据进行安全存储和安全访问。
[0006] 为了解决上述技术问题,本发明采用的技术方案为:
[0007] 一种安全存储数据和访问数据的方法,包括存储数据和访问数据;
[000引存储数据包括:
[0009] 客户端获取需要安全存储的数据W及从服务器获取包括至少一种加密算法的可 执行文件;
[0010] 服务器从可执行文件中选取一种加密算法,客户端根据该加密算法将需要安全存 储的数据进行加密存储;
[0011] 访问数据包括:
[0012] 客户端获取加密存储的数据W及与存储数据时选取的加密算法对应的解密算 法;
[0013] 客户端根据该解密算法将加密存储的数据解密成相应的数据类型。
[0014] 上述安全存储数据和访问数据的方法的有益效果在于;通过从服务器获取包括 至少一种加密算法的可执行文件,从而获取至少一种加密算法,由于可执行的加密算法有 多种,服务器选择可执行文件中的一种加密算法,客户端根据该加密算法对需要安全存储 的数据加密保存,从而防止需要安全存储的数据W明文形式存储而被泄露;访问时客户端 获取加密存储的数据W及与存储数据时选取的加密算法对应的解密算法,并根据该解密算 法将加密存储的数据解密成相应的数据类型,从而将加密的数据还原成未加密时的数据类 型,方便用户查看和使用。
[0015] 一种安全存储数据和访问数据的系统,包括;客户端W及服务器;所述服务器用 于存储至少一个包括至少一种加密算法的可执行文件,并从客户端获取的可执行文件中为 客户端的选择一种加密算法;
[0016] 所述客户端包括:
[0017] 第一获取模块,用于获取需要安全存储的数据W及从服务器获取包括至少一种加 密算法的可执行文件;
[0018] 加密模块,用于根据服务器为客户端选取的加密算法将需要安全存储的数据进行 加密存储;
[0019] 第二获取模块,用于获取加密存储的数据W及与存储数据时选取的加密算法对应 的解密算法;
[0020] 解密模块,用于根据该解密算法将加密存储的数据解密成相应的数据类型。
[0021] 上述安全存储数据和访问数据的系统的有益效果在于;服务器存储至少一个包括 至少一种加密算法的可执行文件,从而客户端需要使用加密算法时从服务器获取即可;客 户端的第一获取模块从服务器获取可执行文件,从而获取至少一种加密算法;服务器再从 第一获取模块获取的可执行文件中指定一种加密算法给客户端使用;加密模块则根据服务 器指定的加密算法对需要安全存储的数据进行加密,从而有效防止数据泄露;第二获取模 块获取加密存储的数据和对应的解密算法,解密模块根据该解密算法将加密存储的数据解 密,从而将加密的数据还原成用户方便使用的未加密时的数据类型。
【附图说明】
[0022] 图1为本发明实施例一安全存储数据和访问数据的方法流程图;
[0023] 图2为本发明实施例二安全存储数据和访问数据的系统结构图。
[0024] 标号说明:
[0025] 1、服务器;2、客户端;21、第一获取模块;22、加密模块;23、第二获取模块;24、解 密模块;25、第一转换模块;26、第二转换模块;27、第=转换模块;28、第四转换模块。
【具体实施方式】
[0026] 为详细说明本发明的技术内容、所实现目的及效果,W下结合实施方式并配合附 图予W说明。
[0027] 本发明最关键的构思在于:从服务器中获取包括至少一种加密算法的可执行文 件;并从可执行文件中选择一种加密算法对需要安全存储的数据进行加密。
[002引本发明设及的技术术语解释:
[0029]
[0030] 请参照图1,
[0031] 一种安全存储数据和访问数据的方法,包括存储数据和访问数据;
[0032] 存储数据包括:
[0033] S11、客户端获取需要安全存储的数据W及从服务器获取包括至少一种加密算法 的可执行文件;
[0034] S12、服务器从可执行文件中选取一种加密算法,客户端根据该加密算法将需要安 全存储的数据进行加密存储;
[00对访问数据包括:
[0036] S21、客户端获取加密存储的数据W及与存储数据时选取的加密算法对应的解密 算法;
[0037] S22、客户端根据该解密算法将加密存储的数据解密成相应的数据类型。
[003引上述安全存储数据和访问数据的方法的有益效果在于;通过从服务器获取包括 至少一种加密算法的可执行文件,从而获取至少一种加密算法,由于可执行的加密算法有 多种,服务器选择可执行文件中的一种加密算法,客户端根据该加密算法对需要安全存储 的数据加密保存,从而防止需要安全存储的数据W明文形式存储而被泄露;访问时客户端 获取加密存储的数据W及与存储数据时选取的加密算法对应的解密算法,并根据该解密算 法将加密存储的数据解密成相应的数据类型,从而将加密的数据还原成未加密时的数据类 型,方便用户查看和使用。
[0039] 进一步的,所述安全存储数据和访问数据的方法还包括,客户端检测到加密算法 被破解时,从服务器重新获取新的包括至少一种加密算法的可执行文件,服务器重新的可 执行文件中选取一种加密算法,客户端根据该加密算法对需要安全存储的数据进行加密存 储。
[0040] 从上述描述可知,当加密算法被破解时,客户端从服务器重新下载可执行文件,选 择新的加密算法对需要安全存储的数据进行加密,则破解失效,有效防止了第S方软件破 解加密数据。
[0041] 进一步的,所述客户端从服务器获取加密算法的同时获取相对应的解密算法,解 密时客户端从内存中获取与存储数据时选取的加密算法对应的解密算法。
[0042] 从上述描述可知,加密时即获取相应的解密算法,解密时则无需再与服务器连接, 减少了通信,保证实现内存实时解密出来,从而相应的程序能够实时获取正确的数据;增加 程序的健壮性,防止因为网络不通带来的解密错误。
[0043] 进一步的,所述"获取需要安全存储的数据W及从服务器获取包括至少一种加密 算法的可执行文件"具体为:客户端从服务器上获取加密后的动态链接库,将动态链接库解 密成可执行文件,并将可执行文件加载至客户端的指定程序中;所述可执行文件包括至少 一种加密算法。
[0044] 进一步的,所述"客户端根据该加密算法将需要安全存储的数据进行加密存储"具 体为:
[0045] 客户端将需要安全存储的数据转换为字符串,并将所述字符串转换成二进制的数 组;
[0046] 客户端将二进制的数组根据加载到指定程序的加密算法进行加密并保存。
[0047] 进一步的,所述"客户端根据该解密算法将加密存储的数据解密成相应的数据类 型"具体为:
[0048] 客户端根据解密算法将加密存储的数据解密成二进制的数组;
[0049] 客户端将二进制数组转化为字符串,并将字符串转化为未加密时的数据类型。
[0化0] 从上述描述可知,通过数据类型转换,可W对不同数据类型的数据进行安全存储, 并将加密的数据还原成相应的数据类型。
[0化1] 请参照图2,
[0化2] -种安全存储数据和访问数据的系统,包括;客户端2W及服务器1 ;所述服务器 1用于存储至少一个包括至少一种加密算法的可执行文件,并从客户端2获取的可执行文 件中为客户端2的选择一种加密算法;
[0化3] 所述客户端2包括;
[0化4] 第一获取模块21,用于获取需要安全存储的数据W及从服务器1获取包括至少一 种加密算法的可执行文件;
[0055] 加密模块22,用于根据服务器1为客户端2选取的加密算法将需要安全存储的数 据进行加密存储;
[0056] 第二获取模块23,用于获取加密存储的数据W及与存储数据时选取的加密算法对 应的解密算法;
[0057] 解密模块24,用于根据该解密算法将加密存储的数据解密成相应的数据类型。
[0化引上述安全存储数据和访问数据的系统的有益效果在于;服务器1存储至少一个包 括至少一种加密算法的可执行文件,从而客户端2需要使用加密算法时从服务器1获取即 可;客户端2的第一获取模块21从服务器1获取可执行文件,从而获取至少一种加密算法; 服务器1再从第一获取模块21获取的可执行文件中指定一种加密算法给客户端2使用;加 密模块22则根据服务器1指定的加密算法对需要安全存储的数据进行加密,从而有效防止 数据泄露;第二获取模块23获取加密存储的数据和对应的解密算法,解密模块24根据该解 密算法将加密存储的数据解密,从而将加密的数据还原成用户方便使用的未加密时的数据 类型。
[0化9] 进一步的,所述安全存储数据和访问数据的系统还包括:
[0060] 检测模块,用于检测加密算法是否被破解;
[0061] 第=获取模块,用于从服务器重新获取新的包括至少一种加密算法的可执行文 件。
[0062] 从上述描述可知,当加密算法被破解时,客户端2从服务器1重新下载可执行文 件,选择新的加密算法对需要安全存储的数据进行加密,则破解失效,有效防止了第S方软 件破解加密数据。
[0063] 进一步的,所述安全存储数据和访问数据的系统还包