数据加密保存方法 【技术领域】
本发明涉及对数据进行安全保护的方法,特别是指一种应用在计算机可执行软件之上,通过不同的加密演算方法对单一数据分别进行加密及储存,有助于提升数据保存安全性、方便数据内容验证及进行数据回复的方法。背景技术
“数据保存”一直是个令人相当头痛的问题,随着计算机骇客破解技术的不断精进,不论是在数据储存上或者是数据传输上,常常会遭遇到数据被破解盗取、数据被任意窜改或者是数据被恶意破坏的问题,造成系统运作的不正常或者是其它的损失。
一般现有的数据保存方法,大多选择通过单一的数据演算方法,将数据作简单的加密动作。但是这样的做法,因为仅有通过单一的数据加密演算方法,所以会非常容易被有心人士给轻易破解而知悉其内容,或者是通过扰乱修改的方式引发系统运作的不正常,或者是通过储存地址的回溯追踪而找到数据内容,一旦数据被窜改后,就很难将原始数据正确而快速的回复,影响甚钜。
因此,当数据交流越来越频繁,对于具价值性的数据储存问题以及传输问题就显得格外的重要而不可或缺,所以如何利用目前发达的计算机软件技术,发展出一种能够运用多重的数据加密技术过程来增加数据保存的安全性,减少数据被轻易破解的机会,并且能够方便进行数据内容验证及数据回复的工作,应是目前积极从事“数据保存”相关地研发人员们所努力的目标。发明内容
有鉴于此,本发明乃为解决上述问题而提出一种数据加密保存方法,主要的目的在于计算机可执行软件中,利用两种不同的数据演算方法,对单一数据进行加密的动作并且分别储存,进而增加数据保存安全性、数据回复正确性及数据快速验证性。
为了实现上述目的,本发明提供了一种数据加密保存方法,运用于计算机可执行软件之中,针对单一数据进行不同的演算方法加密后分别储存,能够有效提升数据保存的安全性,同时方便数据的验证和回复作业,其特征在于包含下列步骤:
取得一原始变量值;
通过一第一加密方法对该原始变量值作演算产生一第一保存值;
储存该第一保存值并纪录储存位置;
通过一第二加密方法对该原始变量值作演算产生一第二保存值;
储存该第二保存值并纪录储存位置;及
储存一储存位置对应表。
下面结合附图说明本发明的详细内容及技术。附图说明
图1是本发明所提的数据加密保存方法的数据保存加密流程图;
图2是本发明所提的数据加密保存方法之数据异动加密流程图;及
图3是本发明所提的数据加密保存方法之数据读取显示流程图。具体实施方式
本发明为一种应用在计算机可执行软件中的数据加密保存方法,在图1、图2和图3中,本发明包括如下步骤:步骤100,取得一原始变数值;步骤150,欲进行储存;步骤200,通过一第一加密方法对该原始变数值作演算产生一第一保存值;步骤300,通过一第二加密方法对原始变数值作演算产生一第二保存值;步骤400,储存一储存位置对应表;步骤500,通过该第一加密方法对一异动变数值作演算产生一第一更新值;步骤550,通过该第二加密方法对该异动变数值作演算产生一第二更新值;步骤600,读取原始变数值的该第一保存值及该第二保存值的储存位置;步骤650,分别进行该第一保存值及该第二保存值的一内容更新作业;步骤700,欲显示该原始变数值;读取该储存位置对应表;步骤800,取得该第一保存值并通过;步骤850,取得该第二保存值并通过该第一加密方法执行一第一还原演算;步骤850,取得该第二保存值并通过该第二加密方法执行一第二还原演算;步骤900,还原结果一致;步骤950,传回该原始变数值进行显示。
首先通过图1来说明本发明的数据保存流程图。开始时,本发明将先取得原始变量值的内容(步骤100),当该计算机可执行软件欲进行该原始变量值的储存时(步骤150),则会先通过第一种加密方法将该原始变量值进行加密的演算,然后产生出一个第一保存值(步骤200);接着将产生的第一保存值给储存起来并且纪录其储存地址(address)于一储存位置对应表中(步骤250);同样地再通过第二种加密方法将该原始变量值进行加密的演算,然后产生出一个第二保存值(步骤300);接着将产生的第二保存值给储存起来并且纪录其储存地址(address)于同样的储存位置对应表中(步骤350);完成之后,便将储存位置对应表进行最后储存的动作(步骤400),至此完成数据保存加密的流程。
事实上,当数据发生任何异动时,本发明还包含数据异动加密的流程,请参阅到图2的部分,该图是本发明所提的数据加密保存方法之数据异动加密流程图,说明如下:
首先判断该原始变量值是否已经产生了异动?(步骤450);如果没有则结束流程,否则的话便先通过第一种加密方法对异动变量值(即:产生异动的原始变量值)进行演算,然后产生出一个第一更新值(步骤500);接着继续通过第二种加密方法对同样的异动变量值进行演算加密的动作,产生一个第二更新值(步骤550);再将该原始变量值原本储存在储存位置表中的第一保存值与第二保存值之地址给读取出来(步骤600);并且进一步撷取出两保存值的储存内容,分别进行内容更新作业(即:以第一更新值取代第一保存值,及以第二更新值取代第二保存值)(步骤650),然后结束数据异动时加密保存的流程。
另外,当计算机可执行软件欲进行原始变量值的显示时(步骤700),请参阅到「第3图」的部分,首先读取出所有的储存位置表内容(步骤750);然后再依照欲显示的原始变量名称取得其第一保存值内容,并且通过第一种加密方法进行还原演算,将加密的原始变量值给解密出来(步骤800);接着再撷取出第二保存值的内容,然后利用第二种加密方法进行还原演算,同样对加密的原始变量值作解密的动作(步骤850);进一步判断还原解密出来的两个原始变量值是否一致(步骤900)?如果不一致,则显示错误信息(步骤50),否则便将该原始变量值给传回计算机可执行软件中进行显示(步骤950)。
最后,我们将以一具体实施例来说明本发明之具体可行性,以游戏软件为例,由于玩家们在游戏中所获得的分数,在现实生活中可能会具有实际的价值(如:可以换取金钱、物品…),因此游戏厂商对于分数数据的加密保存工作就显得非常重要,我们举例说明如下:
假设玩家在第一次进行游戏所获得的分数是200分,当玩家结束游戏时,游戏软件便将玩家分数200分(即原始变量值)作加密保存的动作,首先通过第一种加密方法会将玩家分数加密成为如:3AE526daA2#的形式(即:第一保存值)加以储存,然后继续通过第二种加密方法将玩家分数加密成为如:EDA3ad56sgd的形式(即:第二保存值)加以储存,最后再将两保存值的储存地址(address)连同原始变量值名称给存放到储存位置表中,完成数据加密保存的工作。
当玩家后续进行游戏时,玩家分数产生了异动变成了500分(即:异动变量值)便进入到本发明的数据异动加密流程,首先本发明将通过第一种加密方法对异动变量值加密演算成为如:2A2da8G4ky的形式(即:第一更新值),然后再继续通过第二种加密方法将异动变量值加密成为如:Fbhe584z的形式(即:第二更新值),接着将用第一更新值去取代原先储存的第一保存值(即:3AE526daA2#),利用第二更新值去取代原先储存的第二保存值(即:EDA3ad56sgd),完成数据异动加密的流程。
当游戏软件欲进行玩家分数的显示时,便通过本发明的数据读取显示流程,先将储存位置表中该玩家的玩家分数的两保存值储存地址给读取出来,然后分别通过第一种加密方法将第一保存值给还原,利用第二种加密方法将第二保存值给还原,接着判断两者还原出来的玩家分数结果是否一致?(即:500)如果不是,便显示错误信息给游戏软件,否则就将玩家分数传回给游戏软件进行显示的工作。
本发明的数据加密保存方法,因为是对单一数据内容进行不同数据演算方式的加密动作,并且储存在不同的位置上,借此可以使得数据的保存更加安全而不会轻易被破解取得;另外,当数据发生有被窜改的可能时,可以利用事先储存在不同位置的加密数据进行验证的工作,以确保原始数据内容的正确性;当系统运作发生异常时,也同样可以通过对加密数据的还原动作,进行原始数据的快速回复工作。
虽然本发明以前述的较佳实施例揭露如上,然其并非用以限定本发明,故任何熟悉此技艺者,在不脱离本发明之精神和范围内,当可作些许的更动与润饰,因此本发明的保护范围当视本发明权利要求书所界定的范围为准。