CN112241545A - 一种绘图数据的细粒度保护方法 - Google Patents
一种绘图数据的细粒度保护方法 Download PDFInfo
- Publication number
- CN112241545A CN112241545A CN202011171942.8A CN202011171942A CN112241545A CN 112241545 A CN112241545 A CN 112241545A CN 202011171942 A CN202011171942 A CN 202011171942A CN 112241545 A CN112241545 A CN 112241545A
- Authority
- CN
- China
- Prior art keywords
- encrypted
- fine
- drawing data
- grained
- data
- 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
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000008569 process Effects 0.000 claims abstract description 3
- FGUUSXIOTUKUDN-IBGZPJMESA-N C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 Chemical compound C1(=CC=CC=C1)N1C2=C(NC([C@H](C1)NC=1OC(=NN=1)C1=CC=CC=C1)=O)C=CC=C2 FGUUSXIOTUKUDN-IBGZPJMESA-N 0.000 claims description 6
- 238000005516 engineering process Methods 0.000 claims description 4
- 238000007689 inspection Methods 0.000 claims 1
- 238000013478 data encryption standard Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Abstract
本发明公开了一种绘图数据的细粒度保护方法,包含以下过程:将绘图数据划分为若干个图层,每个图层包含若干个细粒度数据对象;用户根据需求选择细粒度数据对象或图层或整个绘图数据为加密对象,再对加密对象设置用户密码并进行加密,得到加密的绘图数据;读取加密的绘图数据时,根据加密对象的用户密码对加密的绘图数据解密。本发明可以根据用户需求灵活的对整个绘图数据或图层或细粒度数据对象进行加密保护,实现了灵活的细粒度绘图数据保护。
Description
技术领域
本发明涉及绘图软件中数据加密技术领域,尤其涉及一种基于密码技术的绘图数据的细粒度保护方法。
背景技术
当前绘图数据加密通常是对整个绘图数据文件进行加密,并不能对绘图数据文件进行细粒度保护无法对特定的细粒度数据对象进行保护;无法实现多级别密码保护,灵活性不足。例如,一家笔记本电脑生产商设计了一款新的笔记本电脑,设计师画了新电脑的设计图纸,在新电脑投入市场销售前对新电脑的设计要进行保密,防止竞争对手事先知晓新机型的设计。为了加快新机型的生产,笔记本电脑生产商把新机型的各个配件,比如键盘、显示屏等交给不同的配件生产商进行制造,但笔记本电脑生产商不希望配件生产商看到整个图纸,希望每个配件生产商只能看到要自己制造的配件图纸数据,同时不希望增加设计师的工作量。在这种情况下,需要对图纸进行细粒度的保密处理,根据用户的需求能对不同的配件生产商只显示一部分图纸数据。
大部分绘图软件并未对数据进行加密处理,仅仅进行简单的数据转换处理,无法有效的保护绘图数据。个别的绘图软件有一些对数据保护的处理,但常见的方法是事先要求用户设置一个密码然后保存在本地的绘图数据文件中,当用户打开绘图数据时要求用户输入密码然后与数据文件中存储的密码进行比对,如密码一致,则允许用户打开,否则就不能打开数据文件。这样的实现方法大大增加了密码泄露的风险,无法真正有效的保护绘图数据。
发明内容
本发明提出了一种绘图数据的细粒度保护方法,采用动态的密钥生成机制,实现最小绘图对象的细粒度保护方法。
为了达到上述目的,本发明提出了一种绘图数据的细粒度保护方法,具体包括以下过程:
将绘图数据划分为若干个图层,每个图层包含若干个细粒度数据对象;用户根据需求选择细粒度数据对象或图层或整个绘图数据为加密对象,再对加密对象设置用户密码并进行加密,得到加密的绘图数据;读取加密的绘图数据时,根据加密对象的用户密码对加密的绘图数据解密。
优选地,采用多维链表数据结构对绘图数据进行细粒度划分,从而将绘图数据划分为若干个图层,每一图层均包含若干个细粒度数据对象。
优选地,所述细粒度数据对象为基本的绘图元素。
优选地,所述每个细粒度数据对象、每个图层以及整个绘图数据均具有加密属性;所述加密属性包含加密存储标识、加密存储密码,且所述加密属性遵循范围优先原则。
优选地,用户根据需求选择加密对象时,通过设置细粒度数据对象或图层或整个绘图数据的加密属性中的加密存储标识的具体属性值确定加密对象,从而实现灵活的细粒度绘图数据保护。
优选地,若用户选择整个绘图数据为加密对象,则将整个绘图数据的加密属性中的加密存储标识标记为加密,并设置用户密码存储在其加密属性中的加密存储密码内,同时遍历清除绘图数据中的所有图层以及所有细粒度数据对象的加密属性;
若选择图层为加密对象,则将该图层的加密属性中的加密存储标识标记为加密,并设置用户密码存储在其加密属性中的加密存储密码内,同时遍历清除该图层中的所有细粒度数据的加密属性;
若选择细粒度数据为加密对象,则将该细粒度数据的加密属性中的加密存储标识标记为加密,并设置用户密码存储在其加密属性中的加密存储密码内。
优选地,对加密对象进行加密时,包括以下步骤:
根据加密对象的用户密码以及绘图软件预设的随机串生成对称算法密钥;
使用所述对称算法密钥对加密对象进行对称密码技术加密,得到加密的绘图数据;
删除用户密码以及对称算法密钥,并存储加密的绘图数据。
优选地,根据加密对象的用户密码以及绘图软件预设的随机串生成对称算法密钥,包括以下步骤:
a、对用户密码进行二进制编码,得到二进制编码串,设其长度为L;
b、判断二进制编码串的长度L与绘图软件采用的对称密码算法的密钥长度N是否相等;
c、若二进制编码串长度L小于密钥长度N,则将二进制编码串长度L填充至密钥长度N,得到二进制串M,并执行步骤f;若二进制编码串长度L等于密钥长度N,则无需填充,将二进制编码串定义为二进制串M,
并执行步骤f;
d、若二进制编码串长度L大于密钥长度N,则对二进制编码串进行异或操作,得到二进制编码新串,该二进制编码新串的长度L'=取整(L/2);
e、判断二进制编码新串的长度L'与绘图软件采用的对称密码算法的密钥长度N是否相等,若二进制编码新串的长度L'小于等于密钥长度N,则执行步骤c;
f、根据二进制串M及绘图软件预设的随机串计算临时密钥H,所述临时密钥H=M⊕绘图软件预设的随机串;
g、将临时密钥H循环左移16位,得到对称算法密钥。
优选地,将二进制编码串长度L填充至密钥长度N时,所采用的的填充方法为:二进制编码串其串联一个1和若干个0,直至二进制编码串长度为N。
优选地,对二进制编码串进行异或操作,具体包含:从二进制编码串的第一位开始每两位做异或操作,若余一位则不作异或操作。
优选地,所述对称算法密钥的生成方法是固定的,以便可根据同一个用户密码生成相同的对称算法密钥。
优选地,读取加密的绘图数据时,遍历整个绘图数据进行检查,以检测并确定加密对象;检测到加密对象时,根据该加密对象的用户密码以及绘图软件预设的随机串生成对称算法密钥,对称算法密钥再对该加密对象进行解密。
本发明具有以下优势:
本申请通过采用多维链表数据结构对绘图数据进行细粒度划分,并采用加密属性的方式,从而实现用户根据需求灵活的对整个绘图数据或图层或细粒度数据对象进行加密保护。同时,绘图数据加密完成后无需保存用户密码以及根据用户密码生成的对称算法密钥,从而确保不会有任何泄露风险,大大降低了泄密的风险。
附图说明
图1为本发明实施例提供的一种绘图数据的细粒度保护方法的流程图;
图2为本发明实施例提供的绘图数据的结构示意图。
具体实施方式
以下结合附图和具体实施例对本发明提出的一种绘图数据的细粒度保护方法作进一步详细说明。根据下面说明和权利要求书,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比率,仅用以方便、明晰地辅助说明本发明实施例的目的。
如图1所示,为本发明提出的一种绘图数据的细粒度保护方法,包括以下步骤:
S1将绘图数据划分为若干个图层,每个图层包含若干个细粒度数据对象;
具体地,如图2所示,采用多维链表数据结构对绘图数据进行细粒度划分,从而将整个绘图数据划分为由若干个图层组成的图层链表,每一图层包含由若干个细粒度数据对象组成的细粒度数据链表。所述细粒度数据对象与绘图软件中基本的绘图元素相同,如:直线、曲线、矩形等基本绘图元素。
完整的数据文件应该包括该文件信息以及文件数据。所述整个绘图数据的文件信息一般包含当前文件的名称、版本以及文件属性等信息,所述图层的文件信息一般包含图层名称、图层作用以及图层属性等信息。
此外,所述整个绘图数据以及每一个图层、每一个细粒度数据对象均具有加密属性。所述加密属性包含加密存储标识以及加密存储密码。所述加密属性的具体属性值可根据用户需求自行设置,如:需要加密,则加密存储标识标记为“加密”,加密存储密码则存储用户设置的用户密码。
S2、用户根据需求选择细粒度数据对象或图层或整个绘图数据为加密对象,再对加密对象设置用户密码并进行加密,得到加密的绘图数据;
具体地,用户根据加密需求可选择整个绘图数据或若干个图层或若干个细粒度数据对象为加密对象,并对加密对象分别加密,实现绘图数据细粒度保护。
进一步地,所述整个绘图数据以及每一个图层、每一个细粒度数据对象的加密属性遵循范围优先原则,即:若用户选择加密整个绘图数据,则不允许单独加密图层或细粒度数据对象,遍历清除绘图数据中的所有图层以及所有细粒度数据对象的加密属性中的加密存储标识,同时将整个绘图数据的加密属性中的加密存储标识标记为加密,并设置用户密码存储在其加密属性中的加密存储密码内;若用户选择加密若干个图层或某一个图层,则不允许单独加密该些(或该)图层中的细粒度数据对象,遍历清除该些(或该)图层中的所有细粒度数据对象的加密属性中的加密存储标识,同时将该些(或该)图层的加密属性中的加密存储标识标记为加密,并设置用户密码存储在其加密属性中的加密存储密码内;若用户选择加密若干个细粒度数据对象或某一个细粒度数据对象,则将该些(或该)细粒度数据对象的加密属性中的加密存储标识标记为加密,并设置用户密码存储在其加密属性中的加密存储密码内。更进一步地,根据用户要求,所述整个绘图数据的用户密码以及图层的用户密码或细粒度数据对象的用户密码,可以相同也可以不同。本申请中的加密属性遵循范围优先原则,可以有效嵌套加密,增加安全性且可降低开销。
通过遍历读取整个绘图数据,各个图层以及各个细粒度数据对象的加密属性中的加密存储标识,确定用户选择的加密对象。对所选择的加密对象进行加密时,包括以下步骤:
S2.1、根据加密对象的用户密码以及绘图软件预设的随机串生成对称算法密钥;
具体地,所述对称算法密钥的生成方法,包含以下步骤:
a、对用户密码进行二进制编码,得到二进制编码串,设其长度为L;
b、判断二进制编码串的长度L与绘图软件采用的对称密码算法的密钥长度N是否相等;
c、若二进制编码串长度L小于密钥长度N,则将二进制编码串长度L填充至密钥长度N,得到二进制串M,并执行步骤f;若二进制编码串长度L等于密钥长度N,则无需填充,并将二进制编码串定义为二进制串M,并执行步骤f;
进一步地,将二进制编码串长度L填充至密钥长度N时,所采用的的填充方法为:二进制编码串串联一个1和若干个0,直至二进制编码串长度为N。
d、若二进制编码串长度L大于密钥长度N,则对二进制编码串进行异或操作,得到二进制编码新串,该二进制编码新串的长度L'=取整(L/2);
进一步地,对二进制编码串进行异或操作,具体包含:从二进制编码串的第一位开始每两位做异或操作,若余一位则不作异或操作。
e、判断二进制编码新串的长度L'与绘图软件采用的对称密码算法的密钥长度N是否相等,若二进制编码新串的长度L'小于等于密钥长度N,则执行步骤c;
f、根据二进制串M及绘图软件预设的随机串计算临时密钥H,所述临时密钥H=M⊕绘图软件预设的随机串;
g、将临时密钥H循环左移16位,得到对称算法密钥。
进一步地,所述对称算法密钥的生成方法是固定的,以便可根据同一个用户密码生成相同的对称算法密钥。
S2.2、使用所述对称算法密钥对加密对象进行对称密码技术加密,得到加密的绘图数据;
具体地,根据步骤S2.2得到的对称算法密钥对所需要保护的数据即加密对象进行对称密码技术加密,得到加密的绘图数据。所述对称密码技术可采用AES(AdvancedEncryption Standard,高级加密标准)算法或DES(Data Encryption Standard,数据加密标准)算法等。
S2.3、删除用户密码以及对称算法密钥,并存储加密的绘图数据。
在得到加密的绘图数据后,删除用户密码以及对称算法密钥,以确保不会有任何泄露风险,保护绘图数据的安全。存储加密的绘图数据时,以原有的绘图文件形式进行存储即可,无需进行额外的操作。
S3、读取加密的绘图数据时,根据加密对象的用户密码对加密的绘图数据解密。
具体地,用户采用绘图软件打开加密的绘图数据时,同样采用多维链表数据结构加载该加密的绘图数据。绘图软件读取该加密的绘图数据时,遍历整个加密的绘图数据进行检查,以检测及确定加密对象。进一步地,加密的绘图数据采用多维链表结构加载,遍历整个加密的绘图数据时检测加密对象时,遍历加密的绘图数据下的图层链表:读取图层链表中的第一个图层(图层1)并遍历图层1下的细粒度数据链表,然后依次读取图层链表中的其他图层及其下的细粒度数据链表。
如果检测到加密对象,绘图软件则禁止显示该加密对象并禁止用户对该加密对象进行编辑,同时,绘图软件提示用户输入该加密对象的用户密码。
用户输入用户密码后,绘图软件根据该用户密钥、绘图软件预设的随机串以及步骤S2.1所述的对称算法密钥生成方法计算得到对称算法密钥,然后采用该对称算法密钥对该加密对象进行解密。解密成功后,绘图软件则可正常显示加密的数据;若解密失败,加密的绘图数据则仍无法显示加密对象并禁止用户对该加密对象进行编辑。由于本申请中的加密对象可为整个绘图数据,也可以为图层或图层中的细粒度数据对象,实现灵活的细粒度绘图数据保护。
尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。
Claims (8)
1.一种绘图数据的细粒度保护方法,其特征在于,包含以下过程:
将绘图数据划分为若干个图层,每个图层包含若干个细粒度数据对象;用户根据需求选择细粒度数据对象或图层或整个绘图数据为加密对象,再对加密对象设置用户密码并进行加密,得到加密的绘图数据;读取加密的绘图数据时,根据加密对象的用户密码对加密的绘图数据解密。
2.如权利要求1所述的一种绘图数据的细粒度保护方法,其特征在于,采用多维链表数据结构对绘图数据进行细粒度划分,从而将绘图数据划分为若干个图层,每一图层均包含若干个细粒度数据对象。
3.如权利要求1所述的一种绘图数据的细粒度保护方法,其特征在于,所述每个细粒度数据对象、每个图层以及整个绘图数据均具有加密属性;所述加密属性包含加密存储标识、加密存储密码,且所述加密属性遵循范围优先原则。
4.如权利要求3所述的一种绘图数据的细粒度保护方法,其特征在于,用户根据需求选择加密对象时,通过设置细粒度数据对象或图层或整个绘图数据的加密属性中的加密存储标识的具体属性值确定加密对象,从而实现灵活的细粒度绘图数据保护。
5.如权利要求4所述的一种绘图数据的细粒度保护方法,其特征在于,
若用户选择整个绘图数据为加密对象,则将整个绘图数据的加密属性中的加密存储标识标记为加密,并设置用户密码存储在其加密属性中的加密存储密码内,同时遍历清除绘图数据中的所有图层以及所有细粒度数据对象的加密属性;
若选择图层为加密对象,则将该图层的加密属性中的加密存储标识标记为加密,并设置用户密码存储在其加密属性中的加密存储密码内,同时遍历清除该图层中的所有细粒度数据的加密属性;
若选择细粒度数据为加密对象,则将该细粒度数据的加密属性中的加密存储标识标记为加密,并设置用户密码存储在其加密属性中的加密存储密码内。
6.如权利要求1所述的一种绘图数据的细粒度保护方法,其特征在于,对加密对象进行加密时,包括以下步骤:
根据加密对象的用户密码以及绘图软件预设的随机串生成对称算法密钥;
使用所述对称算法密钥对加密对象进行对称密码技术加密,得到加密的绘图数据;
删除用户密码以及对称算法密钥,并存储加密的绘图数据。
7.如权利要求6所述的一种绘图数据的细粒度保护方法,其特征在于,根据加密对象的用户密码以及绘图软件预设的随机串生成对称算法密钥,包括以下步骤:
a、对用户密码进行二进制编码,得到二进制编码串,设其长度为L;
b、判断二进制编码串的长度L与绘图软件采用的对称密码算法的密钥长度N是否相等;
c、若二进制编码串长度L小于密钥长度N,则将二进制编码串长度L填充至密钥长度N,得到二进制串M,并执行步骤f;若二进制编码串长度L等于密钥长度N,则将二进制编码串定义为二进制串M,并执行步骤f;
d、若二进制编码串长度L大于密钥长度N,则对二进制编码串进行异或操作,得到二进制编码新串,该二进制编码新串的长度L'=取整(L/2);
e、判断二进制编码新串的长度L'与绘图软件采用的对称密码算法的密钥长度N是否相等,若二进制编码新串的长度L'小于等于密钥长度N,则执行步骤c;
f、根据二进制串M及绘图软件预设的随机串计算临时密钥H,所述临时密钥H=M⊕绘图软件预设的随机串;
g、将临时密钥H循环左移16位,得到对称算法密钥。
8.如权利要求1所述的一种绘图数据的细粒度保护方法,其特征在于,读取加密的绘图数据时,遍历整个绘图数据进行检查,以检测并确定加密对象;检测到加密对象时,根据该加密对象的用户密码以及绘图软件预设的随机串生成对称算法密钥,对称算法密钥再对该加密对象进行解密。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011171942.8A CN112241545A (zh) | 2020-10-28 | 2020-10-28 | 一种绘图数据的细粒度保护方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011171942.8A CN112241545A (zh) | 2020-10-28 | 2020-10-28 | 一种绘图数据的细粒度保护方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112241545A true CN112241545A (zh) | 2021-01-19 |
Family
ID=74170267
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011171942.8A Pending CN112241545A (zh) | 2020-10-28 | 2020-10-28 | 一种绘图数据的细粒度保护方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112241545A (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007116273A (ja) * | 2005-10-18 | 2007-05-10 | Sharp Corp | 画像処理装置、画像処理方法、および画像処理プログラム |
US20090022319A1 (en) * | 2007-07-19 | 2009-01-22 | Mark Shahaf | Method and apparatus for securing data and communication |
CN103179114A (zh) * | 2013-03-15 | 2013-06-26 | 华中科技大学 | 一种云存储中的数据细粒度访问控制方法 |
-
2020
- 2020-10-28 CN CN202011171942.8A patent/CN112241545A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007116273A (ja) * | 2005-10-18 | 2007-05-10 | Sharp Corp | 画像処理装置、画像処理方法、および画像処理プログラム |
US20090022319A1 (en) * | 2007-07-19 | 2009-01-22 | Mark Shahaf | Method and apparatus for securing data and communication |
CN103179114A (zh) * | 2013-03-15 | 2013-06-26 | 华中科技大学 | 一种云存储中的数据细粒度访问控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI750223B (zh) | 區塊鏈加密射頻晶片存儲設計方法 | |
KR101216995B1 (ko) | 인덱스 테이블 기반 코드 암호화 및 복호화 장치 및 그 방법 | |
US20130262863A1 (en) | Searchable encryption processing system | |
US8001391B2 (en) | Method of encrypting and decrypting data stored on a storage device using an embedded encryption/decryption means | |
US8600048B1 (en) | Format-translating encryption systems | |
CN102163268A (zh) | 在执行期间验证软件代码的完整性的方法和设备 | |
US20080010686A1 (en) | Confidential Information Processing Device | |
CN101685425A (zh) | 移动存储设备及实现移动存储设备加密的方法 | |
JP2005050160A (ja) | ハードウェアプロテクトキー及び情報処理システム | |
CN106533663B (zh) | 数据加密方法、加密方设备及数据解密方法、解密方设备 | |
JP2004523183A (ja) | データ、情報および機能変換のカモフラージュのための方法および装置 | |
US8694798B2 (en) | Generating and securing multiple archive keys | |
US20090013183A1 (en) | Confidential Information Processing Method, Confidential Information Processor, and Content Data Playback System | |
CN115017530A (zh) | 一种数据安全存储设备及方法 | |
US8280061B2 (en) | Methods and systems for storing and retrieving encrypted data | |
US20080104396A1 (en) | Authentication Method | |
CN112241545A (zh) | 一种绘图数据的细粒度保护方法 | |
CN101692266A (zh) | 利用隐藏分区与cpu id的高强度文件加密保护方法 | |
CN115344875A (zh) | 文件加密、文件解密方法及装置 | |
CN112134701B (zh) | 敏感关键字可否认编辑加密方法 | |
CN100359494C (zh) | 电子文件字符内码变换加密方法 | |
JP4338185B2 (ja) | ファイルの暗号化・復号方法 | |
JP2002290395A (ja) | 情報端末装置 | |
CN113468544B (zh) | 一种应用模型的训练方法及装置 | |
KR102062979B1 (ko) | 암호화 장치 및 방법과, 암호화 방식의 추천 방법 |
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 |