LSB数字水印算法

合集下载

基于Delphi的数字图像水印LSB算法的实现

基于Delphi的数字图像水印LSB算法的实现
结了LB算法的利弊, 提出了可行的改进措施. S 关健词: eh; s D p LB算法 li
引 言
随着数字技术和因特网的发展, 各种形式的多媒 体数字作品( 图像, 视频, 音频等) 纷纷以网络形式发 表, 其版权保护成为一个迫切需要解决的问题.由于
国内外实现水印技术的典型算法有 :
角 l 〕 冈a ; ul. t l U e 五
图1 : o tN ; 二w
岱B 算法把要隐藏的信息, 变成二进制数据流后 隐藏到合适的低平面, 即不重要的位中.图像部分像 素( 载体像素) 的最低一个或多个位平面的值被隐藏
数据所替换. 基于视觉系统对一定范围内亮度的不敏 感性, 使得巧B的改变不会对图像产生大的影响.对
现用nn x 的图像作为底面, 表示像素大小的8 位 二进制数作为高度, 可构成一个立体直方图. 该直方 图的每根方柱都为8 位.从整个图形看, 形成了一个 被分割的大立方体,各像素的8 位二进制数高位 (S ) M B在上方, LB在下面, 低位( ) S 各像素位置的位形 成一个平面, 位平面"第一个位平面由每一个像 称为" , 素最低比 特位组成, 第八个位平面由 每一个像素最高 比 特位组成. 因此, 这八个位平面在图 像中所代表的 重
令{ 几, 瓜 为从原始宿主图像中选择来作 , } 几 … 为隐藏载体的 集合,bb …, }i11为 像素 {lZ b b 0 } ,, . 二 ,
待隐藏的信息, 则嵌人过程为:
C"卜 . l 七 1
p c u T m .nx lk edr b c; r e r f lt t c( neT j t o de r b E C S i : e O )
数字水印( saw e a i ) i D l arr n 是实现版 t i tmk g 权保护的 有

数字水印技术的嵌入和提取算法分析

数字水印技术的嵌入和提取算法分析

数字水印技术的嵌入和提取算法分析数字水印技术是一种在数字媒体中隐藏和提取信息的技术,被广泛应用于保护版权、数据完整性验证、源追踪等领域。

数字水印通过在媒体中嵌入一些看不见或难以察觉的信息来实现,同时保持媒体的视觉和听觉效果。

本文将对数字水印技术的嵌入和提取算法进行分析。

首先,数字水印的嵌入算法。

数字水印嵌入算法通常分为空域嵌入和频域嵌入两种类型。

空域嵌入是将水印信息嵌入到媒体像素的数值中。

最常见的空域嵌入算法是改变像素的最低有效位(Least Significant Bit, LSB)来存储水印信息。

嵌入过程首先将水印信息转化为二进制编码,然后将二进制编码嵌入到像素的最低有效位中。

由于人眼对最低有效位的变化难以察觉,因此嵌入的水印信息不会影响媒体原有的视觉效果。

此外,还有一些基于像素的差值、像素重新排列等技术,可以提高空域嵌入算法的鲁棒性和安全性。

频域嵌入是将水印信息嵌入到媒体的频域表示中。

频域嵌入算法通常使用变换方法,如离散余弦变换(Discrete Cosine Transform, DCT)和小波变换(Wavelet Transform)。

这些变换能将媒体信号分解成频域的系数,然后在一些特定的系数上嵌入水印信息。

常见的频域嵌入算法有基于DCT的嵌入算法和基于小波变换的嵌入算法。

这些算法能够在不引起明显视听质量下降的情况下嵌入大量的水印信息,提高了鲁棒性和隐藏能力。

其次,数字水印的提取算法。

数字水印提取算法是将嵌入在媒体中的水印信息从中提取出来的过程。

对于空域嵌入算法,提取算法是将被修改的像素进行读取和解码,以获得嵌入的二进制编码信息。

然后,解码的二进制信息转化为水印信息。

对于基于像素差值的嵌入算法,提取算法是提取出像素之间的差值,并根据差值来确定是否存在水印信息。

解码差值可以获得嵌入的水印信息。

对于频域嵌入算法,提取算法是将嵌入的频域系数进行逆变换,得到嵌入水印后的媒体。

然后,通过对比媒体的原始和解码后的水印信息,可以确定是否成功提取出水印。

一种基于LSB的易碎性数字盲水印算法

一种基于LSB的易碎性数字盲水印算法

一种基于LSB的易碎性数字盲水印算法
马刚;蒋志新;卫红春;刘天时
【期刊名称】《微电子学与计算机》
【年(卷),期】2008(25)8
【摘要】提出了一种基于LSB的易碎性数字盲水印算法.水印由m序列确定的嵌入像素LSB清零后的原始图像CRC-32值、有意义的二值图像及其CRC-32值组成,嵌入到由m序列确定的像素LSB中,有效地解决了信息隐藏、盲水印提取和篡改检测等关键问题.试验结果表明,该算法能够满足数字档案资料版权保护和篡改鉴真的要求,具有实用价值.
【总页数】4页(P205-208)
【关键词】数字水印;信息隐藏;CRC;篡改检测
【作者】马刚;蒋志新;卫红春;刘天时
【作者单位】西安石油大学计算机学院
【正文语种】中文
【中图分类】TP31
【相关文献】
1.一种基于数字版权保护的数字盲水印算法研究 [J], 张明;顾亚男
2.一种基于LSB算法的数字水印改进技术 [J], 高会军;刘文霞;暴轩;张卫光;胡师
3.一种基于LSB的数字水印改进算法 [J], 程华
4.一种基于LDPC码和图像置乱技术的盲数字水印算法 [J], 马婷
5.一种基于DWT_DCT的数字图像盲水印算法 [J], 张帅; 杨雪霞
因版权原因,仅展示原文概要,查看原文内容请购买。

数字图像水印算法的设计与实现

数字图像水印算法的设计与实现

数字图像水印算法的设计与实现随着数字技术的不断发展,数字图像水印技术已经成为了一种广泛应用的技术。

数字图像水印技术能够将数字信息嵌入到待传输的图像中,以达到保护图像版权和传输安全的目的。

本文将介绍几种数字图像水印算法的设计与实现。

一、DCT域水印算法DCT域水印算法是一种基于离散余弦变换的水印算法。

首先,将待加水印的图像分成若干个8 x 8的小块,然后对每个小块进行离散余弦变换。

在进行离散余弦变换后,将水印信息嵌入到变换后的系数中。

最后,对所有加入水印的小块进行逆离散余弦变换得到加水印的图像。

实现该算法时需要注意,由于嵌入水印信息会对原始图像进行修改,需要进行适当的幅值控制,避免对图像质量造成过大的影响。

二、DWT域水印算法DWT域水印算法是一种基于小波变换的水印算法。

该算法将待加水印的图像进行小波变换,得到高频分量和低频分量。

然后,将水印信息嵌入到低频分量中。

最后,对修改后的低频分量和高频分量进行逆变换,得到加水印的图像。

实现该算法时需要注意,小波变换会引入一定的失真,需要进行一定的幅值控制和去噪操作,以保证加水印后的图像质量。

三、LSB域水印算法LSB域水印算法是一种基于最低有效比特的水印算法。

该算法将待加水印的图像的最低有效比特替换为水印信息,一般只修改少量像素的最低有效比特,从而达到水印目的。

实现该算法时需要注意,由于只修改了最低有效比特,所以加入的水印信息比较容易受到攻击,需要进行加密和鲁棒性增强措施。

四、RS域水印算法RS域水印算法是一种基于区域选择的水印算法。

该算法将待加水印的图像分成若干个区域,然后针对每个区域选择不同的水印嵌入算法。

不同的区域使用不同的嵌入算法可以提高水印的安全性和鲁棒性。

实现该算法时需要注意,需要进行充分的选取区域和嵌入算法,以保证加入的水印信息具有一定的独特性和抗攻击能力。

总的来说,数字图像水印算法涉及到的技术比较复杂,涉及到离散余弦变换、小波变换、最低有效比特、区域选择等多个方面。

lsb算法

lsb算法

lsb算法介绍
---------------------------------------------------------------------- LSB(LeastSignificant Bits)算法:将秘密信息嵌入到载体图像像素值的最低有效位,也称最不显著位,改变这一位置对载体图像的品质影响最小。

LSB算法的基本原理:
对空域的LSB做替换,用来替换LSB的序列就是需要加入的水印信息、水印的数字摘要或者由水印生成的伪随机序列。

由于水印信息嵌入的位置是LSB,为了满足水印的不可见性,允许嵌入的水印强度不可能太高。

然而针对空域的各种处理,如游程编码前的预处理,会对不显著分量进行一定的压缩,所以LSB算法对这些操作很敏感。

因此LSB算法最初是用于脆弱性水印的。

LSB算法基本步骤:
1 将原始载体图像的空域像素值由十进制转换成二进制;
2 用二进制秘密信息中的每一比特信息替换与之相对应的载体数据的最低有效位;
3 将得到的含秘密信息的二进制数据转换为十进制像素值,从而获得含秘密信息的图像。

基于LSB的数字水印算法及MATLAB实现

基于LSB的数字水印算法及MATLAB实现

基于LSB 的数字水印算法及MATLAB 实现加密算法宗岳,王恺山东科技大学 山东,中国 ***************摘要—LSB 是一种简单传统的信息隐藏算法,属于数字水印技术中的一种。

本文首先介绍了LSB 技术的原理和特点,然后讨论了基于LSB 的数字水印算法。

最后利用MATLAB 2010 b2对这一算法的加密过程进行了仿真。

关键词:LSB 数字水印 信息隐藏 MATLABI. 介绍随着计算机应用逐渐广泛、网络技术的迅速发展,使音频、视频等多媒体信息都能以数字形式传输和播放,从而使大规模非授权拷贝成为了可能,而这样会损害音乐、电影、书籍和软件等出版业的发展,为了保护知识产权引发了一个很有意义的研究方向:信息隐藏。

本文首先介绍了了数字水印技术的原理和分类,接着对LSB 算法原理及LSB 算法实现进行了介绍,最后使用MATLAB 对其加密过程进行了仿真。

II. 数字水印技术的基本原理数字水印的主要 目的是将特定的信息加入到需要保护的媒体信息中,加入的信息一般是能够代表媒体信息版权的内容,如公司标志、媒体作者、特定代码等,而且要保证数字水印能够抵抗一定的攻击,而不被轻易的破坏和修改,同时数字水印要能够被提取或者能够被检测到。

数字水印的具体内容、算法、提取或检测过程根据实际应用有不同的要求。

数字水印的嵌入和提取过程如图1,图2所示。

图1 数 字水印的嵌入过程图2 数字水印的提取过程图1是数字水印的嵌入过程,加入密钥可以提高数字水印的隐蔽性、抗攻击性,而并非是必须的。

根据用途不同,,嵌入的水印有些是需要还原的,而有些则只需验证水印的存在性,前者需要数字水印的提取算法,而图2需要数字水印的检测算法,根据具体的水印算法,嵌入或提取的过程可能有所不同。

III. 数字水印的分类数字水印技术可以从不同的角度进行分类,因此有多种分类方法。

按数字水印的特性可分为鲁捧数字水印和脆弱数字水印。

鲁棒数字水印主要用于标识数字媒体信息的版权信息,它要求嵌入的水印能够抵抗对媒体的常规编辑和恶意攻击,在对媒体进行如:裁剪、旋转、缩放、压缩的变换后水印信息不受到较大损害。

基于LSB的数字水印算法及MATLAB实现

基于LSB的数字水印算法及MATLAB实现

基于LSB 的数字水印算法及MATLAB 实现加密算法宗岳,王恺山东科技大学 山东,中国 ***************摘要—LSB 是一种简单传统的信息隐藏算法,属于数字水印技术中的一种。

本文首先介绍了LSB 技术的原理和特点,然后讨论了基于LSB 的数字水印算法。

最后利用MATLAB 2010 b2对这一算法的加密过程进行了仿真。

关键词:LSB 数字水印 信息隐藏 MATLABI. 介绍随着计算机应用逐渐广泛、网络技术的迅速发展,使音频、视频等多媒体信息都能以数字形式传输和播放,从而使大规模非授权拷贝成为了可能,而这样会损害音乐、电影、书籍和软件等出版业的发展,为了保护知识产权引发了一个很有意义的研究方向:信息隐藏。

本文首先介绍了了数字水印技术的原理和分类,接着对LSB 算法原理及LSB 算法实现进行了介绍,最后使用MATLAB 对其加密过程进行了仿真。

II. 数字水印技术的基本原理数字水印的主要 目的是将特定的信息加入到需要保护的媒体信息中,加入的信息一般是能够代表媒体信息版权的内容,如公司标志、媒体作者、特定代码等,而且要保证数字水印能够抵抗一定的攻击,而不被轻易的破坏和修改,同时数字水印要能够被提取或者能够被检测到。

数字水印的具体内容、算法、提取或检测过程根据实际应用有不同的要求。

数字水印的嵌入和提取过程如图1,图2所示。

图1 数 字水印的嵌入过程图2 数字水印的提取过程图1是数字水印的嵌入过程,加入密钥可以提高数字水印的隐蔽性、抗攻击性,而并非是必须的。

根据用途不同,,嵌入的水印有些是需要还原的,而有些则只需验证水印的存在性,前者需要数字水印的提取算法,而图2需要数字水印的检测算法,根据具体的水印算法,嵌入或提取的过程可能有所不同。

III. 数字水印的分类数字水印技术可以从不同的角度进行分类,因此有多种分类方法。

按数字水印的特性可分为鲁捧数字水印和脆弱数字水印。

鲁棒数字水印主要用于标识数字媒体信息的版权信息,它要求嵌入的水印能够抵抗对媒体的常规编辑和恶意攻击,在对媒体进行如:裁剪、旋转、缩放、压缩的变换后水印信息不受到较大损害。

基于LSB的图像数字水印实验

基于LSB的图像数字水印实验

基于LSB的图像数字⽔印实验1. 实验类别设计型实验:MATLAB设计并实现基于LSB的图像数字⽔印算法。

2. 实验⽬的了解信息隐藏中最常⽤的LSB算法的特点,掌握LSB算法原理,设计并实现⼀种基于图像的LSB隐藏算法。

条件实验条件3. 实验(1) Windows 2000或Windows Xp以上操作系统;(2) MATLAB 6.5以上版本软件;(3)图像⽂件4. 实验原理基于LSB的图像数字⽔印任何多媒体信息在数字化时都会产⽣物理随机噪声,⽽⼈的感官系统对这些随机噪声并不敏感。

替换技术就是利⽤这个原理,通过使⽤秘密信息⽐特替换随机噪声,从⽽实现信息隐藏⽬的。

图像⾼位平⾯对图像感官质量起主要作⽤,去除图像最低⼏个位平⾯并不会造成画⾯质量的下降。

利⽤这个原理可⽤秘密信息(或称⽔印信息)替代载体图像低位平⾯以实现信息嵌⼊。

LSB算法选⽤最低位平⾯来嵌⼊秘密信息,最低位平⾯对图像的视觉效果影响最轻微,但很容易受噪声影响和攻击,可采⽤冗余嵌⼊的⽅式来增强稳健性加以解决,即在⼀个区域中嵌⼊相同的信息,提取时根据该区域中的所有像素判断。

1.嵌⼊⽔印.m脚本代码:clear all;clc;picpath = input('请输⼊图⽚绝对路径(加单引号):');watermark_path = input('请输⼊⽔印⽂件绝对路径(加单引号):');msgfid = fopen(watermark_path,'r'); % 打开秘密⽂件,读⼊秘密信息[key,count] = fread(msgfid,'ubit1'); % 读取秘密信息,存⼊key,count为成功读⼊了多少位fclose(msgfid); % 关闭⽂件i = imread(picpath);i1 = i(:,:,1); % 提取RGB第1层嵌⼊⽔印[row,col] = size(i1); % x⾏y列contents = row * col; % 图像能嵌⼊⽔印最⼤⽐特数if count > contentsdisp('warning: 当前图⽚容量⽆法通过LSB⽅法嵌⼊所有⽔印信息!按enter退出matlab.');pause;quit;elsedisp(['当前图⽚通过LSB能嵌⼊的最⼤⽔印⽐特数为: ',num2str(contents),' bits']);endkey_counter = 1;round_counter = 0;total_watermark_bits = 0;if mod(count,row) == 0round = floor(count/row);elseround = floor(count/row) + 1;endfor ii=1:1:roundfor jj = 1:1:rowi1(jj,ii) = bitset(i1(jj,ii),1,key(key_counter,1));% bitset函数改变像素值最后⼀位bit为⽔印bit值key_counter = key_counter + 1;total_watermark_bits = total_watermark_bits + 1;if key_counter > countbreak;endend %内层forround_counter = round_counter + 1;disp(['当前嵌⼊轮数: ',num2str(round_counter)]);if key_counter > countdisp(['LSB嵌⼊正常结束!共嵌⼊⽔印⽐特数: ',num2str(total_watermark_bits),' bits']);break;endend %外层fori(:,:,1) = i1;imwrite(i,'E:\new\LSB_watermarked.bmp');figure;subplot(1,2,1);imshow(picpath);title('原始图像');subplot(1,2,2);imshow(i);title('LSB嵌⼊⽔印后的图像');运⾏截图:2.提取⽔印.m脚本代码:clear all;clc;picpath = input('请输⼊待提取LSB⽔印图⽚绝对路径(加单引号):');watermark_bits = input('请输⼊提取的⽔印⽐特数:');i = imread(picpath); % 读取含有⽔印信息的彩⾊图像i1 = i(:,:,1);key = zeros(watermark_bits,1); % 创建⼀个watermark_bits⾏1列的全0矩阵,⽤于存放⽔印⽐特[row,col] = size(i1);key_counter = 1;round = 0;round_counter = 0;total_watermark_bits = 0;if mod(watermark_bits,row) == 0round = floor(watermark_bits/row);elseround = floor(watermark_bits/row) + 1;endfor ii = 1:1:roundfor jj = 1:1:rowkey(key_counter,1) = bitget(i1(jj,ii),1); % 提取图像矩阵的bit⽔印信息key_counter = key_counter + 1;total_watermark_bits = total_watermark_bits + 1;if key_counter > watermark_bitsbreak;endend %内层forround_counter = round_counter + 1;disp(['当前提取轮数: ',num2str(round_counter)]);if key_counter > watermark_bitsdisp(['LSB⽔印提取正常结束!共提取⽔印⽐特数:',num2str(total_watermark_bits),' bits']);break;endend %外层forfobject = fopen('E:\new\LSB_watermark.txt','w'); % 以只写模式打开⼀个名为mark_message.txt的⽂件,不存在则创建之fwrite(fobject,key,'bit1'); % 将key矩阵中的数作为bit写⼊⽂件句柄为fobject的⽂件fclose(fobject); % 关闭⽂件句柄所对应的⽂件运⾏后hidden.txt与LSB_watermark.txt⽂件⽔印内容LSB⽔印实验的要点1.该实验选取的是彩⾊RGB图像,是3维图像,因此要选RGB中的某⼀层进⾏⽔印嵌⼊,可以选第1,2或3层,分别对于R,G,B层,本实验选择R层及第⼀层i1 = i(:,:,1)2.还应对图像所能容纳⽔印⽐特最⼤数进⾏检查,以防⽔印信息太多导致嵌⼊失败.3.嵌⼊完成后,要将选取的RGB层赋给原3维矩阵对应层i(:,:,1) = i14.代码注意if及for与end配对,⼀个if或for配⼀个end上述脚本在matlab6.5能正确运⾏.。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一.数字水印
数字水印技术
数字水印技术(Digital Watermark):技术是将一些标识信息(即数字水印)直接嵌入数字载体(包括多媒体、文档、软件等)当中,但不影响原载体的使用价值,也不容易被人的知觉系统(如视觉或听觉系统)觉察或注意到。

目前主要有两类数字水印,一类是空间数字水印,另一类是频率数字水印。

空间数字水印的典型代表是最低有效位(LSB)算法,其原理是通过修改表示数字图像的颜色或颜色分量的位平面,调整数字图像中感知不重要的像素
来表达水印的信息,以达到嵌入水印的目的。

频率数字水印的典型代表是扩展频谱算法,其原理是通过时频分析,根据扩展频谱特性,在数字图像的频
率域上选择那些对视觉最敏感的部分,使修改后的系数隐含数字水印的信息。

可视密码技术
二.可视密码技术:可视密码技术是Naor和Shamir于1994年首次提出
的,其主要特点是恢复秘密图像时不需要任何复杂的密码学计算,而是以人的视觉即可将秘密图像辨别出来。

其做法是产生n张不具有任何意义的胶片,任取其中t张胶片叠合在一起即可还原出隐藏在其中的秘密信息。

其后,人们又对该方案进行了改进和发展。

主要的改进办法办法有:使产生的n张胶片都有一定的意义,这样做更具有迷惑性;改进了相关集合的造方法;将针对黑白图像的可视秘密共享扩展到基于灰度和彩色图像的可视秘密共享。

三.
数字水印(Digital Watermark或称Steganography)技术是指用信号处理的方法在数字化的多媒体数据中嵌入隐蔽的标记,这种标记通常是不可见的,只有通过专用的检测器或阅读器才能提取。

数字水印是信息隐藏技术的一个重要研究方向。

数字水印技术源于开放的网络环境下保护多媒体版权的新型技术,它可验证数字产品的
版权拥有者、识别销售商、购买者或提供关于数字产品内容的其他附加信息,并将这些信息以人眼不可见的形式嵌入在数字图像或视频序列中,用于确认数字产品的所有权和跟踪侵权行为。

除此之外,它在证据篡改鉴定,数字的分级访问,数据产品的跟踪和检测,商业视频广播和因特网数字媒体的服务付费,电子商务的认证鉴定,商务活动中的杜撰防伪等方面也具有十分广阔的应用前景。

自1993年以来引起工业界的深厚兴趣,已成为国际上非常活跃的研究领域。

图11-2-1是数字水印嵌入的一个例子:
图11-2-1 嵌入水印前后图像视觉对比
二.典型数字水印系统模型
图11-2-2描述了水印信号嵌入模型,其功能是完成将水印信号加入原始数据。

图11-2-2 水印信号嵌入模型
图11-2-3为水印信号检测模型,用以判断某一数据中是否含有指定的水印信号。

图11-2-3 水印信号检测模型
在水印的嵌入和检测模型中密码都不是必须包含的部分,但增加密码可以大大提高水印的鲁棒性。

三.数字水印的基本特性
(1)隐蔽性:在数字作品中嵌入数字水印不会引起明显的降质,并且不易被察觉。

(2)隐藏位置的安全性:水印信息隐藏于数据而非文件头中,文件格式的变换不应导致水印数据的丢失。

(3)鲁棒性:所谓鲁棒性是指在经历多种无意或有意的信号处理过程后,数字水印仍能保持完整性或仍能被准确鉴别。

常见的信号处理过程包括信道噪声、滤波、数/模与模/数转换、重采样、剪切、位移、尺度变化以及有损压缩编码等。

在数字水印技术中,水印的数据量和鲁棒性构成了一对基本矛盾。

从主观上讲,理想的水印算法应该既能隐藏大量数据,又可以抗各种信道噪声和信号变形。

然而在实际中,这两个指标往往不能同时实现,不过这并不会影响数字水印技术的应用,因为实际应用一般只偏重其中的一个方面。

如果是为了隐蔽通信,数据量显然是最重要的,由于通信方式极为隐蔽,遭遇敌方篡改攻击的可能性很小,因而对鲁棒性要求不高。

但对保证数据安全来说,情况恰恰相反,各种保密的数据随时面临着被盗取和篡改的危险,所以鲁棒性是十分重要的,此时,隐藏数据量的要求居于次要地位。

数字水印主要应用在版权保护、加指纹、标题与注释、篡改提示和使用控制等领域。

四.水印的典型算法分类
近年来,数字水印技术研究取得了很大的进步,水印的典型算法包括空域算法、变换域算法、压缩域算法、NEC算法等。

五.LSB算法简介
LSB(最低有效位)算法是在位图法的基础上将输入的信号打乱,并按照一定的分配规则使嵌入的信息能够散布于图像的所有像素点上,增加破坏和修改水印的难度。

由于水印隐藏在最低位,相当于叠加了一个能量微弱的信号,因而在视觉和听觉上很难察觉。

LSB水印的检测是通过待测图像与水印图像的相关运算和统计决策实现的。

LSB算法拥有与位图法同样的致命缺点。

虽然可以隐藏较多的信息,但隐藏的信息可以被轻易移去,无法满足数字水印的鲁棒性要求,因此现在的数字水印软件已经很少采用LSB算法了。

不过,作为一种大数据量的信息隐藏方法,LSB在隐藏通信中仍占据着相当重要的地位。

在常用的LSB算法工具中,有些工具会使用一些加密算法将原数据加密,而本实验则通过一些位操作,把原来的信息变为看似毫不相关的数据。

在提取时,使用上述方法的逆变换,就可以恢复原数据了。

而在信息嵌入点的选择上,本练习是通过一种画线算法(line draw algorithm)来把嵌入点打散,从而增加水印识别的难度。

在提取水印时,通过逆变换,就可以找到这些数据点了。

在实验步骤二中我们会对LSB算法进行详细剖析与实现。

相关文档
最新文档