CN113810189B - 一种密钥图片的生成方法及装置 - Google Patents
一种密钥图片的生成方法及装置 Download PDFInfo
- Publication number
- CN113810189B CN113810189B CN202111254202.5A CN202111254202A CN113810189B CN 113810189 B CN113810189 B CN 113810189B CN 202111254202 A CN202111254202 A CN 202111254202A CN 113810189 B CN113810189 B CN 113810189B
- Authority
- CN
- China
- Prior art keywords
- picture
- key
- length
- preset
- encryption key
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/001—Texturing; Colouring; Generation of texture or colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/40—Filling a planar surface by adding surface attributes, e.g. colour or texture
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0618—Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
- H04L9/0631—Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本申请实施例提供一种密钥图片的生成方法及装置,涉及数据加密领域,该密钥图片的生成方法包括:根据加密密钥的字符串长度值以及预设图片尺寸计算公式进行计算,得到图片长度、图片宽度;根据图片长度、图片宽度所确定的尺寸,得到常规图片;从常规图片中每一像素所对应的三原色中,分别确定出目标三原色;从目标三原色所对应的二进制值中,确定出目标值;将加密密钥与字符串长度值分别对应的二进制值,依次替换目标值,得到密钥图片。可见,实施这种实施方式,能够创造一种新的加密密钥存储方式,从而保障信息的安全性。
Description
技术领域
本申请涉及数据加密领域,具体而言,涉及一种密钥图片的生成方法及装置。
背景技术
客户端与服务端之间为了保障信息安全,一般采用加密的方式来提升信息的安全性。然而,采用该种加密方式会不可避免地产生加密密钥。就这使得加密密钥不得不被客户端谨慎存储,以免泄漏。
但是,在实践中发现,目前的加密密钥存储方式通常为代码明文存储、应用配置文件存储这类存储方式。而该些存储方式现在已经可以通过代码查询手段被他人获取得到。如此可见,上述的加密密钥存储方式使得信息的安全性大幅降低,从而无法实现保障信息安全的技术效果。
发明内容
本申请实施例的目的在于提供一种密钥图片的生成方法及装置,能够创造一种新的加密密钥存储方式,从而保障信息的安全性。
本申请实施例第一方面提供了一种密钥图片的生成方法,包括:
根据加密密钥的字符串长度值以及预设图片尺寸计算公式进行计算,得到图片长度、图片宽度;
根据所述图片长度、所述图片宽度所确定的尺寸,得到常规图片;
从所述常规图片中每一像素所对应的三原色中,分别确定出目标三原色;
从所述目标三原色所对应的二进制值中,确定出目标值;
将所述加密密钥与所述字符串长度值分别对应的二进制值,依次替换所述目标值,得到密钥图片。
在上述实现过程中,该方法可以根据实际的加密需求对待加密文件进行加密得到加密密钥,然后再根据该加密密钥匹配相对应的常规图片,最后再将加密密钥的密钥长度和加密密钥本身写入该常规图片中,从而实现加密密钥的图片存储过程,进而得到了一个包括密钥信息的密钥图片。可见,实施这种实施方式,能够将加密密钥隐藏在图片当中,从而能够避免密钥被直接获取;另一方面,实施这种实施方式,还能够以图片为密钥载体,降低密钥被识别的可能性,从而有效地保障信息的安全性。
进一步地,所述根据加密密钥的字符串长度值以及预设图片尺寸计算公式进行计算,得到图片长度、图片宽度的步骤包括:
根据加密密钥的字符串长度值、预设的字符存放位数以及预设的长度值存放位数进行计算,得到图片长度、图片宽度;所述字符存放位数用于表述存放单个字符所需的像素个数;所述长度值存放位数用于表述存放所述字符串长度值所需的像素个数。
进一步地,所述根据加密密钥的字符串长度值以及预设图片尺寸计算公式进行计算,得到图片长度、图片宽度的步骤包括:
根据加密密钥的字符串长度值、预设的字符存放位数以及预设的长度值存放位数进行计算,得到初始长度以及初始宽度;
将所述初始长度与预设的第一像素个数之和作为图片长度;将所述初始宽度与预设的第二像素个数之和作为图片宽度。
进一步地,所述预设图片尺寸计算公式为:
其中,px为像素单位;
所述8(px)为所述字符存放位数;
所述32(px)为所述长度值存放位数;
所述a(px)为所述第一像素个数;
所述b(px)为所述第二像素个数。
进一步地,所述根据所述图片长度、所述图片宽度所确定的尺寸,得到常规图片的步骤,包括:
根据预设的色彩基调和由所述图片长度、所述图片宽度所确定的尺寸,得到常规图片。
进一步地,所述从所述目标三原色所对应的二进制值中,确定出目标值的步骤包括:
将所述目标三原色所对应的二进制值中,位数最低的一位作为目标值。
进一步地,所述将所述加密密钥与所述字符串长度值分别对应的二进制值,依次替换所述目标值,得到密钥图片的步骤包括:
从所述加密密钥与所述字符串长度分别对应的二进制值中,确定出当前值;
从所述常规图片中按照从左至右、由上至下的顺序确定出当前像素;
使用所述当前值替换所述当前像素中的所述目标值,得到密钥图片。
进一步地,所述图片长度等于所述图片宽度。
本申请实施例第二方面提供了一种密钥图片的生成装置,所述密钥图片的生成装置包括:
计算单元,用于根据加密密钥的字符串长度值以及预设图片尺寸计算公式进行计算,得到图片长度、图片宽度;
获取单元,用于根据所述图片长度、所述图片宽度所确定的尺寸,得到常规图片;
确定单元,用于从所述常规图片中每一像素所对应的三原色中,分别确定出目标三原色;
所述确定单元,还用于从所述目标三原色所对应的二进制值中,确定出目标值;
替换单元,用于将所述加密密钥与所述字符串长度值分别对应的二进制值,依次替换所述目标值,得到密钥图片。
在上述实现过程中,该装置能够将加密密钥隐藏在图片当中,从而能够避免密钥被直接获取;另一方面,该装置还能够将图片作为密钥载体,从而降低密钥被识别的可能性,进而有效地保障信息的安全性。
本申请实施例第三方面提供了一种电子设备,包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行本申请实施例第一方面中任一项所述的密钥图片的生成方法。
本申请实施例第四方面提供了一种计算机可读存储介质,其存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行本申请实施例第一方面中任一项所述的密钥图片的生成方法。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种密钥图片的生成方法的流程示意图;
图2为本申请实施例提供的另一种密钥图片的生成方法的流程示意图;
图3为本申请实施例提供的一种密钥图片的生成装置的结构示意图;
图4为本申请实施例提供的另一种密钥图片的生成装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
实施例1
请参看图1,图1为本申请实施例提供了一种密钥图片的生成方法的流程示意图。其中,该密钥图片的生成方法包括:
S101、根据加密密钥的字符串长度值以及预设图片尺寸计算公式进行计算,得到图片长度、图片宽度。
作为一种可选的实施方式,根据加密密钥的字符串长度值以及预设图片尺寸计算公式进行计算,得到图片长度、图片宽度的步骤之前,该方法还包括:
生成加密密钥。
本实施例中,该方法可以优先检测项目需求,当检测到项目需求中包括安全性需求时,对其需求点进行加密,得到加密密钥。
本实施例中,该方法可以根据预设的加密算法对待加密数据进行加密,得到加密密钥;加密算法至少包括DES、AES、3DES、RSA、DSA以及ECC中的一种或多种。
本实施例中,图片长度可以等于图片宽度。可见,该种设置方式便于计算图片长度和/或图片宽度。
在本实施例中,图片长度、图片宽度都可以成为图片尺寸。由此可见,图片尺寸计算公式就是计算图片长度或图片宽度的计算公式。
S102、根据图片长度、图片宽度所确定的尺寸,得到常规图片。
本实施例中,该方法采用JAVA语言图像API生成与图片长度和/或图片宽度相匹配的常规图片。
在本实施例中,常规图片用于存放加密密钥。
本实施例中,常规图片可以是PNG格式的图片、JPG格式的图片或者JPEG格式的图片。该种常规图片通常还应具有压缩无损的特性。
S103、从常规图片中每一像素所对应的三原色中,分别确定出目标三原色。
本实施例中,三原色为RGB三原色。
在本实施例中,目标三原色为RGB三原色中的一个颜色,可以是红色,可以是绿色,可以是蓝色。
S104、从目标三原色所对应的二进制值中,确定出目标值。
本实施例中,因为每个像素的RGB三原色都对应具有一个0~255的取值,该取值对应于8位二进制,目标值为则为这个8位二进制中的一位数。
在本实施例中,该目标值在优选为上述8位二进制中的最低有效位。
S105、将加密密钥与字符串长度值分别对应的二进制值,依次替换目标值,得到密钥图片。
实施这种实施方式,能够生成一张密钥图片,从而使得该密钥图片存储加密密钥。在将加密密钥存储至常规图片中时,该方法可以对常规图片的像素最低有效位进行修改,从而将加密密钥隐藏存储到密钥图片里。该中加密密钥的隐藏过程也不会破坏常规图片。因此,当密钥图片放置到客户端或者后台任何地方时,轻易不会被人猜测获取。当想要读取该加密密钥时,也只需要按照与加密顺序相同的读写顺序读取加密密钥。其中,加密密钥的写入顺序自主可控,密钥图片能够防止被人猜测获取,因此,该方法能够提升加密密钥的应用安全性。
本实施例中,密钥图片放置到客户端或者后台任何地方是指以手动方式将图片放到移动端开发工程可以存储资源目录下,如:assets,res等资源目录下。存储目录唯一的限制是在程序运行的过程中,密钥图片能被载入到程序里并且能被读取到即可。
本实施例中,根据实际情况,通常是服务端进行数据加密,客户端接收加密后的数据并根据加密密钥对加密数据进行解密操作。可见,本方法的执行主体为上述的服务端。
在本实施例中,客户端将生成的密钥图片放置在客户端,并在客户端启动时按照与密钥图片的生成方式从反向从密钥图片中读取加密密钥。
本申请实施例中,该方法的执行主体可以为计算机、服务器等计算装置,对此本实施例中不作任何限定。
在本申请实施例中,该方法的执行主体还可以为智能手机、平板电脑等智能设备,对此本实施例中不作任何限定。
可见,实施本实施例所描述的密钥图片的生成方法,能够根据实际的加密需求对待加密文件进行加密得到加密密钥,然后再根据该加密密钥匹配相对应的常规图片,最后再将加密密钥的密钥长度和加密密钥本身写入该常规图片中,从而实现加密密钥的图片存储过程,进而得到了一个包括密钥信息的密钥图片。可见,实施这种实施方式,能够将加密密钥隐藏在图片当中,从而能够避免密钥被直接获取;另一方面,实施这种实施方式,还能够以图片为密钥载体,降低密钥被识别的可能性,从而有效地保障信息的安全性。
实施例2
请参看图2,图2为本申请实施例提供的一种密钥图片的生成方法的流程示意图。如图2所示,其中,该密钥图片的生成方法包括:
S201、根据预设的加密算法对待加密数据进行加密,得到加密密钥。
本实施例中,待加密数据为需要进行加密的数据。
本实施例中,加密密钥为服务端根据加密算法生成的。通常情况下,服务端都有生成随机密钥的API。其中,加密密钥的展现形式一般为一串文本,作用类似密码本。
如采用DES算法,则采用DES的相关的API会生成对称密钥,密钥随机生成
本实施例中,加密算法至少包括DES、AES、3DES、RSA、DSA以及ECC中的一种或多种。
在本实施例中,加密算法可以为对称加密算法,也可以为非对称加密算法,对此本实施例中不作任何限定。
S202、根据加密密钥的字符串长度值、预设的字符存放位数以及预设的长度值存放位数进行计算,得到图片长度、图片宽度;字符存放位数用于表述存放单个字符所需的像素个数;长度值存放位数用于表述存放子字符串长度值所需的像素个数。
S203、根据字符串长度值、预设的字符存放位数以及预设的长度值存放位数进行计算,得到初始长度以及初始宽度。
本实施例中,初始长度以及初始宽度可以构成密钥存放区域。该密钥存放区域是存储密钥所需要的最小区域。
举例来说,存储hello这五个字符,需要5*8=40个像素,加上用于存储字符串密钥长度值“5”的32个像素,得到40+32=72个像素,为初始长度,/>也为初始宽度。这里,初始长度等于初始宽度。
S204、将初始长度与预设的第一像素个数之和作为图片长度;将初始宽度与预设的第二像素个数之和作为图片宽度。
本实施例中,上述预设图片尺寸计算公式为:
其中,px为像素单位;
8(px)为字符存放位数;
32(px)为长度值存放位数;
a(px)为第一像素个数;
b(px)为第二像素个数。
本实施例中,上述步骤S202~S204可以由该公式进行相应计算。
在本实施例中,第一像素个数和第二像素个数可以相同,即a=b。
在本实施例中,当a和/或b不为零时,说明图片长度和/或图片宽度不为最小长度和/或最小宽度。可见,该种计算结果会具有使得最终获取到的图片具有额外的扩充区域,从而保障加密密钥和字符串长度值可以被有效的存储下来。同时,该种扩充区域的生成,还可以避免对全部像素进行调整,从而保障加密图片中具有调整后的像素和未调整的像素,进而提高加密图片的可信度。
本实施例中,第一像素个数和/或第二像素个数为扩容像素值。对于图片而言,该扩容像素值存在于图片的横向与竖向两个方向之中。举例来说,当第一像素个数和第二像素个数皆为10个像素时,即整体至少有100个像素作为扩容区。这样,能够有效防止图片像素空间不够所导致的写入数据时产生的溢出出问题,从而避免加密密钥写入失败的情况出现。
在本实施例中,假设常规图片未加第一像素个数和第二像素个数时的长为x个像素,宽为y个像素,那么扩容区的面积应为[(10*x)+(10*y)+100]个像素。
举例来说,当加密密钥为“hello”时,该字符串长度值为5。此时进行计算,能够得到图片尺寸为 (该计算方式采用向下取整的计算逻辑)。由此可见,该过程中可以计算出图片长度和图片宽度皆为18px。相应的,常规图片应当为18px*18px的图片,格式可以为PNG格式。
本实施例中,长度值存放位数采用32个像素的原因如下:
a.方便在读取环节读取32个像素可以知道后续需要读取多少个像素,即后续读取的长度;
b.采用32个像素,是因为长度在java为int类型,占用4个字节(byte),按照每个字节占用8个比特(bit)换算,则需要32个bit,鉴于本次发明修改其中一个通道,则修改一个有效位等同于修改一个像素,如“hello”的长度5。
c.选择64、128没有必要,他会导致图片空间的浪费,图片会变大,在移动端图片越大载入设备运行期所需占用内存就越大,故32即可
S205、根据预设的色彩基调和由图片长度、图片宽度所确定的尺寸,得到常规图片。
本实施例中,色彩基调包括灰色、红色、蓝色、绿色等等。
在本实施例中,该方法使用灰色、褐色、黑色等颜色时,因为图片的颜色较暗,所以查看者较难看清。因此,在查看者看不清的时候,可以认为该密钥图片的保密性更高。
另一方面,该方法使用红色、绿色、蓝色时,因为每个像素都是有RGB三色组成,选取与色彩基调对应的特定颜色通道时,像素最低有效位的变化将变得更加细微,从而有效地提高了密钥图片的保密性。
本实施例中,常规图片的格式可以为PNG格式、JPG格式等等。
本实施例中,采用Java图像API生成与色彩基调、图片长度、图片宽度相对应大小的图片。
举例来说,该方法可以生成一张18*18的灰色基调的PNG图片。
S206、从常规图片中每一像素所对应的三原色中,分别确定出目标三原色。
S207、将目标三原色所对应的二进制值中,位数最低的一位作为目标值。
S208、将加密密钥与字符串长度值分别对应的二进制值,依次替换目标值,得到密钥图片。
S209、从加密密钥与字符串长度分别对应的二进制值中,确定出当前值。
S210、从常规图片中按照从左至右、由上至下的顺序确定出当前像素。
本实施例中,图片通常由多个像素组成,其中像素排布通常是规律的,即多少行、多少列这类排布。
在本实施例中,密钥写入顺序可以为在上述多个像素中,先从左到右,再从上到下这种顺序。其中,本实施例对于该写入顺序不作任何限定。
本实施例中,该方法以常规图片的横轴为宽度方向,纵轴为高度方向。“横轴方向、左至右、上至下的顺序”指先横轴,再纵轴的方式,每当横轴写入满一行(边界为图片宽度像素大小),再从第二行开始继续写入,每写满完一行自动从下一行开始继续写入剩余数据,直到全部数据写完为止。
S211、使用当前值替换当前像素中的目标值,得到密钥图片。
本实施例中,每个像素的颜色都是由三原色(红绿蓝)构成,故计算机中每一个像素颜色都有三个颜色通道,每一个通道占8位,取值为0x00~0xFF区间范围(即每一个通道可以代表0~256颜色),三个通道则可以代表256*256*256种颜色。
举例来说,酒红色“#a64d79”的RGB分别为(166,77,121),在计算机中实际表现形式为:
RED:10100110(从左至右,位数由高到低,此处最低有效位为0);
GREEN:01001101(从左至右,位数由高到低,此处最低有效位为1);
BLUE:01111001(从左至右,位数由高到低,此处最低有效位为1);
即:10100110,01001101,01111001有三个最低有效位,分别是0,1,1,本方法采用只修改其中一个通道(蓝色通道)的最低有效位的方式。
在本实施例中,该方法可以对每个像素中的蓝色通道的最低有效位进行加密密钥的写入,这样的话,8个像素的蓝色通道的最低有效位就可以组成一个字符。
本实施例中,因为最低有效位的修改人类肉眼无法看出来,故可以达到隐藏数据的目的。比如红色图片,我修改其中一个像素点的最低有效位,但是整体给人的感觉依旧是红色,不易察觉。至于其它有效位不选取的原因如上述内容类似,因为相比较而言,修改稳定的高位会更容易被察觉,而修改低位不容易被察觉。
举例来说,加密密钥为“hello”时,实际写入图片的数据二进制表示为:加密密钥的字符串长度值为:
[0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];
加密密钥为:
[0,1,1,0,1,0,0,0,0,1,1,0,0,1,0,1,0,1,1,0,1,1,0,0,0,1,1,0,1,1,0,0,0,1,1,0,1,1,1,1]。
具体举例来说,当写入顺序为先横轴方向,自左向右从第一个像素开始写入,前32个像素写入加密密钥的密钥长度,然后从32个像素后开始写入加密密钥数据,直至数据写入完为止,其中每一行每写满一行自动从下一行再次开始自左向右的写入。如:将“hello”作为加密密钥写入一张18*18的图片(该图片的尺寸是在上述举例内容中计算出来的)里,则像素边界为:
宽度w=[0-18]px高度h=[0-18]px;
其字符串长度值5转换成二进制数据为:
0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0;
则图片第1行:
第1行:px(0,0)=w.(0),h(0)至px(17,0)=w.(17),h(0)期间插入的数据为:
0,0,0,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0;
第2行:px(0,1)=w.(0),h(1)至px(17,1)=w.(17),h(1)期间插入的数据为:
0,0,0,0,0,0,0,0,0,0,0,0,0,0,x,x,x,x(此处x代表后续的位置);
其文本数据转换成二进制数据为:
0,1,1,0,1,0,0,0,0,1,1,0,0,1,0,1,0,1,1,0,1,1,0,0,0,1,1,0,1,1,0,0,0,1,1,0,1,1,1,1;
文本数据写入的数据可以从px(14,1)开始,也就是上述x位置开始,继续写入后续数据。
可见,实施本实施例所描述的密钥图片的生成方法,能够提供一种将加密密钥存储至密钥图片的方式,从而提升其应用安全性。具体的,该方法将加密密钥写入常规图像的最低有效位,以图像横轴方向,先由左至右,再由上至下为写入顺序为顺序写入。其中,将前32个像素作为密钥长度的存储区域,后续像素为加密密钥存储区域,从而将全部密钥信息存储到图片当中。在读取的时候,只需要选择与写入顺序一致的读取顺序,即可先读取密钥长度,再根据密钥长度读取加密密钥,进而完成加密密钥的提取操作。
实施例3
请参看图3,图3为本申请实施例提供的一种密钥图片的生成装置的结构示意图。如图3所示,该密钥图片的生成装置包括:
计算单元310,用于根据加密密钥的字符串长度值以及预设图片尺寸计算公式进行计算,得到图片长度、图片宽度;
获取单元320,用于根据图片长度、图片宽度所确定的尺寸,得到常规图片;
确定单元330,用于从常规图片中每一像素所对应的三原色中,分别确定出目标三原色;
确定单元330,还用于从目标三原色所对应的二进制值中,确定出目标值;
替换单元340,用于将加密密钥与字符串长度值分别对应的二进制值,依次替换目标值,得到密钥图片。
本申请实施例中,对于密钥图片的生成装置的解释说明可以参照实施例1或实施例2中的描述,对此本实施例中不再多加赘述。
可见,实施本实施例所描述的密钥图片的生成装置,能够将加密密钥隐藏在图片当中,从而能够避免密钥被直接获取;另一方面,该装置还能够将图片作为密钥载体,从而降低密钥被识别的可能性,进而有效地保障信息的安全性。
实施例4
请一并参阅图4,图4是本申请实施例提供的一种密钥图片的生成装置的结构示意图。其中,图4所示的密钥图片的生成装置是由图3所示的密钥图片的生成装置进行优化得到的。如图4所示,计算单元310具体用于根据加密密钥的字符串长度值、预设的字符存放位数以及预设的长度值存放位数进行计算,得到图片长度、图片宽度;字符存放位数用于表述存放单个字符所需的像素个数;长度值存放位数用于表述存放子字符串长度值所需的像素个数。
作为一种可选的实施方式,计算单元310具体还用于根据加密密钥的字符串长度值、预设的字符存放位数以及预设的长度值存放位数进行计算,得到初始长度以及初始宽度;将初始长度与预设的第一像素个数之和作为图片长度;将初始宽度与预设的第二像素个数之和作为图片宽度。
作为一种可选的实施方式,预设图片尺寸计算公式为:
其中,px为像素单位;
8(px)为字符存放位数;
32(px)为长度值存放位数;
a(px)为第一像素个数;
b(px)为第二像素个数。
作为一种可选的实施方式,获取单元320具体用于根据预设的色彩基调和由图片长度、图片宽度所确定的尺寸,得到常规图片。
作为一种可选的实施方式,确定单元330具体用于将目标三原色所对应的二进制值中,位数最低的一位作为目标值。
作为一种可选的的实施方式,替换单元340包括:
确定子单元341,用于从加密密钥与字符串长度分别对应的二进制值中,确定出当前值;
确定子单元341,还用于从常规图片中按照从左至右、由上至下的顺序确定出当前像素;
替换子单元342,用于使用当前值替换当前像素中的目标值,得到密钥图片。
本实施例中,加密密钥可以根据预设的加密算法对待加密数据进行加密得到;加密算法至少包括DES、AES、3DES、RSA、DSA以及ECC中的一种或多种。
作为一种可选的实施方式,图片长度等于图片宽度。
本申请实施例中,对于密钥图片的生成装置的解释说明可以参照实施例1或实施例2中的描述,对此本实施例中不再多加赘述。
可见,实施本实施例所描述的密钥图片的生成装置,能够将加密密钥隐藏在图片当中,从而能够避免密钥被直接获取;另一方面,该装置还能够将图片作为密钥载体,从而降低密钥被识别的可能性,进而有效地保障信息的安全性。
本申请实施例提供了一种电子设备,包括存储器以及处理器,存储器用于存储计算机程序,处理器运行计算机程序以使电子设备执行本申请实施例1或实施例2中任一项密钥图片的生成方法。
本申请实施例提供了一种计算机可读存储介质,其存储有计算机程序指令,计算机程序指令被一处理器读取并运行时,执行本申请实施例1或实施例2中任一项密钥图片的生成方法。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (7)
1.一种密钥图片的生成方法,其特征在于,包括:
根据加密密钥的字符串长度值以及预设图片尺寸计算公式进行计算,得到图片长度、图片宽度;
根据所述图片长度、所述图片宽度所确定的尺寸,得到常规图片;
从所述常规图片中每一像素所对应的三原色中,分别确定出目标三原色;
从所述目标三原色所对应的二进制值中,确定出目标值;
将所述加密密钥与所述字符串长度值分别对应的二进制值,依次替换所述目标值,得到密钥图片;
其中,所述根据加密密钥的字符串的长度值以及预设图片尺寸计算公式进行计算,得到图片长度、图片宽度的步骤包括:
根据加密密钥的字符串长度值、预设的字符存放位数以及预设的长度值存放位数进行计算,得到图片长度、图片宽度;所述字符存放位数用于表述存放单个字符所需的像素个数;所述长度值存放位数用于表述存放所述字符串长度值所需的像素个数;
其中,所述根据加密密钥的字符串长度值以及预设图片尺寸计算公式进行计算,得到图片长度、图片宽度的步骤包括:
根据加密密钥的字符串长度值、预设的字符存放位数以及预设的长度值存放位数进行计算,得到初始长度以及初始宽度;
将所述初始长度与预设的第一像素个数之和作为图片长度;将所述初始宽度与预设的第二像素个数之和作为图片宽度;
其中,所述预设图片尺寸计算公式为:
其中,px为像素单位;
所述8(px)为所述字符存放位数;
所述32(px)为所述长度值存放位数;
所述a(px)为所述第一像素个数;
所述b(px)为所述第二像素个数。
2.根据权利要求1所述的密钥图片的生成方法,其特征在于,所述根据所述图片长度、所述图片宽度所确定的尺寸,得到常规图片的步骤,包括:
根据预设的色彩基调和由所述图片长度、所述图片宽度所确定的尺寸,得到常规图片。
3.根据权利要求1所述的密钥图片的生成方法,其特征在于,所述从所述目标三原色所对应的二进制值中,确定出目标值的步骤包括:
将所述目标三原色所对应的二进制值中,位数最低的一位作为目标值。
4.根据权利要求3所述的密钥图片的生成方法,其特征在于,所述将所述加密密钥与所述字符串长度值分别对应的二进制值,依次替换所述目标值,得到密钥图片的步骤包括:
从所述加密密钥与所述字符串长度分别对应的二进制值中,确定出当前值;
从所述常规图片中按照从左至右、由上至下的顺序确定出当前像素;
使用所述当前值替换所述当前像素中的所述目标值,得到密钥图片。
5.一种密钥图片的生成装置,其特征在于,所述密钥图片的生成装置包括:
计算单元,用于根据加密密钥的字符串长度值以及预设图片尺寸计算公式进行计算,得到图片长度、图片宽度;
获取单元,用于根据所述图片长度、所述图片宽度所确定的尺寸,得到常规图片;
确定单元,用于从所述常规图片中每一像素所对应的三原色中,分别确定出目标三原色;
所述确定单元,还用于从所述目标三原色所对应的二进制值中,确定出目标值;
替换单元,用于将所述加密密钥与所述字符串长度值分别对应的二进制值,依次替换所述目标值,得到密钥图片;
其中,所述计算单元,具体用于根据加密密钥的字符串长度值、预设的字符存放位数以及预设的长度值存放位数进行计算,得到图片长度、图片宽度;字符存放位数用于表述存放单个字符所需的像素个数;长度值存放位数用于表述存放子字符串长度值所需的像素个数;
其中,所述计算单元,具体还用于根据加密密钥的字符串长度值、预设的字符存放位数以及预设的长度值存放位数进行计算,得到初始长度以及初始宽度;将初始长度与预设的第一像素个数之和作为图片长度;将初始宽度与预设的第二像素个数之和作为图片宽度;
其中,所述预设图片尺寸计算公式为:
其中,px为像素单位;
8(px)为字符存放位数;
32(px)为长度值存放位数;
a(px)为第一像素个数;
b(px)为第二像素个数。
6.一种电子设备,其特征在于,所述电子设备包括存储器以及处理器,所述存储器用于存储计算机程序,所述处理器运行所述计算机程序以使所述电子设备执行权利要求1至4中任一项所述的密钥图片的生成方法。
7.一种可读存储介质,其特征在于,所述可读存储介质中存储有计算机程序指令,所述计算机程序指令被一处理器读取并运行时,执行权利要求1至4任一项所述的密钥图片的生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111254202.5A CN113810189B (zh) | 2021-10-27 | 2021-10-27 | 一种密钥图片的生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111254202.5A CN113810189B (zh) | 2021-10-27 | 2021-10-27 | 一种密钥图片的生成方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113810189A CN113810189A (zh) | 2021-12-17 |
CN113810189B true CN113810189B (zh) | 2024-01-09 |
Family
ID=78937876
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111254202.5A Active CN113810189B (zh) | 2021-10-27 | 2021-10-27 | 一种密钥图片的生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113810189B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114448687A (zh) * | 2022-01-18 | 2022-05-06 | 徐工汉云技术股份有限公司 | 一种基于rsa的图像文件加密方法及系统 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013258488A (ja) * | 2012-06-11 | 2013-12-26 | Osaka Gas Co Ltd | 暗号鍵生成システム及び認証システム |
WO2017124940A1 (zh) * | 2016-01-21 | 2017-07-27 | 腾讯科技(深圳)有限公司 | 识别规格图片中是否包含水印的方法及装置 |
CN107481181A (zh) * | 2017-07-27 | 2017-12-15 | 银江股份有限公司 | 一种用于保护个人隐私的图片隐藏方法、还原方法及图片隐藏系统 |
CN110321673A (zh) * | 2018-03-28 | 2019-10-11 | 北京京东尚科信息技术有限公司 | 信息加密方法和装置、信息解密方法和装置、安全系统 |
CN110516462A (zh) * | 2019-08-30 | 2019-11-29 | 京东数字科技控股有限公司 | 用于加密数据的方法和装置 |
CN111079189A (zh) * | 2019-12-30 | 2020-04-28 | 联想(北京)有限公司 | 一种信息处理方法、电子设备及计算机可读存储介质 |
CN111898142A (zh) * | 2020-07-16 | 2020-11-06 | 常州工学院 | 一种基于图片的密码隐藏与查询方法 |
WO2020237868A1 (zh) * | 2019-05-24 | 2020-12-03 | 平安科技(深圳)有限公司 | 数据传输方法、电子设备、服务器及存储介质 |
CN112184841A (zh) * | 2020-09-27 | 2021-01-05 | 陕西师范大学 | 块替换生成式信息隐藏及恢复方法、设备及介质 |
CN112634119A (zh) * | 2020-12-24 | 2021-04-09 | 深圳壹账通智能科技有限公司 | 水印添加方法、装置、计算机设备和存储介质 |
CN113240431A (zh) * | 2021-06-16 | 2021-08-10 | 中国银行股份有限公司 | 基于图片像素的三原色进行支付验证的方法及系统 |
CN113535164A (zh) * | 2021-06-11 | 2021-10-22 | 中电金信软件有限公司 | 一种前端界面的生成方法、装置、电子设备及存储介质 |
-
2021
- 2021-10-27 CN CN202111254202.5A patent/CN113810189B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013258488A (ja) * | 2012-06-11 | 2013-12-26 | Osaka Gas Co Ltd | 暗号鍵生成システム及び認証システム |
WO2017124940A1 (zh) * | 2016-01-21 | 2017-07-27 | 腾讯科技(深圳)有限公司 | 识别规格图片中是否包含水印的方法及装置 |
CN107481181A (zh) * | 2017-07-27 | 2017-12-15 | 银江股份有限公司 | 一种用于保护个人隐私的图片隐藏方法、还原方法及图片隐藏系统 |
CN110321673A (zh) * | 2018-03-28 | 2019-10-11 | 北京京东尚科信息技术有限公司 | 信息加密方法和装置、信息解密方法和装置、安全系统 |
WO2020237868A1 (zh) * | 2019-05-24 | 2020-12-03 | 平安科技(深圳)有限公司 | 数据传输方法、电子设备、服务器及存储介质 |
CN110516462A (zh) * | 2019-08-30 | 2019-11-29 | 京东数字科技控股有限公司 | 用于加密数据的方法和装置 |
CN111079189A (zh) * | 2019-12-30 | 2020-04-28 | 联想(北京)有限公司 | 一种信息处理方法、电子设备及计算机可读存储介质 |
CN111898142A (zh) * | 2020-07-16 | 2020-11-06 | 常州工学院 | 一种基于图片的密码隐藏与查询方法 |
CN112184841A (zh) * | 2020-09-27 | 2021-01-05 | 陕西师范大学 | 块替换生成式信息隐藏及恢复方法、设备及介质 |
CN112634119A (zh) * | 2020-12-24 | 2021-04-09 | 深圳壹账通智能科技有限公司 | 水印添加方法、装置、计算机设备和存储介质 |
CN113535164A (zh) * | 2021-06-11 | 2021-10-22 | 中电金信软件有限公司 | 一种前端界面的生成方法、装置、电子设备及存储介质 |
CN113240431A (zh) * | 2021-06-16 | 2021-08-10 | 中国银行股份有限公司 | 基于图片像素的三原色进行支付验证的方法及系统 |
Non-Patent Citations (1)
Title |
---|
基于图像分割和随机LSB的信息隐藏算法;高华玲;;现代计算机(专业版)(第15期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113810189A (zh) | 2021-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109767375B (zh) | 图像水印嵌入和追溯的方法及系统 | |
CN110267115B (zh) | 一种视频安全控制方法、装置、设备及介质 | |
KR20050035140A (ko) | 컨텐츠 처리 장치 및 컨텐츠 보호 프로그램 | |
US20190066254A1 (en) | Image processing device, image processing method, and program | |
KR20180081470A (ko) | 모바일 환경에서 생체 인증 기반 경량 상호 인증 프로토콜을 이용한 정보 은닉 시스템, 이를 위한 방법 및 이 방법을 수행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체 | |
Rejani et al. | Pixel pattern based steganography on images | |
JP6543764B2 (ja) | デジタルビデオコンテンツのセキュリティ認証方法及びそのシステム | |
JP2007206762A (ja) | 二次元コードを用いた通信方法および通信装置 | |
Ye et al. | PRA-TPE: Perfectly recoverable approximate thumbnail-preserving image encryption | |
CN113810189B (zh) | 一种密钥图片的生成方法及装置 | |
CN110543749A (zh) | 一种为客户端添加隐形水印的方法及装置 | |
CN111026583B (zh) | 区块链钱包多私钥的备份恢复方法和计算机可读存储介质 | |
CN110881033B (zh) | 一种数据加密方法、装置、设备以及可读存储介质 | |
US6023511A (en) | Cryptosystem for encrypting digital image or voice file | |
US11276138B2 (en) | Image data encryption and rendering system | |
Angel et al. | Security Key-Based Steganography for Images | |
CN116257868A (zh) | 基于图像隐写的数据保护方法及装置、存储介质、终端 | |
JP2013167865A (ja) | 秘密情報隠蔽装置、秘密情報復元装置、秘密情報隠蔽プログラムおよび秘密情報復元プログラム | |
CN111294480A (zh) | 一种图像加密与校正方法、装置及图像解密方法、装置 | |
CN115511030A (zh) | 防伪验证方法、装置和电子设备 | |
CN114238902A (zh) | 基于sm9加密的指纹认证方法、装置和计算机设备 | |
CN115134473B (zh) | 图像加密方法和装置 | |
CN114692187B (zh) | 数据处理方法及其装置 | |
KR102236757B1 (ko) | 영상 제공 방법, 서버 및 사용자 단말 장치 | |
CN111030819A (zh) | 一种基于加解密算法的验真方法、系统、终端及存储介质 |
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 |