CN111046400A - 基于实物图像综合信息的基因式存储与解析方法及系统 - Google Patents
基于实物图像综合信息的基因式存储与解析方法及系统 Download PDFInfo
- Publication number
- CN111046400A CN111046400A CN201911132099.XA CN201911132099A CN111046400A CN 111046400 A CN111046400 A CN 111046400A CN 201911132099 A CN201911132099 A CN 201911132099A CN 111046400 A CN111046400 A CN 111046400A
- Authority
- CN
- China
- Prior art keywords
- ciphertext
- comprehensive information
- information data
- key set
- real object
- 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.)
- Granted
Links
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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种基于实物图像综合信息的基因式存储与解析方法及系统,属于综合信息存储与解析技术领域,解决了实物图像不具有综合信息的问题。一种基于实物图像综合信息的基因式存储与解析方法,包括以下步骤:将文本型的实物图像综合信息数据转化为BYTE型二进制实物图像综合信息数据,进行基础加密,得到密文;根据随机码和动态秘钥集合确定核心秘钥,根据所述核心秘钥及密文D1,得到密文D2;根据混淆秘钥集合确定最终密文D3,所述D3即为最终写入图像的加密信息;通过D3确定密文D2;根据核心秘钥和D2,确定密文D1;根据所述密文D1得到文本型的实物图像综合信息数据。实现了对实物图像综合信息的存储和解析,使得实物图像具有对应的综合信息。
Description
技术领域
本发明涉及综合信息存储与解析技术领域,尤其是涉及一种基于实物图像综合信息的基因式存储与解析方法。
背景技术
实物图像综合信息包括岩心图像地质信息、实物档案图像等综合属性信息,而基于油田、地矿、煤炭、有色、核工业、大洋勘探、实物档案馆藏等行业的地质综合信息或档案综合属性信息,属于国家保密内容;现有的岩心图像无地质信息,实物档案图像也无综合属性信息,而现有的方案为将岩心地质信息或综合属性信息存储在数据库中,岩心图像或实物档案图像必须要和载有地质信息或综合属性信息的数据库在一起配合岩心图像或实物档案图像才更有实际的利用价值,但是数据库很难和图像一起使用,最后导致岩心图像或实物档案图像仅仅具有浏览、查看的作用;为了使得岩心图像和实物档案图像等实物图像具有对应的综合信息,需要一种对实物图像综合信息进行存储和解析的方案。
发明内容
本发明的目的在于至少克服上述一种技术不足,提出一种基于实物图像综合信息的基因式存储与解析方法及系统。
一方面,本发明提供了一种基于实物图像综合信息的基因式存储与解析方法,包括正向存储方法和逆向解析方法,所述正向存储方法包括以下步骤,
将文本型的实物图像综合信息数据S转化为BYTE型二进制实物图像综合信息数据,将所述BYTE型二进制实物图像综合信息数据进行基础加密,得到密文D1;
随机生成一个动态秘钥集合M2,根据实物图像综合信息数据S获取随机码K,根据所述随机码K和动态秘钥集合M2确定核心秘钥MK2,根据所述核心秘钥MK2及密文D1,得到动态加密后的密文D2;
随机生成一个混淆秘钥集合C,将所述密文D2分割成三部分Ds1、Ds2、Ds3,根据所述Ds1、Ds2、Ds3和混淆秘钥集合C确定最终密文D3,所述D3即为最终写入图像的加密信息;
所述逆向解析方法包括以下步骤,
将最终密文D3分割成三部分Ds1、Ds2、Ds3,根据所述混淆秘钥集合C及Ds1、Ds2、Ds3,确定密文D2;
根据所述核心秘钥MK2和密文D2,确定密文D1;
根据所述密文D1得到BYTE型二进制实物图像综合信息数据,根据所述BYTE型二进制实物图像综合信息数据,得到文本型的实物图像综合信息数据S。
进一步地,将所述BYTE型二进制实物图像综合信息数据进行基础加密,得到密文D1,具体包括,将BYTE型二进制实物图像综合信息数据以6位为一个单元,生成10进制索引,根据所述10进制索引,在基础加密的秘钥M1中选择对应的字符,生成密文D1。
进一步地,所述随机生成一个动态秘钥集合M2,具体包括,随机生成8位字符串,构成一个元素,256个元素形成了一个动态秘钥集合M2。
进一步地,所述根据实物图像综合信息数据S获取随机码K,具体包括,获取实物图像综合信息数据S的大小Size,取所述Size的第一位、最后一位以及中间随机的一位,组成随机码K。
进一步地,根据所述随机码K和动态秘钥集合M2确定核心秘钥MK2,具体包括,将所述随机码K和256取模得到核心秘钥MK2的索引n,根据所述核心秘钥MK2的索引n及动态秘钥集合M2,得到核心秘钥MK2。
进一步地,所述随机生成一个混淆秘钥集合C,具体包括,随机生成两位字符作为一个元素,1024个元素构成了一个混淆秘钥集合C。
进一步地,将所述密文D2分割成三部分Ds1、Ds2、Ds3,根据所述Ds1、Ds2、Ds3和混淆秘钥集合C确定最终密文D3,具体包括:
通过D2-n的大小与256取模得到M[1],通过n与256取模得到M[2],通过将D2-n的大小与1024取模得到混淆秘钥集合C的第一索引n1,通过对n与1024取模得到混淆秘钥集合C的第二索引n2,通过所述M[1]和M[2]确定D3分割的位置,通过所述n1和n2确定插入分割位置的混淆秘钥集合C的值,确定最终密文D3。
另一方面,本发明还提供了一种基于实物图像综合信息的基因式存储与解析系统,包括正向存储系统和逆向解析系统,所述正向存储系统具体包括基础加密模块、动态加密模块及混合加密模块,所述逆向解析系统具体包括混合解密模块、动态解密模块和基础解密模块;
所述基础加密模块,用于将文本型的实物图像综合信息数据S转化为BYTE型二进制实物图像综合信息数据,将所述BYTE型二进制实物图像综合信息数据进行基础加密,得到密文D1;
所述动态加密模块,用于随机生成一个动态秘钥集合M2,根据实物图像综合信息数据S获取随机码K,根据所述随机码K和动态秘钥集合M2确定核心秘钥MK2,根据所述核心秘钥MK2及密文D1,得到动态加密后的密文D2;
所述混合加密模块,用于随机生成一个混淆秘钥集合C,将所述密文D2分割成三部分Ds1、Ds2、Ds3,根据所述Ds1、Ds2、Ds3和混淆秘钥集合C确定最终密文D3,所述D3即为最终写入图像的加密信息;
所述混合解密模块,用于将最终密文D3分割成三部分Ds1、Ds2、Ds3,根据所述混淆秘钥集合C及Ds1、Ds2、Ds3,确定密文D2;
所述动态解密模块,用于根据所述核心秘钥MK2和密文D2,确定密文D1;
所述基础解密模块,用于根据所述密文D1得到BYTE型二进制实物图像综合信息数据,根据所述BYTE型二进制实物图像综合信息数据,得到文本型的实物图像综合信息数据S。
与现有技术相比,本发明的有益效果包括:通过将文本型的实物图像综合信息数据S转化为BYTE型二进制实物图像综合信息数据,将所述BYTE型二进制实物图像综合信息数据进行基础加密,得到密文D1;随机生成一个动态秘钥集合M2,根据实物图像综合信息数据S获取随机码K,根据所述随机码K和动态秘钥集合M2确定核心秘钥MK2,根据所述核心秘钥MK2及密文D1,得到动态加密后的密文D2;随机生成一个混淆秘钥集合C,将所述密文D2分割成三部分Ds1、Ds2、Ds3,根据所述Ds1、Ds2、Ds3和混淆秘钥集合C确定最终密文D3,所述D3即为最终写入图像的加密信息;通过将最终密文D3分割成三部分Ds1、Ds2、Ds3,根据所述混淆秘钥集合C及Ds1、Ds2、Ds3,确定密文D2;根据所述核心秘钥MK2和密文D2,确定密文D1;根据所述密文D1得到BYTE型二进制实物图像综合信息数据,根据所述BYTE型二进制实物图像综合信息数据,得到文本型的实物图像综合信息数据S;实现了对实物图像综合信息的存储和解析,使得实物图像具有对应的综合信息。
附图说明
图1为本发明实施例1所述的正向存储方法的流程示意图;
图2为本发明实施例1所述的逆向解析方法的流程示意图;
图3为本发明实施例2所述的基础加密流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例1
本发明实施例提供了一种基于实物图像综合信息的基因式存储与解析方法,包括正向存储方法和逆向解析方法,所述正向存储方法,其流程示意图,如图1所示,所述正向存储方法包括以下步骤,
将文本型的实物图像综合信息数据S转化为BYTE型二进制实物图像综合信息数据,将所述BYTE型二进制实物图像综合信息数据进行基础加密,得到密文D1;
随机生成一个动态秘钥集合M2,根据实物图像综合信息数据S获取随机码K,根据所述随机码K和动态秘钥集合M2确定核心秘钥MK2,根据所述核心秘钥MK2及密文D1,得到动态加密后的密文D2;
随机生成一个混淆秘钥集合C,将所述密文D2分割成三部分Ds1、Ds2、Ds3,根据所述Ds1、Ds2、Ds3和混淆秘钥集合C确定最终密文D3,所述D3即为最终写入图像的加密信息;
所述逆向解析方法,其流程示意图,如图2所示,所述逆向解析方法包括以下步骤,
将最终密文D3分割成三部分Ds1、Ds2、Ds3,根据所述混淆秘钥集合C及Ds1、Ds2、Ds3,确定密文D2;
根据所述核心秘钥MK2和密文D2,确定密文D1;
根据所述密文D1得到BYTE型二进制实物图像综合信息数据,根据所述BYTE型二进制实物图像综合信息数据,得到文本型的实物图像综合信息数据S。
优选的,将所述BYTE型二进制实物图像综合信息数据进行基础加密,得到密文D1,具体包括,将BYTE型二进制实物图像综合信息数据以6位为一个单元,生成10进制索引,根据所述10进制索引,在基础加密的秘钥M1中选择对应的字符,生成密文D1。
优选的,所述随机生成一个动态秘钥集合M2,具体包括,随机生成8位字符串,构成一个元素,256个元素形成了一个动态秘钥集合M2。
优选的,所述根据实物图像综合信息数据S获取随机码K,具体包括,获取实物图像综合信息数据S的大小Size,取所述Size的第一位、最后一位以及中间随机的一位,组成随机码K。
优选的,根据所述随机码K和动态秘钥集合M2确定核心秘钥MK2,具体包括,将所述随机码K和256取模得到核心秘钥MK2的索引n,根据所述核心秘钥MK2的索引n及动态秘钥集合M2,得到核心秘钥MK2。
优选的,所述随机生成一个混淆秘钥集合C,具体包括,随机生成两位字符作为一个元素,1024个元素构成了一个混淆秘钥集合C。
优选的,将所述密文D2分割成三部分Ds1、Ds2、Ds3,根据所述Ds1、Ds2、Ds3和混淆秘钥集合C确定最终密文D3,具体包括:
通过D2-n的大小与256取模得到M[1],通过n与256取模得到M[2],通过将D2-n的大小与1024取模得到混淆秘钥集合C的第一索引n1,通过对n与1024取模得到混淆秘钥集合C的第二索引n2,通过所述M[1]和M[2]确定D3分割的位置,通过所述n1和n2确定插入分割位置的混淆秘钥集合C的值,确定最终密文D3。
实施例2
本发明实施例还提供了一种基于实物图像综合信息的基因式存储与解析方法,所述实物图像综合信息具体为岩心图像地质信息,
所述基于实物图像综合信息的基因式存储与解析方法包括正向存储方法和逆向解析方法,所述正向存储方法,包括以下步骤,
将文本型的地质信息数据S转化为BYTE型二进制地质信息数据,将所述BYTE型二进制地质信息数据进行基础加密,得到密文D1;
随机生成一个动态秘钥集合M2,根据地质信息数据S获取随机码K,根据所述随机码K和动态秘钥集合M2确定核心秘钥MK2,根据所述核心秘钥MK2及密文D1,得到动态加密后的密文D2;
随机生成一个混淆秘钥集合C,将所述密文D2分割成三部分Ds1、Ds2、Ds3,根据所述Ds1、Ds2、Ds3和混淆秘钥集合C确定最终密文D3,所述D3即为最终写入图像的地质加密信息;
所述逆向解析方法,包括以下步骤,
将最终密文D3分割成三部分Ds1、Ds2、Ds3,根据所述混淆秘钥集合C及Ds1、Ds2、Ds3,确定密文D2;
根据所述核心秘钥MK2和密文D2,确定密文D1;
根据所述密文D1得到BYTE型二进制地质信息数据,根据所述BYTE型二进制地质信息数据,得到文本型的地质信息数据S。
针对岩心的地质信息,包括岩心直径、起始深度、终止深度、扫描心长、采集单位、托管单位、盆地、采样位置、井号、岩心图像类型、扫描人、扫描时间、方位角、归位深度、大地x坐标、大地y坐标、井类型、井轨迹、档号、案卷题名、总回次、当前回次、单块号、总块号、岩心编号、分辨率、层位、图像方向信息、图像来源、颜色、成分、岩性定名、岩石名称、矿物组成、含矿性、结构、磨圆、分选、胶结情况、构造、沉积构造、层面形态、层理、生物遗迹、沉积相、岩性相、相、亚相、微相、层序地层、粒序变化、裂缝特征、孔洞特征、粒度特征、化石及含有物、物理化学性质、含油气显示情况、储集空间、岩心破碎情况、产状、测量岩心倾角、特殊标志、地层接触关系、现场描述、地质综述、起始井段、终止井段、幅数、盒号、格号、图像类型、文件大小、高度、宽度等基本地质信息以及自定义添加的其他信息。
优选的,将所述BYTE型二进制地质信息数据进行基础加密,得到密文D1,具体包括,将BYTE型二进制地质信息数据以6位为一个单元,生成10进制索引,根据所述10进制索引,在基础加密的秘钥M1中选择对应的字符,生成密文D1。
具体实施时,首先利用对称加密算法Base64对BYTE型二进制地质信息数据进行基础加密,各输入、输出变量包括输入的地质数据S、选择的秘钥M1以及基础加密后输出内容D1,基础加密流程示意图,如图3所示;
所述Base64算法的原理是用64个可打印字符来表示二进制下所有数据,64为2的6次方,所以将6位表示一个单元,即6位二进制,大小从000000到111111,即用每6位表示一个可打印字符,标准的计算机编码下,三个字节24位,对应4个Base64单元,即3个字节需要4个Base64的字符来表示,可打印字符包括字母A-Z、a-z、数字0-9以及“+=”,可打印字符对应表,如表1所示,
表1
选择的秘钥M1=“ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+=”
在长度3字节整数倍,即为24位的整数倍情况,以“HAO”为例,说明以6位为一个单元,生成10进制索引的过程,H的16进制为0x48,A的16进制为0x41,O的16进制为0x4F,3个8位对应的二进制为01001000 01000001 01001111,将该二进制按照6位一组提取010010000100 000101 001111,则可分为4组,对应的10进制索引为18、4、5、15,根据索引到得到字符为:M1[18]=S、M1[4]=E、M1[5]=F、M1[15]=P,则HAO为对应的Base64字符串为SEFP(即密文);HAO文本与Base编码对应关系表,如表2所示,
表2
一个具体实施例中,最后剩下两个输入数据,二进制不足的补0,其余无数据部分补1,无数据部分相当于在编码结果后加2个“=”,Z文本与Base编码对应关系表,如表3所示,
表3
如果最后剩下一个输入数据,二进制不足的补0,其余无数据部分补1,无数据部分相当于在编码结果后加1个“=”;文本ZK与Base编码对应关系表,如表4所示,
表4
这样便可以保证岩心地质资料加密及还原的正确性。
基础加密的主要代码为,
CString Base64encode(BYTE*pSrc,int nSlen)
{
int i,j;
BYTE*pDst;
BYTE*pbuf=pSrc;
//3个字符用4个来表示
int nMod=nSlen%3;
int nDstSize=0;
if(nMod==0)
nDstSize=nSlen/3*4;
else
nDstSize=(nSlen/3+1)*4;
pDst=new BYTE[nDstSize];
memset(pDst,0,nDstSize);
int nFirst=nSlen-nSlen%3-2;
for(i=0,j=0;i<nFirst;i+=3,j+=4)
{
pDst[j]=(pbuf[i]&0xFC)>>2;
pDst[j+1]=((pbuf[i]&0x03)<<4)+((pbuf[i+1]&0xF0)>>4);
pDst[j+2]=((pbuf[i+1]&0x0F)<<2)+((pbuf[i+2]&0xC0)>>6);
pDst[j+3]=pbuf[i+2]&0x3F;
}
if(nSlen%3==1)
{
pDst[j]=(pbuf[i]&0xFC)>>2;
pDst[j+1]=((pbuf[i]&0x03)<<4);
pDst[j+2]=64;
pDst[j+3]=64;
j+=4;
}
else if(nSlen%3==2)
{
pDst[j]=(pbuf[i]&0xFC)>>2;
pDst[j+1]=((pbuf[i]&0x03)<<4)+((pbuf[i+1]&0xF0)>>4);
pDst[j+2]=((pbuf[i+1]&0x0F)<<2);
pDst[j+3]=64;
j+=4;
}
for(i=0;i<j;i++)
pDst[i]=base64[(int)pDst[i]];
pDst[j]=0;
return CString(pDst);
}
优选的,所述随机生成一个动态秘钥集合M2,具体包括,随机生成8位字符串,构成一个元素,256个元素形成了一个动态秘钥集合M2。
优选的,所述根据地质信息数据S获取随机码K,具体包括,获取地质信息数据S的大小Size,取所述Size的第一位、最后一位以及中间随机的一位,组成随机码K。
优选的,根据所述随机码K和动态秘钥集合M2确定核心秘钥MK2,具体包括,将所述随机码K和256取模得到核心秘钥MK2的索引n,根据所述核心秘钥MK2的索引n及动态秘钥集合M2,得到核心秘钥MK2。
具体实施时,动态秘钥集合M2为一个256个元素的集合,每个元素有8位,元素内容为随机生成的字符串,一旦生成后就固定了,因为解密的时候用到的M2必须相同,M2示例为M2={BJWSJCA1,B2BJWSJ,CBJWSJ1,DBJWSJ5,…,XZBJWSJ3};获取地质信息数据S的大小Size,Size=sizeof(S),Size为整数;
获取随机码k,取Size中的第一位、中间随机取一位和最后一位:K=Size[0]*100+Rand(Size)*10+Size[L],即K为一个三位整数,比如Size=2143545,者K的百位为2,个位为5,十位从14354中随机取一个值,假设取出的值为3,则K=2*100+3*10+5,最终K=235;
获取K的主要代码为
CString strSize;
int K;
strSize.Format("%d",Size);
int nSize=strSize.GetLength();//地质数据长度的位数
if(nSize==1)
{
K=Size*100+Size*10+Size;
}
else
{
int nRand=GetRand();
K=_ttoi(strSize[nSize-1])*100+_ttoi(strSize[nRand])*10+_ttoi(strSize[0]);
}
将K和256取模得出n,n=(K)Mod256,(int n=K%256),得出核心秘钥MK2=M2[n],n不足3位,则将其补足3位,如n=3,补齐后n=003;D2=n+D1^M2[n],“^”为异或符号;确定D2的主要代码为
CString strN;
strN.Format("%.3d",n);
CString strD2=strN+GetSecondEncode(D1,M2[n-1]);
优选的,所述随机生成一个混淆秘钥集合C,具体包括,随机生成两位字符作为一个元素,1024个元素构成了一个混淆秘钥集合C。
具体实施时,混淆秘钥集合一旦生成则为固定,示例为C={Q1,W3,1Q,&S,SC,@,#1,…,W5,3D}生成C后,对D2取出n,对D2-n的内容不同位置插入C中的元素,对于位置选择M,M[1]=Sizeof(D2-n)Mod256,M[2]=n Mod256,对于插入值C[n1],C[n2],n1=Sizeof(D2-n)Mod1024,n2=nMod1024;D2被M[1]和M[2]分为三部分,Ds1,Ds2,Ds3,则最终加密D3=Ds1+C[n1]+Ds2+C[n2]+Ds3;D3即为最终写入图像的地质加密信息,图像自身具有地质特性,如同基因一样一直伴随着图像。
优选的,将所述密文D2分割成三部分Ds1、Ds2、Ds3,根据所述Ds1、Ds2、Ds3和混淆秘钥集合C确定最终密文D3,具体包括:
通过D2-n的大小与256取模得到M[1],通过n与256取模得到M[2],通过将D2-n的大小与1024取模得到混淆秘钥集合C的第一索引n1,通过对n与1024取模得到混淆秘钥集合C的第二索引n2,通过所述M[1]和M[2]确定D3分割的位置,通过所述n1和n2确定插入分割位置的混淆秘钥集合C的值,确定最终密文D3。
确定D3的主要代码为,
int M[2]={0,0};
M[0]=(strD2.GetLength()-3)%256;
M[1]=n%256;
int nD2=strD2.GetLength();
int n1=(nD2-3)%1024;
int n2=n%1024;
CString strC1=C[n1];
CString strC2=C[n2];
CString strTemp=strD2.Right(nD2-3);
CString strDs1=strN+strTemp.Left(M[0]);
CString strDs2=strTemp.Mid(M[1],M[2]);
CString strDs3=strTemp.Mid(M[2],nD2-3);
CString D3=strDs1+strC1+strDs2+strC2+strDs3;
需要说明的是,岩心图像信息的逆向解析方法是其正向存储方法的逆过程(即解密过程);首先对数据映射及混淆逆向处理,再利用动态秘钥进行数据逆向解码,最后利用Base64解密,形成可识别、读取的地质数据。
确定混淆秘钥集合C,C为一个包含1024个元素的数组,每个元素有两位,和加密用的秘钥必须一致,示例性的C={Q1,W3,1Q,&S,SC,@,#1,…,W5,3D};然后对密文内容D3取出n,计算D2-n的内容混淆秘钥位置,位置M计算如下;M[1]=Sizeof(D2-n)Mod256,M[2]=nMod256,然后计算n1,n2得出插入值C[n1],C[n2]:n1=Sizeof(D2-n)Mod1024,n2=nMod1024,接着对密文内容D3进行解密,将D3根据M[1]和M[2]分割为三部分,即Ds1,Ds2,Ds3,则D2=Ds1-C[n1]+Ds2-C[n2]+Ds3;
确定D2的主要代码为,
CString strN=strD3.Left(3);
int n=_ttoi(strN);
int nD3=strDs3.GetLength();
int M[2]={0,0};
M[0]=(strD3.GetLength()–7)%256;
M[1]=n%256;
int n1=(nD3-7)%1024;
int n2=n%1024;
CString strTemp=strD3.Right(nD3-3);
CString strDs1=strN+strTemp.Left(M[0]);
CString strDs2=strTemp.Mid(M[0]+2,M[1]+2);
CString strDs3=strTemp.Mid(M[1]+4,nD3-3);
CString D2=strDs1+strDs2+strDs3;
现取加密时的动态秘钥集合M2,如下:M2={BJWSJCA1,B2BJWSJ,CBJWSJ1,DBJWSJ5,…,XZBJWSJ3};获取随机码K,为D2的前三位,得到n,确定核心秘钥MK2,得出核心秘钥MK2=M2[n],通过MK2得出中间解密内容为Base64编码D1,D1=(D2-n)&M2[n];
确定D1的主要代码为,
int nD2=D2.GetLength();
CString D1=D2.Right(3,nD2);
CString strN=strD2.Left(3);
int n=_ttoi(strN);
MK2=M2[n-1];
CString D1=GetSecondEncode(D2,MK2);
对上述解密的结果,利用Base64编码对D1进行信息解密,选择的秘钥(与加密秘钥相同),M1=“ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+=”,去掉Base64编码D1中的最后“=”字符,“=”个数为n1,n1等于1或者2,此时D1长度为n2,遍历D1中每个字符在M1中的索引N,则N为长度为n2的整型数组,将数组每个元素按照6位二进制排列,再将整体以8位一个单元进行分割,不足8位的则为后期添加的0,直接舍去,长度为3字节整数倍情况,Base64编码与文本的对应关系表,如表5所示,
表5
长度不为3字节整数倍,余数为1的情况,Base64编码与文本的对应关系表,如表6所示,
表6
长度不为3字节整数倍,余数为2的情况,Base64编码与文本的对应关系表,如表7所示,
表7
利用Base64编码对D1进行信息解密的主要代码为,
BYTE*Base64decode(BYTE*pInpt,int nSlen,int&dstlen)
{
int n,i,j,pad;
unsigned char*p;
BYTE*pDst;
BYTE*pSrc;
dstlen=0;
pad=0;
n=nSlen;
pSrc=new unsigned char[n];
for(i=0;i<n;i++)
pSrc[i]=pInpt[i];
while(n>0&&pSrc[n-1]=='=')
{
pSrc[n-1]=0;
pad++;
n--;
}
for(i=0;i<n;i++)
{
p=(unsigned char*)strchr((const char*)base64,(int)pSrc[i]);
if(!p)
break;
pSrc[i]=p-(unsigned char*)base64;
}
pDst=(unsigned char*)malloc(n*3/4+1);
memset(pDst,0,n*3/4+1);
for(i=0,j=0;i<n;i+=4,j+=3)
{
pDst[j]=(pSrc[i]<<2)+((pSrc[i+1]&0x30)>>4);
pDst[j+1]=((pSrc[i+1]&0x0F)<<4)+((pSrc[i+2]&0x3C)>>2);
pDst[j+2]=((pSrc[i+2]&0x03)<<6)+pSrc[i+3];
dstlen+=3;
}
dstlen-=pad;
delete[]pSrc;
return pDst;
}
最后将BYTE型地质数据转为文本型地质数据,输出解密后的地质数据S,所述地质数据S包括岩心直径、起始深度、终止深度、扫描心长、采集单位、托管单位、盆地、采样位置、井号、岩心图像类型、扫描人、扫描时间、方位角、文件大小、高度、宽度和其他地质信息。
实施例3
本发明实施例提供一种基于实物图像综合信息的基因式存储与解析系统,包括正向存储系统和逆向解析系统,所述正向存储系统具体包括基础加密模块、动态加密模块及混合加密模块,所述逆向解析系统具体包括混合解密模块、动态解密模块和基础解密模块;
所述基础加密模块,用于将文本型的实物图像综合信息数据S转化为BYTE型二进制实物图像综合信息数据,将所述BYTE型二进制实物图像综合信息数据进行基础加密,得到密文D1;
所述动态加密模块,用于随机生成一个动态秘钥集合M2,根据实物图像综合信息数据S获取随机码K,根据所述随机码K和动态秘钥集合M2确定核心秘钥MK2,根据所述核心秘钥MK2及密文D1,得到动态加密后的密文D2;
所述混合加密模块,用于随机生成一个混淆秘钥集合C,将所述密文D2分割成三部分Ds1、Ds2、Ds3,根据所述Ds1、Ds2、Ds3和混淆秘钥集合C确定最终密文D3,所述D3即为最终写入图像的加密信息;
所述混合解密模块,用于将最终密文D3分割成三部分Ds1、Ds2、Ds3,根据所述混淆秘钥集合C及Ds1、Ds2、Ds3,确定密文D2;
所述动态解密模块,用于根据所述核心秘钥MK2和密文D2,确定密文D1;
所述基础解密模块,用于根据所述密文D1得到BYTE型二进制实物图像综合信息数据,根据所述BYTE型二进制实物图像综合信息数据,得到文本型的实物图像综合信息数据S。
实施例4
本发明实施例提供还一种基于实物图像综合信息的基因式存储与解析系统,所述实物图像综合信息具体为岩心图像地质信息,
所述基于实物图像综合信息的基因式存储与解析系统包括正向存储系统和逆向解析系统,所述正向存储系统具体包括基础加密模块、动态加密模块及混合加密模块,所述逆向解析系统具体包括混合解密模块、动态解密模块和基础解密模块;
所述基础加密模块,用于将文本型的地质信息数据S转化为BYTE型二进制地质信息数据,将所述BYTE型二进制地质信息数据进行基础加密,得到密文D1;
所述动态加密模块,用于随机生成一个动态秘钥集合M2,根据地质信息数据S获取随机码K,根据所述随机码K和动态秘钥集合M2确定核心秘钥MK2,根据所述核心秘钥MK2及密文D1,得到动态加密后的密文D2;
所述混合加密模块,用于随机生成一个混淆秘钥集合C,将所述密文D2分割成三部分Ds1、Ds2、Ds3,根据所述Ds1、Ds2、Ds3和混淆秘钥集合C确定最终密文D3,所述D3即为最终写入图像的地质加密信息;
所述混合解密模块,用于将最终密文D3分割成三部分Ds1、Ds2、Ds3,根据所述混淆秘钥集合C及Ds1、Ds2、Ds3,确定密文D2;
所述动态解密模块,用于根据所述核心秘钥MK2和密文D2,确定密文D1;
所述基础解密模块,用于根据所述密文D1得到BYTE型二进制地质信息数据,根据所述BYTE型二进制地质信息数据,得到文本型的地质信息数据S。
本发明公开了一种基于实物图像综合信息的基因式存储与解析方法及系统,通过将文本型的实物图像综合信息数据S转化为BYTE型二进制实物图像综合信息数据,将所述BYTE型二进制实物图像综合信息数据进行基础加密,得到密文D1;随机生成一个动态秘钥集合M2,根据实物图像综合信息数据S获取随机码K,根据所述随机码K和动态秘钥集合M2确定核心秘钥MK2,根据所述核心秘钥MK2及密文D1,得到动态加密后的密文D2;随机生成一个混淆秘钥集合C,将所述密文D2分割成三部分Ds1、Ds2、Ds3,根据所述Ds1、Ds2、Ds3和混淆秘钥集合C确定最终密文D3,所述D3即为最终写入图像的加密信息;通过将最终密文D3分割成三部分Ds1、Ds2、Ds3,根据所述混淆秘钥集合C及Ds1、Ds2、Ds3,确定密文D2;根据所述核心秘钥MK2和密文D2,确定密文D1;根据所述密文D1得到BYTE型二进制实物图像综合信息数据,根据所述BYTE型二进制实物图像综合信息数据,得到文本型的实物图像综合信息数据S;实现了对实物图像综合信息的基因式存储和解析,使得实物图像具有对应的综合信息;
使得实物图像具有综合信息的同时,还满足了保密的要求,使得综合信息不需要附带数据库就能达到专业使用的目的,大大提高了实物图像的使用价值;
本发明中,通过Base64加密算法进行数据基础加工作,也可以利用其它基础加密算法,基于基础加密后的数据,再利用动态秘钥方法进行二次加密工作;利用数据映射及混淆的方法,添加和岩心地质信息不相关的字符,达到混淆的目的,提高数据安全性,最后将上面形成的最终密文数据写入实物图像,达到综合信息数据安全携带、利用的目的;在需要识别、读取的综合信息数据时,对数据映射及混淆逆向处理,再利用动态秘钥进行数据逆向解码,最后利用Base64解密,形成可识别、读取的综合信息数据。
通过本发明所述方案,在实物图像加密写入综合信息,在图像拷贝、处理过程中,综合信息数据不会丢失,再通过逆向解析方案进行综合信息数据读取,并基于解析的数据进行各种专业应用,具体包括根据岩心图像和实物档案图像专业使用需求;相关地质信息和综合属性信息如基因一样一直伴随着图像,提高岩心图像和实物图像档案的利用率和生命价值。
需要说明的是,实施例1-4中未重复描述之处可相互借鉴。
本领域技术人员可以理解,实现上述实施例方法的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读存储介质中。其中,所述计算机可读存储介质为磁盘、光盘、只读存储记忆体或随机存储记忆体等。
以上所述本发明的具体实施方式,并不构成对本发明保护范围的限定。任何根据本发明的技术构思所做出的各种其他相应的改变与变形,均应包含在本发明权利要求的保护范围内。
Claims (8)
1.一种基于实物图像综合信息的基因式存储与解析方法,其特征在于,包括正向存储方法和逆向解析方法,所述正向存储方法包括以下步骤,
将文本型的实物图像综合信息数据S转化为BYTE型二进制实物图像综合信息数据,将所述BYTE型二进制实物图像综合信息数据进行基础加密,得到密文D1;
随机生成一个动态秘钥集合M2,根据实物图像综合信息数据S获取随机码K,根据所述随机码K和动态秘钥集合M2确定核心秘钥MK2,根据所述核心秘钥MK2及密文D1,得到动态加密后的密文D2;
随机生成一个混淆秘钥集合C,将所述密文D2分割成三部分Ds1、Ds2、Ds3,根据所述Ds1、Ds2、Ds3和混淆秘钥集合C确定最终密文D3,所述D3即为最终写入图像的加密信息;
所述逆向解析方法包括以下步骤,
将最终密文D3分割成三部分Ds1、Ds2、Ds3,根据所述混淆秘钥集合C及Ds1、Ds2、Ds3,确定密文D2;
根据所述核心秘钥MK2和密文D2,确定密文D1;
根据所述密文D1得到BYTE型二进制实物图像综合信息数据,根据所述BYTE型二进制实物图像综合信息数据,得到文本型的实物图像综合信息数据S。
2.根据权利要求1所述的基于实物图像综合信息的基因式存储与解析方法,其特征在于,将所述BYTE型二进制实物图像综合信息数据进行基础加密,得到密文D1,具体包括,将BYTE型二进制实物图像综合信息数据以6位为一个单元,生成10进制索引,根据所述10进制索引,在基础加密的秘钥M1中选择对应的字符,生成密文D1。
3.根据权利要求1所述的基于实物图像综合信息的基因式存储与解析方法,其特征在于,所述随机生成一个动态秘钥集合M2,具体包括,随机生成8位字符串,构成一个元素,256个元素形成了一个动态秘钥集合M2。
4.根据权利要求2所述的基于实物图像综合信息的基因式存储与解析方法,其特征在于,所述根据实物图像综合信息数据S获取随机码K,具体包括,获取实物图像综合信息数据S的大小Size,取所述Size的第一位、最后一位以及中间随机的一位,组成随机码K。
5.根据权利要求3所述的基于实物图像综合信息的基因式存储与解析方法,其特征在于,根据所述随机码K和动态秘钥集合M2确定核心秘钥MK2,具体包括,将所述随机码K和256取模得到核心秘钥MK2的索引n,根据所述核心秘钥MK2的索引n及动态秘钥集合M2,得到核心秘钥MK2。
6.根据权利要求5所述的基于实物图像综合信息的基因式存储与解析方法,其特征在于,所述随机生成一个混淆秘钥集合C,具体包括,随机生成两位字符作为一个元素,1024个元素构成了一个混淆秘钥集合C。
7.根据权利要求6所述的基于实物图像综合信息的基因式存储与解析方法,其特征在于,将所述密文D2分割成三部分Ds1、Ds2、Ds3,根据所述Ds1、Ds2、Ds3和混淆秘钥集合C确定最终密文D3,具体包括:
通过D2-n的大小与256取模得到M[1],通过n与256取模得到M[2],通过将D2-n的大小与1024取模得到混淆秘钥集合C的第一索引n1,通过对n与1024取模得到混淆秘钥集合C的第二索引n2,通过所述M[1]和M[2]确定D3分割的位置,通过所述n1和n2确定插入分割位置的混淆秘钥集合C的值,确定最终密文D3。
8.一种基于实物图像综合信息的基因式存储与解析系统,其特征在于,包括正向存储系统和逆向解析系统,所述正向存储系统具体包括基础加密模块、动态加密模块及混合加密模块,所述逆向解析系统具体包括混合解密模块、动态解密模块和基础解密模块;
所述基础加密模块,用于将文本型的实物图像综合信息数据S转化为BYTE型二进制实物图像综合信息数据,将所述BYTE型二进制实物图像综合信息数据进行基础加密,得到密文D1;
所述动态加密模块,用于随机生成一个动态秘钥集合M2,根据实物图像综合信息数据S获取随机码K,根据所述随机码K和动态秘钥集合M2确定核心秘钥MK2,根据所述核心秘钥MK2及密文D1,得到动态加密后的密文D2;
所述混合加密模块,用于随机生成一个混淆秘钥集合C,将所述密文D2分割成三部分Ds1、Ds2、Ds3,根据所述Ds1、Ds2、Ds3和混淆秘钥集合C确定最终密文D3,所述D3即为最终写入图像的加密信息;
所述混合解密模块,用于将最终密文D3分割成三部分Ds1、Ds2、Ds3,根据所述混淆秘钥集合C及Ds1、Ds2、Ds3,确定密文D2;
所述动态解密模块,用于根据所述核心秘钥MK2和密文D2,确定密文D1;
所述基础解密模块,用于根据所述密文D1得到BYTE型二进制实物图像综合信息数据,根据所述BYTE型二进制实物图像综合信息数据,得到文本型的实物图像综合信息数据S。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911132099.XA CN111046400B (zh) | 2019-11-19 | 2019-11-19 | 基于实物图像综合信息的基因式存储与解析方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911132099.XA CN111046400B (zh) | 2019-11-19 | 2019-11-19 | 基于实物图像综合信息的基因式存储与解析方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111046400A true CN111046400A (zh) | 2020-04-21 |
CN111046400B CN111046400B (zh) | 2022-03-11 |
Family
ID=70232174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911132099.XA Active CN111046400B (zh) | 2019-11-19 | 2019-11-19 | 基于实物图像综合信息的基因式存储与解析方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111046400B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105243309A (zh) * | 2015-10-08 | 2016-01-13 | 宁波大学 | 基于智能移动终端图像的工业图纸加密系统及其加密方法 |
CN106415588A (zh) * | 2015-04-30 | 2017-02-15 | 深圳市银信网银科技有限公司 | 数据记录方法、装置和系统、计算机存储介质 |
US20170170952A1 (en) * | 2015-12-14 | 2017-06-15 | International Business Machines Corporation | Format-preserving encryption of base64 encoded data |
-
2019
- 2019-11-19 CN CN201911132099.XA patent/CN111046400B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106415588A (zh) * | 2015-04-30 | 2017-02-15 | 深圳市银信网银科技有限公司 | 数据记录方法、装置和系统、计算机存储介质 |
CN105243309A (zh) * | 2015-10-08 | 2016-01-13 | 宁波大学 | 基于智能移动终端图像的工业图纸加密系统及其加密方法 |
US20170170952A1 (en) * | 2015-12-14 | 2017-06-15 | International Business Machines Corporation | Format-preserving encryption of base64 encoded data |
Also Published As
Publication number | Publication date |
---|---|
CN111046400B (zh) | 2022-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10237074B2 (en) | Redactable document signatures | |
EP2692084B1 (en) | Secret sharing apparatus, sharing apparatus and secret sharing method | |
Yadav et al. | A novel approach of bulk data hiding using text steganography | |
US11902417B2 (en) | Computer-implemented method of performing format-preserving encryption of a data object of variable size | |
Al-Nofaie et al. | Merging two steganography techniques adjusted to improve arabic text data security | |
CN110913092B (zh) | 一种加密图像可逆信息隐藏方法 | |
Alaseri et al. | Merging secret sharing within Arabic text steganography for practical retrieval | |
Kumar et al. | A space based reversible high capacity text steganography scheme using font type and style | |
Tyagi et al. | A High Capacity PDF Text Steganography Technique Based on Hashing Using Quadratic Probing. | |
CN107315539B (zh) | 一种数据存储方法以及数据提取方法 | |
Qiu et al. | Rich-information reversible watermarking scheme of vector maps | |
KR101703828B1 (ko) | 암호화된 데이터에 대한 색인 태그 생성 방법, 색인 태그를 이용한 암호화된 데이터 검색 방법 및 이를 위한 데이터베이스 장치 | |
CN111046400B (zh) | 基于实物图像综合信息的基因式存储与解析方法及系统 | |
CN108650268B (zh) | 一种实现多级访问的可搜索加密方法及系统 | |
CN103020544A (zh) | 一种shp线面图层数据层次加解密方法 | |
US11669601B2 (en) | Digital watermarking for textual data | |
CN114374774A (zh) | 基于最近邻像素预测的可分离加密域可逆信息隐藏方法 | |
CN109448821B (zh) | 一种数字正射影像图的网络传输方法 | |
Khairullah | A novel text steganography system in financial statements | |
Abohamra et al. | Hide Text within Image Watermarks by Employing the Least Significant Bit (LSB) Technique for Enhanced Data Security | |
Rajvanshi et al. | Image Steganography | |
Zhang et al. | A text hiding method using multiple-base notational system with high embedding capacity | |
Yadav | Information Security Using Blend of Steganography and Cryptography | |
Imran et al. | Text Steganography Utilizing XML, HTML and XHTML Markup Languages | |
Chang et al. | A spatial filter for similarity retrieval |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |