信息隐藏实验二bmp图像信息隐藏

合集下载

实验2:信息隐藏技术实验

实验2:信息隐藏技术实验

实验2:信息隐藏技术实验一、实验目的掌握信息嵌入与检测的工具与使用方法;掌握数字水印的提取方法二、实验用的仪器、仪表easycode、AssureMark三、实验原理图像水印部分显示阿须数码在数字图像上的数字水印技术。

在不改变原有图像品质的情况下将数字水印信息隐藏于图像本身,并可在需要时能提取,用以作为版权声明和信息保护等。

Assure Image Mark V2。

0 是在一个MS-WINDOWS环境下运行的数字水印嵌入与检测程序,同时能够有效地提取篡改后图像的数字水印信息。

运行步骤依次为:1。

选择欲添加水印的原始图像文件、并给新生成水印信息的文件定义名称;2。

嵌入水印信息,可选择两种方式嵌入A:手动输入信息、B:从15877文件中提取信息;3.检测水印信息;选择含水印信息的图像文件,直接点击“检测水印”按钮;若该文件被篡改,检测时对所篡改的部分显示反差;4。

屏幕中显示所嵌入的数字水印信息.四、实验步骤1、基于图像的信息隐藏—-easycode前提:先建立一个TXT文件,且素材中有一个图片文件CHURCH。

JPG。

目标:将TXT文件秘密潜入到CHURCH.JPG中.隐藏方法:在easycode中单击“文件嵌入”选项卡;单击第一个“浏览”,选择图片文件church.jpg;单击第二个“浏览”,选择文本文件;输入密码后,单击“嵌入文件”按钮,即可。

测试:此时将原始TXT文件删除掉,并打开图片文件查看是否有异常.提取信息:在文件嵌入选项卡中,单击第三个“浏览",选择需要提取信息的图片文件;输入释放密码后,单击“释放文件"按钮,即可发现,txt文件重新恢复出来了。

2、数字水印的嵌入/提取—-AssureMark(注:只能用bmp文件)水印的嵌入方法:选择“嵌入水印”模式;单击“输入原始图像”右侧的“打开”按钮,选择原始图像church。

bmp,并定义输出图片的名称(如123。

bmp),手动输入水印信息(可以是一个字符串,如:123456);单击“嵌入水印”按钮,即可。

基于BMP图像数据的信息隐藏方法

基于BMP图像数据的信息隐藏方法

S ( P 2 " ‘ $ -4 0+R 2 4 0+ ,%. " 02W " 1 " 2 3G %# 102G /*R ,%3, * + BC D : 3 LC FS
!C D FS J D F) FC O M N P C 9 E #C D FS J D F 110#%5 # ; IC FD " $*K = > # . + %( . M 9 I: RJ : N C FJ : N K D 9 C : F IC RC FS UD P M R: F= a ?C K D S M C P LN M P M F9 M R7> IM RC P LG D E M RC K D S M RD 9 D C P S : 9 9 M FD H H : N RC FS 9 : 9 IM UC 9 K D LJ C G M 3 IM D R RD 9 D FR 9 IM N MC P F: N M G D 9 C : FP IC L9 : 9 IM RD 9 D J : G G : X C FS 9 IM C K D S M RD 9 D C F9 IM J C G M 7cIM F9 IM P M H N M 9 C FJ : N K D 9 C : FC P #D #: M K UM RRM RC F9 IMUE 9 M P J : G G : X C FS9 IMC K D S MRD 9 D FG E9 IM P C \ M : J = a ?J C G M C P C FH N M D P M R# U89 R: F7 9 C FJ G 8M FH M 9 IM C K D S M 9 : UM RC P 3 LG D E M R7 * P D N M P 8G 9 #9 IM C FJ : N K D 9 C : FC P IC RRM F7 > IM P M H N M 9 C FJ : N K D 9 C : FH D F UM N M H : FP 9 N 8H 9 M R UE N M D RC FS 9 IM RD 9 D J N : K9 IM UE 9 M P M K 3 UM RRM RC F9 IMP M H N M 9 C FJ : N K D 9 C : FC F9 8N F7> IM N M C P F: 9 D FE O C P 8D G RC J J M N M FH M UM 9 X M M F9 IM H : O M N C K D S M M K UM RRM RC FP M H N M 9 C FJ : N K D 3 9 C : FD FR 9 IM : N C S C FD G H : O M N C K D S M 7(: 9 IM IC RC FS J M D 9 8N M C P P 9 N : FS 7> IM P C K 8G D 9 C : FM T LM N C K M F9 P LN : O M 9 IM J M D P C UC G C 9 E D FR 9 IM O D G C RC 9 E : J 9 IC P D G S : N C 9 IK 7 ? @A 0+ 1 # FJ : N K D 9 C : F IC RC FS a ?C K D S M K UM RRC FSD G S : N C 9 IK $C %= %M

基于BMP图像数据的信息隐藏方法

基于BMP图像数据的信息隐藏方法
可行性 和有 效性 。
关键词 : 信息隐藏 ;MP图像 ; 算法 B 嵌入
中图分 类号 : P9 T 31 文献标识码 : A
Te h i u o n o m ain Hi i g B s d o c n q ef rI f r t dn a e n BM P I a e o m g
e e d nteb tsfl w n h ged t ,o l esz f mb d e i ye ol igtei d h o ma aa nyt ieo h BMP f ei ce sd,b t o t n u n etei g eds l si rae i n u n’ f e c d il h ma et b i- o
YANG a - i g Xio p n
(( r )aI U i ri ,Xad 15 , hn ) i咖 n esy in a 4 0 3 C ia v t n
Ab ta t A to r nomainhdn ae nB g rs ne .T eds ly maed t otn ac rigt e sr c : meh df fr t iigb s do MP i ei pe e td h pa e i g aai g t codn t o i o ma s i d s e oh
基 于 B P图像数据 的信息隐藏方法 M
杨晓平
( 襄樊学院机械 工程 系, 湖北 襄樊 4 15 ) 4 0 3
摘 要 : 出了一种通过增加 B 提 MP图像数据 实现信 息 隐藏的方法。B MP图像 的显 示是根据 文件 头数据 来确定 图像数 据 的。 与文件 中图像 数据以后 的数 据没有 关系, 将秘 密信 息嵌入到 图像 数据 以后 的字 节 中, 只是增 加 了 B P文件 的 大小, M 并不影 响图像 的显示 , 而 实现信息 隐藏 。按照秘密信 息的数 据大小 , 栽 密图像 中读 出秘 密信 息 的字节数据 , 可恢 从 从 即 复秘 密信 息。该 算法简单 易行 , 密图像和原 图像在视 觉上没有任何差别 , 栽 具有较 强的 隐蔽性。仿真 结果证明 了算 法的

如何把信息隐藏在24位BMP图像中

如何把信息隐藏在24位BMP图像中
利 用常规 方法加密 ,其安 垒性就大打折扣 了。

2B MP图像隐藏文 件原理
笔者 在利用 D l i编制 图像处理程序 时,使用了改 e h5 p 变画布上一个 点 R B值 的方法,发现如果 只改变 R G 、G、 B的 低位 部分 ,例 如只改变低二 位甚 至低三位时 ,肉眼很

个点的 R GB值 ,然后和上面一个字节分开的三个部分
个需要 隐藏 的字节 ,对应 图形上 的一 个点 我 们使用
进行位运算 ,得到新 的 R GB值 作为该点的 R GB值 ,算
法见 Wre MP 程 iB 过 t
D l i 提供的 画布 ( a vs , e h5 p C n a) 可以撇开 B MP图像的具体
大大提高 了 具体如下 : 在这里分 别改变红色的低 三位、蓝色的低三位、绿色
图 2
其 次.编码时 ,从 需要隐藏 的文件中取出一个字节 ,
把这个字节的八位分成三 部分 , 然后把这三部分分别放置 到 R B, G 重复这 个过程 .直到完成 . 最后 图像存盘 。把一
的低二位,这样 一个点我 们就 可以存放一 个字节的信息 . 其对图像的影响我 们可以这洋估算 :对红色 蓝色的影响
方法 如利用压缩软件把 文件压缩后 加上密码 或者把 自 己的 文档直接 利用 WO D、WP R S等 加密码功能加密 。这
几种方 法,在利用相应 的软件打开时 ,一般都要求辅 入密 码 , 就等于告诉别 人这 个文件有密码 .因而它们十分容 这 易受到攻击 事实 上,现在 网上 已经有很 多的破解程序 ,
计 算机时代
作为一个字符串来处理 , 字符串的长度标志要 占用一个字 - 文件 的长度用长整型表示 这样 , 上标 志 “ 加 n”的长度 , 文件 头的长度就固定为 10 0 个字节 。当然 ,进行存取 。

信息隐藏(图像处理)实验报告

信息隐藏(图像处理)实验报告

信息隐藏(图像处理)实验报告
实验一、图像输入与输出
实验目的:
学习在MATLAB环境下对图像文件的I/O操作。

实验要求:
1.在Matlab环境下读入一幅.jpg格式的灰度图像并显示该图像;
2.显示多幅图像。

读入四幅灰度图像,并用两排显示。

实验结果:
实验二、直方图处理 实验目的:
获取图像的直方图,并利用直方图均衡化进行图像增强。

实验要求:
1.在Matlab 环境下读入.jpg 格式的灰度图像,分别显示该图像的直方图以及归一化直方图;
2.进行直方图均衡化。

显示均衡化后的图像,以及该图像的直方图。

实验结果:
原图 直方图
归一化直方图直方图均衡化后的结果图像
直方图均衡化后的结果图像的直方图
实验三、使用DCT进行变换编码
实验目的:
了解图像压缩中常用的DCT变换。

实验要求:
1.在Matlab环境下显示4x4的DCT基函数图像;
2.读入.jpg格式的灰度图像,对该图像进行8x8的DCT变换,将得到的系数的50%截去,再对截去的系数阵列进行逆变换得到重构图像,以图像形式显示重构图像和原始图像的误差。

实验结果
原图 4x4的DCT基函数图像
重构图像重构误差图像
实验四、图像加密
实验目的:
了解基于置乱的图像加密方法。

实验要求:
1.读入.bmp格式的灰度图像,编程实现基于Arnold变换的图像置乱加密算法。

实验结果:
原图置乱1次
置乱2次置乱3次
置乱4次置乱5次
置乱6次置乱96次。

信息隐藏技术_实验报告(3篇)

信息隐藏技术_实验报告(3篇)

第1篇一、实验目的1. 了解信息隐藏技术的基本原理和实现方法。

2. 掌握信息隐藏技术在图像、音频和视频等数字媒体中的应用。

3. 通过实验验证信息隐藏技术的有效性和安全性。

二、实验环境1. 操作系统:Windows 102. 编程语言:Python3. 库:OpenCV、scikit-image、numpy、matplotlib三、实验内容1. 图像信息隐藏2. 音频信息隐藏3. 视频信息隐藏四、实验步骤1. 图像信息隐藏(1)选择一幅图像作为宿主图像,并选择一幅图像作为水印图像。

(2)将水印图像转换为二值图像。

(3)对宿主图像进行分块处理,将每个块转换为二值图像。

(4)根据密钥对水印图像进行置乱,提高安全性。

(5)将置乱后的水印图像嵌入到宿主图像的对应块中。

(6)提取水印图像,并与原始水印图像进行对比。

2. 音频信息隐藏(1)选择一段音频作为宿主音频,并选择一段音频作为水印音频。

(2)对宿主音频和水印音频进行分帧处理。

(3)根据密钥对水印音频进行置乱,提高安全性。

(4)将置乱后的水印音频嵌入到宿主音频的对应帧中。

(5)提取水印音频,并与原始水印音频进行对比。

3. 视频信息隐藏(1)选择一段视频作为宿主视频,并选择一段视频作为水印视频。

(2)对宿主视频和水印视频进行帧提取。

(3)根据密钥对水印视频进行置乱,提高安全性。

(4)将置乱后的水印视频嵌入到宿主视频的对应帧中。

(5)提取水印视频,并与原始水印视频进行对比。

五、实验结果与分析1. 图像信息隐藏实验结果表明,嵌入水印后的图像与原始图像在视觉效果上几乎没有差异,水印的嵌入效果良好。

同时,提取的水印图像与原始水印图像完全一致,证明了信息隐藏技术的有效性。

2. 音频信息隐藏实验结果表明,嵌入水印后的音频与原始音频在音质上几乎没有差异,水印的嵌入效果良好。

同时,提取的水印音频与原始水印音频完全一致,证明了信息隐藏技术的有效性。

3. 视频信息隐藏实验结果表明,嵌入水印后的视频与原始视频在视觉效果上几乎没有差异,水印的嵌入效果良好。

基于BMP图像数据的信息隐藏方法

基于BMP图像数据的信息隐藏方法

基于BMP图像数据的信息隐藏方法
杨晓平
【期刊名称】《计算机与现代化》
【年(卷),期】2007(0)5
【摘要】提出了一种通过增加BMP图像数据实现信息隐藏的方法.BMP图像的显示是根据文件头数据来确定图像数据的,与文件中图像数据以后的数据没有关系,将秘密信息嵌入到图像数据以后的字节中,只是增加了BMP文件的大小,并不影响图像的显示,从而实现信息隐藏.按照秘密信息的数据大小,从载密图像中读出秘密信息的字节数据,即可恢复秘密信息.该算法简单易行,载密图像和原图像在视觉上没有任何差别,具有较强的隐蔽性.仿真结果证明了算法的可行性和有效性.
【总页数】2页(P93-94)
【作者】杨晓平
【作者单位】襄樊学院机械工程系,湖北,襄樊,441053
【正文语种】中文
【中图分类】TP391
【相关文献】
1.基于BMP非图像数据区域信息隐藏算法及实现方法 [J], 赵文;
2.基于 BMP 非图像数据区域信息隐藏算法及实现方法 [J], 赵文
3.基于BMP图像的任意位信息隐藏方法 [J], 付兵;曾凡军;黄平
4.BMP文件结构的信息隐藏方法与实现 [J], 贾玉珍;靳冰;刘琮;王大海
5.改进LSB算法以增加BMP图像信息隐藏量的方法 [J], 郑皓岚
因版权原因,仅展示原文概要,查看原文内容请购买。

信息隐藏-实验二-BMP-图像信息隐藏

信息隐藏-实验二-BMP-图像信息隐藏

信息隐藏-实验二-BMP-图像信息隐藏实验二 BMP 图像信息隐藏一,实验目的1,了解BMP图像文件格式2,了解利用BMP图像文件隐藏信息的原理3,设计并实现一种基于24位真彩色BMP图像的文件信息隐藏方法。

二,实验环境1, Windows XP 操作系统2, Ultra Edit 文本编辑工具3, Matlab 7.1版本软件4, BMP格式图片文件三,实验原理1,在图像文件尾部添加任意长度的数据,秘密信息存放在文件尾部可以减少修改文件头的数据量,仅需修改文件头中的文件长度的值即可。

2,在调色板或者位图信息头和实际的图像数据之间隐藏数据,如果将秘密数据放在文件头与图像数据之间,则至少需要修改文件头中文件长度、数据起始偏移地址这两个域的值。

3,修改文件头和信息头中保留字段隐藏信息。

4,在图像像素区利用图像宽度字节必须是4的倍数额特点,在补足位处隐藏数据。

四,实验过程1,在实际的图像数据后隐藏信息(1)将载体baboon.bmp和秘密信息hidden.txt放置在同一目录下,在Windows 的MS-DOS方式下执行命令copy baboon.bmp /b + hidden.txt /a baboon1.bmp,如下图所示:图一 DOS界面(2)生成的新图像baboon1.bmp,表面上看上去与原图像几乎完全一样图二隐藏前后对比图(3)在Ultra Edit看两幅图像的结构,发现有所差别。

图三 baboon.bmp图四 baboon1.bmp(4)在Matlab中通过比较文件的实际长度和文件中保存的文件长度,就可以发现该图像是否隐藏秘密信息。

代码如下所示:clc;clear;fid=fopen('baboon1.bmp','r');%读入伪装载体图像文件[a,length]=fread(fid,inf,'uint8');%length是文件的实际长度fclose(fid);fid=fopen('baboon1.bmp','r');%读入伪装载体图像文件status=fseek(fid,2,'bof');fileb=fread(fid,4,'uint8');filelength=fileb(1)*1+fileb(2)*256+fileb(3)*256*256+fileb(4)*256^3;%文件图像中保存的文件长度diff=length-filelength;%diff表示隐藏的信息长度如果相同,表示图像没有隐藏任何信息fclose(fid);从Workspace中可以读出diff数据为8图五 Workspace(5)在Ultra Edit中手动修改文件长度,再运行上述程序,发现diff=0,表示图像隐藏并修改文件长度后,通过该方法无法发现图像有隐藏信息。

信息隐藏_实验报告

信息隐藏_实验报告

一、实验目的1. 了解信息隐藏的基本原理和方法。

2. 掌握数字图像、音频、视频等媒体中信息隐藏的实现技术。

3. 熟悉信息隐藏技术在实际应用中的重要性。

二、实验内容1. 数字图像信息隐藏2. 音频信息隐藏3. 视频信息隐藏三、实验原理信息隐藏是指将秘密信息嵌入到公开信息(如数字图像、音频、视频等)中,使得秘密信息在传输或存储过程中不易被发现。

信息隐藏技术广泛应用于网络安全、数字版权保护、隐私保护等领域。

四、实验步骤1. 数字图像信息隐藏(1)选择一幅数字图像作为公开信息,如图1所示。

(2)选择一幅与公开信息大小相同的数字图像作为载体图像,如图2所示。

(3)在载体图像中嵌入秘密信息,采用空域方法,如图3所示。

(4)提取嵌入的秘密信息,如图4所示。

2. 音频信息隐藏(1)选择一段音频作为公开信息,如图5所示。

(2)选择一段与公开信息时长相同的音频作为载体音频,如图6所示。

(3)在载体音频中嵌入秘密信息,采用时域方法,如图7所示。

(4)提取嵌入的秘密信息,如图8所示。

3. 视频信息隐藏(1)选择一段视频作为公开信息,如图9所示。

(2)选择一段与公开信息时长相同的视频作为载体视频,如图10所示。

(3)在载体视频中嵌入秘密信息,采用空域方法,如图11所示。

(4)提取嵌入的秘密信息,如图12所示。

五、实验结果与分析1. 数字图像信息隐藏实验结果表明,采用空域方法嵌入秘密信息后,嵌入秘密信息的图像与原始图像在视觉效果上基本一致,且提取的秘密信息与原始秘密信息完全相同。

2. 音频信息隐藏实验结果表明,采用时域方法嵌入秘密信息后,嵌入秘密信息的音频与原始音频在听觉效果上基本一致,且提取的秘密信息与原始秘密信息完全相同。

3. 视频信息隐藏实验结果表明,采用空域方法嵌入秘密信息后,嵌入秘密信息的视频与原始视频在视觉效果上基本一致,且提取的秘密信息与原始秘密信息完全相同。

六、实验总结通过本次实验,我们了解了信息隐藏的基本原理和方法,掌握了数字图像、音频、视频等媒体中信息隐藏的实现技术。

基于BMP图像的信息隐藏算法研究

基于BMP图像的信息隐藏算法研究
HUAN G ng m i g Yi — n
( o ue e t ,i a g ct n l T c n lg ol e J y n 2 0 0 C ia C mp t C ne J y n a o a & e h oo y l g ,i a g5 2 0 , hn) r r e Vo i C e e
维普资讯
第 6卷 第 3 期 20 7年 8月 0
广 东 交 通 职 业 技 术 学 院 学 报
Jo U RNA L O F G UAN G DO N G CO M M UN I CATI ON S PO L YTECH NI C
微 小 的。
且 要求 :① 不 可见 性 ,即嵌 入信 息 后 的 图像 与 原
始 图像 在视 觉 上无法 区分差 异 ;② 鲁 棒性( b s r ut o .
n s 。即数 据 隐藏 时直 接 对 媒体 数 据 的某 些 部 分 es )
进行 修 改 。而 不增 加载 体 的数据 。 由于 图像 天然 地含 有 噪声 形式 的冗 余 。且 人 眼对 数 字 图像 中 极 细微 的改变 无法 做 出分 辨 。所 以 以数字 图像 作 为 信息 隐藏 的载 体是 行之 有效 的 。 本文 以2 位B 4 MP 图像作研 究对象 。
meh d a dp t u r v d me h d . e s me t , h r p r f to , n us p t i wo mp o e t o s At h a me t ep o e t o t i y BMP flsa d h w i i eGR e n o t d s l t B i o t lh h f a d c re p n i g c d sa ea ay e . e t n o r s o d n o e r n lz d

实验1 基于置乱的信息隐藏算法

实验1 基于置乱的信息隐藏算法

江 西 理 工 大 学江 西 理 工 大 学 实 验 报 告 纸第 1 页/共 2页一、实验目的(1)了解信息隐藏基本原理;(2)理解图像加密技术的基本思想;(3)掌握Arnold 置乱算法和位平面算法; (4)完成8位BMP 灰度图像的置乱预处理;(5)将置乱后的秘密图像信息隐藏到载体图像的最低有效位中;二、实验内容以8位BMP 灰度图像SecretiveBmp.bmp 为秘密图像,以8位BMP 灰度图像lena.bmp 为载体图像,先用Arnold 变换算法对SecretiveBmp.bmp 进行置乱预处理,然后将置乱后的SecretiveBmp.bmp 结果图像嵌入到lena.bmp 的最低有效位中,实现信息隐藏。

(编程语言不限)三、实验步骤和设计思想Arnold 变换(Catmapping),俗称 猫脸变换!,是V.J.Arnold 在遍历理论的研究中提出的一类裁剪变换[3],它可以抽象为在平面单位正方形内绘制一个猫脸图像,这个猫脸图像由清晰变模糊。

将图像看作平面区域上的二 元函数Z=F(x,y),(x,y)∀R,通常区域R 是一个矩形(讨论R 为正方形的情况)。

对R 中的任意点(x,y),相对应的函 数值F(x,y)代表图像的信息(如灰度值等)。

随着图像的数字化,Z=F(x,y)可看作一个二维离散点阵,其元素所在的行与列对应于自变量进行取值,元素本身代表图像信息。

简言之,离散化的数字图像相当于元素之间有相关性的一类特殊矩阵。

对这一矩阵进行如下变换可以得到新的矩阵,从而实现图像的置乱处理。

一:置乱前的秘密图像读入并显示 w=imread('D:\matlab\work\lenal.bmp')。

Arnold 图像置乱:1、定义一个零矩阵用于设置每一轮arnold 变换后生成的新图像2、定义arnlod 变换过程中临时存放数据的矩阵Temp 。

encryImg 为置乱后的图像。

基于BMP图象的信息隐藏技术

基于BMP图象的信息隐藏技术

基于BMP图象的信息隐藏技术
方勇;欧晓聪;胡勇;龚海澎
【期刊名称】《四川大学学报(自然科学版)》
【年(卷),期】2004(041)002
【摘要】机密性是信息系统安全的一个重要的安全服务.信息隐藏技术可以实现数据的机密性.作者分析了BMP格式图象的特征,提出了一种利用该格式图象的数据冗余性,将信息隐藏于BMP图象中的方法,实现了数据的机密性.
【总页数】6页(P334-339)
【作者】方勇;欧晓聪;胡勇;龚海澎
【作者单位】四川大学信息安全研究所,成都,610064;四川大学信息安全研究所,成都,610064;四川大学信息安全研究所,成都,610064;四川大学信息安全研究所,成都,610064
【正文语种】中文
【中图分类】TP392
【相关文献】
1.基于BMP位图的信息隐藏技术的实现 [J], 王宏杰;陈建珍;王彩霞
2.BMP图象文件的信息隐藏技术及其实现 [J], 杨烩荣
3.基于BMP图像信息隐藏技术的研究与实现 [J], 黄革新;肖竞华
4.基于数字图象的交互式信息隐藏技术 [J], 陈振
5.一种基于BMP图像的信息隐藏技术 [J], 周开利;康耀红;冯尔理
因版权原因,仅展示原文概要,查看原文内容请购买。

信息隐藏实验报告

信息隐藏实验报告

信息隐藏实验报告实验题目【一】实现空域图像水印方法中的LSB算法:原始图像选取大小为512*512的elain图像或者goldhill图像,选择一个LSB水印算法以及适当的水印序列;利用选定的水印嵌入算法将水印信息嵌入到原始图像中。

在嵌入水印之后的图像中提取水印,是否可以判定图像中含有水印,同时计算含水印图像的峰值信噪比。

将含有水印的图像缩小为256*256之后,再放大为512*512,这时再提取水印,是否可以判定图像中含有水印。

实验结果缩略图:lsb.fig实验程序% LSB 算法:clear;A=imread('elain.bmp');B=A;message='www`s homework';m=length(message);n=size(A);k=1;for i=1:n(1)for j=1:n(2)if k<=m %如果消息输入完成则为0h=bitget(double(message(k)),8:-1:1);elseh=[0,0,0,0,0,0,0,0];endc=bitget(A(i,j),8:-1:1);if mod(j,8) == 0p=8;elsep=mod(j,8);endv=0;for q=1:7v=xor(v,c(q));endv=xor(v, h(p) );B(i,j)=bitset(A(i,j),1,v);if mod(j,8) == 0k=k+1;endendend% 提取信息out=char;tmp=0 ;t=1;for i=1:n(1)for j=1:n(2)c=bitget(B(i,j),8:-1:1);v=0;for q=1:8v=xor(v,c(q));endif mod(j,8)==0p=1;elsep=9-mod(j,8);endtmp=bitset(tmp,p,v);if mod(j,8)==0out(t)=char(tmp);t=t+1;tmp=0;endendend%显示图像figure;subplot(1,2,1);image(A);axis('square');title('原始图像');subplot(1,2,2);imshow(B);axis('square');title('加入水印后图像');out实验题目【二】实现基于扩频的图像水印算法:原始图像选取大小为512*512的elain图像或者goldhill图像,水印图像选取为以XXX印或者XX之印(XXX为自己的名字)为图案的、适当大小的二值黑白图像,再选取一个基于扩频的图像水印算法;利用选定的水印嵌入算法将水印信息嵌入到原始图像中。

BMP图像信息隐藏新型检测方法研究

BMP图像信息隐藏新型检测方法研究
Ab ta t S e a o r py s n v lrsa c ae sr c : t g ng a h i a o e ee rh ra、 i s ee a t O o s f ils e iia Sg a P oe s g, I g P oe s g, S ec t r l n t lt o fe A Dgt l in l rc si i v d n ma e rc si n p eh poesn rcsig, P ten  ̄c g io Da a o a tr Peo n in, t t C mmuia i ncto Mut da eh oo y, Cr poo y n S o n, li i tc nlg me y t lg a d O n. T ee r sme t g ng a h fe wae hr a e o Se a o r py re r o ] e nt 0 po l O o la n n re f r e p t d wn d. H we e te tg n l i eh ius r si e tv l wek、 N t t e o o v r h S e a ays t cnq e ae tl l ie s l a r y e o ma y tg d tcin e h d ae n S e o e eto m t os r
疑 点统 计算 法和 层 次 比 的算 法 ,并 使 用 C语 言 进行 实现 。
处 理 、模 式识 别 、数 字 通 信 、 多媒 体技 术 、
于其 相应 的检 测技术却还 是相对薄 弱,很
主 要 针 对 的 是 空域 的 盲检 测算 法 。对 . B MP 的 加 入 隐 藏信 息后 的 特 点 。研 究 出 了最 可
f r h v r d iu tos i ef r d h sa it a ays e ei ns n h r sl f loih t v r d mo n o hd e d t a d o te ai sta in , prome t e t tsi n l i xpr e c s me t o t e eut ag r ms o a i a u t f i n a a n o t e d v ros odtos f r i ma e is O et hi ef r a c . aiu cn i n o oi n i g i g fe t t s t er ro m n e l p Ke or : bt p se o n l i; se a o r py;tg dt cin y w ds i ma ;t g a ays s tg ng a h se o e eto

一种基于BMP图像的文本隐藏算法

一种基于BMP图像的文本隐藏算法

一种基于BMP图像的文本信息隐藏算法一、引言经常上网的人可能都有这样的经历:经常能在某些网站论坛上看到一些帖子,贴了一张图片,说其中隐藏了惊人的秘密,回帖方能看到,其实最后看到的只是在图片中隐藏的一些文本信息,但这是怎么实现的呢?其实这是信息隐藏技术的一种方法。

所谓信息隐藏技术,就是将某些重要信息嵌入到数字载体(如图像、声音、视频等)中去,而不损坏数字载体的原始特征。

近年来随着因特网的迅猛发展,网络成为最主要的信息传递渠道,然而网络传输的不安全性使信息极容易泄漏和被截获,网络传输的安全性日益成为人们关注的焦点,信息隐藏技术的诞生为解决这些问题提供了一个新的方向。

由于它具有良好的隐蔽性,含有重要信息的载体跟它实际的特征看起来没有任何区别,使得非法用户在截获到媒介时根本不怀疑媒介中含有隐藏信息。

信息隐藏技术已被广泛应用于版权保护、隐藏标识和安全不可见通信等领域。

信息隐藏技术主要是利用两个特点:一是利用数字载体本身存在很大的冗余性将信息嵌入到其中进行秘密传递;二是利用人的视觉和听觉对某些信息实现屏蔽。

本文介绍了一种基于BMP图像隐藏文本文件的算法,将文本文件隐藏在一幅24位的BMP图片之中,嵌入了文本信息的BMP图片和原始图片在外观上没有任何区别,并可以正确的从中提取出所隐藏的文本信息。

二、算法原理算法的核心思想是将文本信息以比特流的形式嵌入到原始BMP图像各像素点最不重要的位(Least Significant Bits,LSB,即最低有效位)上,这可充分保证嵌入的信息字节不可见。

对于由连续像素组成的图像(本文主要针对24位的BMP图片),每个像素由R(红色)、G(绿色)、B(蓝色)三个颜色分量组成,根据亮度公式I=0.3R+0.59G+0.11B可以得知:人眼对于图像中的绿色分量最为敏感,对蓝色分量最不敏感。

绿色分量每改变一个单位对人眼的刺激效果,与蓝色分量改变5个、红色分量改变2个单位对人眼的刺激效果是等价的。

信息隐藏实验四二值图像信息隐藏汇编

信息隐藏实验四二值图像信息隐藏汇编

实验四二值图像信息隐藏一、实验目的了解二值图像的特点,掌握基于二值图像的信息隐藏原理,读懂两种基于二值图像的信息隐藏方法,并自己设计另一种二值信息隐藏的方法。

二,实验环境(1)Windows XP操作系统;(2)MATLAB 7.2版本软件;(3)二值图像文件。

三、实验原理二值图像又称为单色图像或黑白图像,一般用1或0表示黑色或白色像素点,利用二值图像信息隐藏的方法主要是根据图像中黑白像素数量的比较来隐藏信息。

方法一:把一个二值图像分成一系列矩形图像区域B,某个图像区域B中黑色像素的个数大于一半,则表示嵌入0;如果白色像素的个数大于一半,则表示嵌入1。

但是当需要嵌入的比特与所选区域的黑白像素的比例不一致时,为了达到希望的像素关系,则需要修改一些像素的颜色。

方法二:采用游程编码方法在二值图像中隐藏信息。

秘密信息嵌入时修改二值图像的游程长度,如果秘密信息位是0,则修改该游程长度为偶数;如果为1,则修改游程长度为奇数;如果秘密信息的取值与游程长度的奇偶性相匹配,则不改变游程长度。

方法三:将二值图像分块,使用一个与图像块大小相同的密钥二值图像块,与每一个图像块按像素进行“与”运算,“与”运算的结果可以确定是否在该块中嵌入数据,或嵌入怎样的数据。

四,实验步骤下面以方法三为原理,进行实验。

1.嵌入秘密信息主要思想:首先将载体图像分块,块数为秘密信息的二进制码个数,分块大小为载体图像的长和宽分别除以块数;设定一个与图像块大小相同的密钥二值图像块,具体为一个8×8的数组,其中前4行全为1,后4行全为0;将载体图像块与密钥二值图像块进行“与”运算。

经过运算后,参与统计的像素变为前4行。

接下来统计“有效”像素黑白的个数,某个图像区域B中黑色像素的个数大于“有效”像素一半,则表示嵌入0;如果白色像素的个数大于“有效”像素一半,则表示嵌入1。

但是当需要嵌入的比特与所选区域的黑白像素的比例不一致时,为了达到希望的像素关系,则需要修改一些像素的颜色。

信息隐藏位图法

信息隐藏位图法

位图法说明
• 在具体实验中还需要在所传输的实验数据之前添加两个标识符: • 第一个用来标识所传输文字的类型,称为“文字标识符”,占用1个 字节,如果是英文,则置为00;如果是中文,则置为01。 • 第二个用来标识传输的明文数据长度,称为“数据标识符”,在做实 验时这个标识符选择1个字节来进行存储,也就是说我们要传输的明 文最多可以有99个(采用10进制)汉字或英文字母、符号。在提取信 息时,如果传输的是汉字,数据标识符×4×4为后面传输的二进制代 码位数,如果传输的是英文和符号,则数据标识符的值×2×4为后面 传输的二进制代码位数。
信息嵌入总结
• 将信息嵌入BMP文件的步骤为: • (1)将待隐藏信息转化为二进制数据码流; • (2)将BMP文件图像数据部分的每个字节的奇偶性与上 述二进制数码流进行比较; • (3)通过调整字节最低位的“0”或“1”,改变字节的奇 偶性,使之与上述二进制数据流一致,即将信息嵌入到24 位BMP图像中。
位图法说明
• 举个例子,如果我们要传输中文“你好”,查得对应的 Unicode码是:4F60 597D。因为是中文,所以文字标识符 取为:01;因为只有两个汉字,所以数据标识符取为:02 (即后面传输的二进制数据代码有2×4×4=32位)。所 以我们要传输的数据应该是:01024F60597D,变为二进 制就是 000000010000001001001111011000000101100101111101, 按照位图法的方法嵌入图像中即可。
结论
• (1)由于原始24位BMP图像文件隐藏信息后,其字节数 值最多变化1(因为是在字节的最低位加“1”或减“1”), 该字节代表的颜色浓度最多只变化了1/256,所以,已隐 藏信息的BMP图像与未隐藏信息的BMP图像,用肉眼是看 不出差别的; • (2)将信息直接嵌入像素RGB值的优点是嵌入信息的容 量与所选取的掩护图像的大小成正比,而不再仅仅局限于 调色板的大小;

一种基于BMP图像的信息隐藏技术

一种基于BMP图像的信息隐藏技术

3 同时从 式 ( ) 可看 出 ,u ye只与载体 图像 每行 数据 的 字节数 除 以 4的余数 有关 , 样 , 以将 图 ; 1也 n mb t 这 可
像 宽度 取很 小 , 最小 可 以到 1个像 素 , 而减 小载 体 图像 的大 小 。 当 n mb t 定后 , 体 图像 能够 存储 从 u ye确 载
际的 B MP图像各行 数据 的字节数可 以不是 4的倍 数 , 以这样 的图像 作为载体 图像 , 将秘密嵌 入到并不 表示 图像数据 的字节 中, 从而实现信 息隐藏。该 算法不改变 图像 本身的数据和 文件大小 , 载密图像和原 图像 在视 觉上没有任何 差别 , 有很强的 隐蔽性 。按 照秘密信息 的数 据大小 , 载密 图像 中依 次读 出秘密信 息的字节 具 从 数据 , 即可恢复 秘密信息 。仿 真结果证 明了算法 的可行性和有效性 。 关键词 : 息隐藏; MP图像 ; 信 B 嵌入算法 中图分类号 : N9 1 7 T 1.3 文献标识码 : A 文章编号 :0 16 0 (0 7 0 —0 30 1 0— 6 0 2 0 ) 20 1—4
秘密信息的总字节数(u b ttt ) n m ye a 取决于图像高度(i e h )其值为: o1 b i t, H g
n m b t t t l bHeg t n mb t 。 u y e o a — i i h × u y e () 2
收 稿 日期 :0 61 —5 2 0— 21 基 金 项 目: 南 省 自然 科 学 基 金 资 助 项 目(0 0 ) 海 6 3 2 作 者 简 介 : 开 利 (9 5 )男 , 北 利 川 人 , 南 大 学 副教 授 , 导 。 周 16 一 , 湖 海 硕
1 B MP 图像 文 件结 构 ]

LSB算法实现BMP图像中的信息隐藏及提取

LSB算法实现BMP图像中的信息隐藏及提取

实验4 LSB算法实现位图图像中的信息隐藏及提取马亮,njnu一、实验目的通过对LSB算法的编程实现,深入理解该算法的设计思想及其应用。

二、实验类型程序设计。

三、实验原理LSB是L.F.Turner和R.G.van Schyndel等人提出的一种典型的空间域信息隐藏算法。

考虑人视觉上的厄不可见性缺陷,信息一般嵌入到图像最不重要的像素位上,如最低几位。

利用LSB算法可以在8色、16色、256色以及24位真彩色图像中隐藏信息。

对于256色图像,在不考虑压缩的情况下,每个字节存放一个像素点,那么一个像素点至少可以隐藏1位信息,一张640*480像素的256色图像至少可隐藏640*480=307200位(38400字节)的信息。

对于真彩色图像,同样可以按照如上的方法计算可以隐藏的信息量。

四、实验环境(1)系统环境:CPU:Inter® Core™2(2)开发环境:IDE:Microsoft Visual Studio 2005Language:Microsoft C#五、实验内容在上述系统环境和开发环境中编程实现LSB算法,包括信息的隐藏和提取。

六、程序说明(1)程序运行界面如下图所示:图1 信息隐藏界面图2 信息提取界面(2)程序功能说明➢自动计算最大隐藏信息量并给出提示➢可以在24位位图中隐藏大小不超过最大隐藏信息量的任意类型文件➢自动备份原始图片➢自动检测伪装图片中是否包含隐藏信息➢正确提取出LSB中的隐藏信息并还原出文件七、实现过程(1)LSBEncrypt类该类用于实现LSB的信息嵌入算法,类中各字段及方法说明如下:字段private string _originalPicPath 原始图片路径private string _hidingInfoPath 隐藏信息路径private FileStream _picStream 原始图片的文件流private FileStream _infoStream 隐藏信息的文件流方法➢private void HideInfoLength();输入:无输出:无功能:将图像的第55至第66字节的LSB替换为隐藏信息文件的长度➢private void HideInfoContent();输入:无输出:无功能:将隐藏信息以每3个字节写入原始图像从第67字节开始的每12字节块的LSB中➢private byte[] ConvertToBinaryArray(long x);输入:long x 要转换的长整型数,这个数的大小不会超过2的24次方输出:byte[] 二进制表示的字节数组功能:将长整型数转换为24位二进制表示的字节数组➢private byte[] ConvertToBinaryArray(byte[] array);输入:byte[] array 长度为3的字节数组输出:byte[] 二进制表示的字节数组功能:将隐藏信息以每3个字节写入原始图像从第67字节开始的每12字节块的LSB中➢public void ExecuteEncrypt();输入:无输出:无功能:执行信息隐藏操作(2)LSBDecrypt类该类用于实现LSB的信息提取算法,类中各字段及方法说明如下:字段private string _camouflagePicPath 伪装图片的路径private string _infoSavePath 还原出的隐藏信息的保存路径private FileStream _camouflageStream 伪装图片的文件流private FileStream _infoSaveStream 还原出的隐藏信息的文件流方法➢private int GetInfoLength();输入:无输出:int 隐藏信息长度功能:从伪装图片的第55至第66字节中提取出隐藏信息的长度➢private byte[] ExtractHidingBits(byte[] arr);输入:byte[] arr 长度为12的字节数组,含有隐藏信息输出:byte[] 从12字节块中提取出的3字节隐藏信息功能:利用位操作提取伪装文件流中每12字节的LSB位➢public bool ExecuteDecrypt();输入:无输出:bool 执行成功返回true,失败返回false功能:执行信息提取操作八、实验小结及思考(1)程序测试✧信息隐藏载体位图图像:图3 载体图像要隐藏的信息:图4 待隐藏的信息执行信息隐藏算法:图 5 隐藏信息成功信息隐藏选择伪装图片和还原出的隐藏信息的保存路径:图 6 信息提取还原出的文本文件test.txt:图7 还原出的文件(2)实验思考在信息隐藏的研究中,主要研究信息隐藏算法与隐蔽通信。

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

实验二 BMP 图像信息隐藏
一,实验目的
1,了解BMP图像文件格式
2,了解利用BMP图像文件隐藏信息的原理
3,设计并实现一种基于24位真彩色BMP图像的文件信息隐藏方法。

二,实验环境
1, Windows XP 操作系统
2, Ultra Edit 文本编辑工具
3, Matlab 版本软件
4, BMP格式图片文件
三,实验原理
1,在图像文件尾部添加任意长度的数据,秘密信息存放在文件尾部可以减少修改文件头的数据量,仅需修改文件头中的文件长度的值即可。

2,在调色板或者位图信息头和实际的图像数据之间隐藏数据,如果将秘密数据放在文件头与图像数据之间,则至少需要修改文件头中文件长度、数据起始偏移地址这两个域的值。

3,修改文件头和信息头中保留字段隐藏信息。

4,在图像像素区利用图像宽度字节必须是4的倍数额特点,在补足位处隐藏数据。

四,实验过程
1,在实际的图像数据后隐藏信息
(1)将载体和秘密信息放置在同一目录下,在Windows的MS-DOS方式下执行命令copy /b + /a ,如下图所示:
图一 DOS界面
(2)生成的新图像,表面上看上去与原图像几乎完全一样
图二隐藏前后对比图
(3)在Ultra Edit看两幅图像的结构,发现有所差别。

图三
图四
(4)在Matlab中通过比较文件的实际长度和文件中保存的文件长度,就可以发现该图像是否隐藏秘密信息。

代码如下所示:
clc;
clear;
fid=fopen('','r');%读入伪装载体图像文件
[a,length]=fread(fid,inf,'uint8');%length是文件的实际长度
fclose(fid);
fid=fopen('','r');%读入伪装载体图像文件
status=fseek(fid,2,'bof');
fileb=fread(fid,4,'uint8');
filelength=fileb(1)*1+fileb(2)*256+fileb(3)*256*256+fileb(4)*25
6^3;
%文件图像中保存的文件长度
diff=length-filelength;
%diff表示隐藏的信息长度如果相同,表示图像没有隐藏任何信息
fclose(fid);
从Workspace中可以读出diff数据为8
图五 Workspace
(5)在Ultra Edit中手动修改文件长度,再运行上述程序,发现diff=0,表示图像隐藏并修改文件长度后,通过该方法无法发现图像有隐藏信息。

2,文件头与图像数据之间隐藏信息
(1)在数据区开始之前隐藏信息,也就是在54个和55个字节之间隐藏信息。

代码如下所示:
clc;
clear;
wm=randsrc(1,300,[0 1]);%产生随机水印
fid=fopen('','r');%读入载体图像文件
[a,length]=fread(fid,inf,'uint8');
fclose(fid);
msgfid=fopen('','r');%打开秘密文件
[msg,count]=fread(msgfid);
fclose(msgfid);
wa=a; %a为图像变为uint8类型后的一维矩阵
j=1;
wa(11)=54+count;%修改偏移量,其中count为7
wa(3)=wa(3)+count;%修改图像数据的文件长度
for i=55:61 %隐藏7位信息
wa(i)=uint8(msg(j,1));%隐藏密码信息
j=j+1;
end
for i=55:length
wa(i+7)=a(i);
end
figure;
wa=uint8(wa);
fid=fopen('','wb');
fwrite(fid,wa);
fclose(fid);
subplot(1,2,1);imshow('');%显示原始图像
subplot(1,2,2);imshow('')%显示新图像
(2)从图像看,两幅没有什么区别
图六隐藏前后对比图
3,在图像文件头和信息头的保留字段中隐藏信息
BMP图像中第7,8,9,10字节是保留的,必须为0,所以可以在这四个字节中隐藏秘密信息。

下面代码即隐藏了0,1,2,3这四个信息。

clc;
clear;
wm=randsrc(1,300,[0 1]);%产生随机水印
fid=fopen('','r');%读入载体图像文件
[a,length]=fread(fid,inf,'uint8');
fclose(fid);
wa=a;
%在BMP的7,8,9,10保留字中隐藏秘密信息0 1 2 3,ASCII值为)Ox30 Ox31 Ox32 Ox33
wa(7)=48;
wa(7)=49;
wa(7)=50;
wa(7)=51;
figure;
wa=uint8(wa);
fid=fopen('','wb');
fwrite(fid,wa);
fclose(fid);
subplot(1,2,1);imshow('');%显示原始图像
subplot(1,2,2);imshow('')%显示新图像
图七隐藏前后对比图
五,实验总结
通过该实验,我了解BMP图像文件格式,了解利用BMP图像文件隐藏信息的原理,并通过在实际的图像数据后隐藏信息,文件头与图像数据之间隐藏信息,以及在图像文件头和信息头的保留字段中隐藏信息这三种方式实现了信息隐藏。

相关文档
最新文档