可视密码概述

上传人:lil****ar 文档编号:275583452 上传时间:2022-04-11 格式:DOC 页数:4 大小:18.50KB
返回 下载 相关 举报
可视密码概述_第1页
第1页 / 共4页
可视密码概述_第2页
第2页 / 共4页
可视密码概述_第3页
第3页 / 共4页
可视密码概述_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《可视密码概述》由会员分享,可在线阅读,更多相关《可视密码概述(4页珍藏版)》请在金锄头文库上搜索。

1、龙源期刊网 可视密码概述作者:乔明秋赵振洲王润华来源:中国新技术新产品2009年第09期摘要:由Naor和Shamir提出的可视密码提供了一种将一个秘密的黑白图像加密成共享的方案,不需要任何密码学的计算就可以通过这些共享获得原来的秘密图像。本文阐述了可视密码的原理、数学定义和构建方法。关键词:可视密码;秘密图像1 什么是可视密码Shamir1和Blakely于1979年分别提出了秘密共享的概念,其主要思想是在n个参与者之间分享一个秘密,k个(或k个以上)参与者可以恢复秘密,而少于k个参与者则无法恢复秘密,所以,秘密共享也称为(k,n)门限方案。1994年,Naor和Shamir提出可视密码2是

2、一种依靠人眼解密的秘密共享方法,它是将一个秘密图像加密成n张分存图像,n张分存图像可以打印到胶片上、存入电脑或移动存储器中,且分别由n个人保存。解密时只需k个人(或k个以上)将各自的分存图像叠加,秘密图像就会呈现出来,而少于k个人无法获得秘密图像的一点信息。2 可视密码的原理及构建2.1 可视密码的原理表1是上例的(2,2)可视密码的编码模型,表中的每一个黑色或白色代表一个像素的颜色,当从秘密图像中拿到一个像素,若此像素为白色,就随机选择表格中的第一行或第二行的像素组合配置在分存图像的对应位置上;若此秘密图像像素为黑色,则随机选择第三行或第四行的像素组合配置在分存图像的对应位置上。表中最后一列

3、则是分存图像1与分存图像2叠加时的结果。从此表中可以发现,当只有一张分存图像时,是无法辨识出原秘密图像的像素点的,一旦两张分存图像叠加,对应在原秘密图像的黑点会产生全黑的两个像素点组合,而对应在原秘密图像的白点会产生一黑一白的两个像素点组合,利用视觉系统即可分辨黑点与白点的差异。2.2可视密码的构建(2,2)可视密码是把要分享给两位参与者的秘密图像加密成两张分存图像,而从单个的分存图像无法读出秘密图像,只有在两张分存图像叠加时才能读出秘密图像,为了完成其构建必须先设计出黑点与白点的基本加密矩阵。构建(2,2)可视密码加密矩阵时,首先观察表1中的黑点与白点的加密方法,将表1中的像素组合用矩阵来表

4、示(见式(1)),其中B0(B1)代表秘密图像为白(黑)点的加密矩阵,矩阵中的1代表黑色,0代表白色。(1)构建可视密码时,每一个像素加密时会将B0(B1)做随机列置换,原因就是若构建每一个像素点时没有将B0(B1)做随机列置换,会使得所构建出的分存图像为黑白直条相间的线条图像,而不是黑色与白色杂乱排列的无意义图像。令C0和C1为将加密基本矩阵B0和B1的随机列置换所得所有矩阵的集合,则式(1)的矩阵集合如下: (2)式(2)中的C0和C1为(2,2)可视密码的分享机制。类似的,我们可以构建(2,n),(n,n)以及(k,n)可视密码,构建可视密码的关键在于加密基本矩阵的构建,我们将在第四节介

5、绍加密基本矩阵的构建。3 可视密码的数学定义图像中的每个像素都单独处理,由n个人共享,每个共享由m个黑白子像素组成。构建一个nm布尔矩阵B=Bij,当且仅当Bij=1时第i个共享者的第j个子像素为黑;当且仅当Bij=0时第i个共享者的第j个子像素为白。当把投影片叠放在一起时,就相当于对于每一行都做了或运算。叠放后图像的灰度值与进行或运算之后的向量V的汉明重量H(V)成正比。使用者利用视觉系统解释灰度值如下,如果H(V)d该点像素为黑,如果H(V)d-m该点像素为白。定义 一个(k,n)可视密码体制含有两个nm布尔矩阵簇C0和C1,如要共享一个白像素就随机从C0中取出一个矩阵,如要共享一个黑像素

6、就随机从C1中取出一个矩阵。所选的矩阵定义了n个共享者中每一个子像素的颜色。如果下列条件满足则该方法有效:对于C0中的任意一个矩阵S,n行中任意k行进行或运算之后的向量V满足H(V)d-m;对于C1中的任意一个矩阵S,n行中任意k行进行或运算之后的向量V满足H(V)d;对于1,2,n中的任意一个子集i1,i2iq,qk,将Ct(t=0,1)中每一个nm矩阵限制到行i1,i2iq上,得到的两个qm矩阵簇Dt(t=0,1)以同样的频率包含同样的矩阵,因此不可区分。其中:m是共享的像素数,我们希望m越小越好;是相对差,我们希望越大越好;m是对比度,我们也希望m越大越好;矩阵簇Ct是基础矩阵Bt进行随

7、机列置换后所有矩阵的集合;4 加密基础矩阵的构造Naor和Shamir2已经展示了怎样构造(2,n)及(k,k)可视密码,一个好的可视密码的标准是m值尽量小,值尽量大。在Naor和Shamir之后不断有人致力于这方面的研究,如Giuseppe Ateniese 3,Eric R Verheul4,Stefan Droste5等,其中文献5具有比较好的结果。4.1(k,k)可视密码基本矩阵的构造为了描述简单,我们将布尔矩阵中具有偶数个1的列称为偶数列,将布尔矩阵中具有奇数个1的列称为奇数列。如果B是一个布尔矩阵,我们把对B进行随机列置换后得到的矩阵集称为P(B),每一种置换对应P(B)中的一个元

8、素。定理B0 和B1是两个k2k-1布尔矩阵,分别由长度为k的偶数列和奇数列构成,则P(B0)和 P(B1)是(k,k)可视密码体制,且参数m=2k-1, =1/2k-1。4.2(k,n)可视密码基本矩阵的构造(k,n)可视密码基本矩阵构造的原理基于下述定理,具体实现方法由下面的算法给出。为了描述方便,我们将P(B0)或 P(B1)中取i1,ik行构成的集合称为P(B0)或 P(B1)的限制。定理 B0 和B1是两个nm布尔矩阵,对于每一个子集i1,ik 1,n,如果P(B0)和 P(B1)的限制是(k,k)可视密码,则P(B0)和 P(B1)是(k,n)可视密码。ADD(p,B)(1)如果p

9、?燮k-p,将具有q=p个1的每一列加入B中。(2)如果pk-p,将具有q=p+n-k个1的每一列加入B中。算法对于每一个偶数p0,k,调用算法ADD(p, B0),将具有p个1的每一列加入B0的限制中。对于每一个奇数p0,k,调用算法ADD(p, B1),将具有p个1的每一列加入B1的限制中。如果B0和B1的限制中除了(k,k)可视密码,存在不同的列:(a)利用ADD,将B1中不同的列加入B0中。(b)利用ADD,将B0中不同的列加入B1中。参考文献1Shamir A.How to Share a Secret.Commun.ACM,1979,22(11):612-6132 Naor M,

10、Shamir A. Visual Cryptography. Advance in Cryptology Euro crypt94. Lecture Notes in Computer Science, Berlin: Springer, Berlin, and 1995,950: 1-12.3G.Ateniese ,C.Blundo ,A.De Santis ,and D.R.Stinson.Constructions and Bounds for Visual Cryptography.Lecture Note in Computer Science1009,1996,416-428.4E

11、ric R Verheul,Henk C A Van Tilborg.Constructions and properties of k out of n visual secret sharingscheme,designs,codes,cryptography,1997,11,179-196.5 Droste S. New Results on Visual Cryptography. Berlin: Springer-Verlag, LNCS, 1996, 1109: 401-415.6 易枫、王道顺、戴一奇,一般存取结构的多密图彩色可视分存方案,自然科学进展,2006年1月,第16卷第1期,95-100

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号