信息隐藏——图片基础
文章目录
- 一些名词
- 原理框图
- 基本要求
- 系统特性
一些名词
首先讲几个重要名词,载体对象、伪装对象和伪装密钥。A向B秘密传递一些信息m,不想被别人知道,于是A要从一个随机消息源中随机的选取一个无关紧要的消息c,相当于一个选择一个掩体,即使消息传递时被别人看到也不会引起怀疑,这个掩体消息c就称为载体对象。包含m的c称为伪装对象。而秘密信息的嵌入过程是需要密钥的,这个密钥只有A和B知道,就是伪装密钥。
原理框图
下面是原理图,秘密消息和载体对象c通过信息嵌入算法变成伪装对象,就可以经过不安全的信道,利用密钥进行信息提取算法,将秘密消息安全的传递给B,也不会引起别人的怀疑。就像咱们初中上课的时候给同学传小纸条,比如A想问B中午吃什么,又肯定不能被老师发现,这时A借助一本书,将小纸条夹在书里传递给同学B,纸条上的消息就相当于秘密消息m,书是载体对象c,而夹着纸条的书就是伪装对象c’,通过若干名同学的传递,相当于不安全信道,安全的将夹着纸条的书传递到了B同学手上,假设AB事先约定好了纸条夹在第几页,这个页数即是密钥。B利用“密钥”就看到了A传递的秘密消息,而对于老师和同学们来说传递的只是一本书。
下面以图片为例,讲一个简单的图片隐藏,首先说一些图像的类型。
真彩图像:指图像中的每个像素值都分成R、G、B三个基色分量。
灰度图像:让像素点矩阵中的每一个像素点都满足关系R=G=B的图像,此时的这个值叫做灰度值。灰度图像可以进行位平面分解,灰度值在0-255之间,共有256级亮度,所以可以将每个像素点的十进制数值都转变为八位的二进制,将所有像素点的这八位二进制数的同一位提取出来组成图像,就可以分解组成八张位平面图像。
二值图像:图像中的任何像素点的灰度值均为0或者255,分别代表黑色和白色。
索引图像:和灰度图像比较类似,它的每个像素点也可以有256种颜色容量,但它可以负载彩色。当灰度图像转换成索引模式时,系统会自动根据图像上的颜色归纳出能代表大多数的256种颜色,就像一张颜色表,然后用这256种来代替整个图像上所有的颜色信息。索引的图像只支持一个图层,并且只有一个索引彩色通道。
数据矩阵就是将图像数据矩阵化,以行和列来显示图像数据。
在对图像影响最小的位平面图像中,进行一些数值的修改,人的肉眼难以察觉,所以可以将待嵌入的图像也转化为二进制,嵌入到这些位平面当中,从而实现图片的信息隐藏。而提取的过程则是逆向地将嵌入后的图片的对应位置的数值再提取出来组合成图片。
下面是一个实例,首先读取一张图片文件,size用于读取图像尺寸,这个图像的像素值是376500,对原始图像I1中的前200行、前200列进行+1操作,得到I2,I2和I1用肉眼看来难以区分的,但实际上I2比I1多了200200个数据,用I3=I2-I1使得前200行、前200列全为1,其余行和列全为0,灰度值01均为黑色,这里I3255的目的是为了拉大区分度,0255=0为黑色,1*255=255为白色,嵌入消息的部分显而易见。
这个白色的矩阵就是前200行和列。
基本要求
实现信息隐藏的基本要求是载体对象是正常的,意思是要用常用的载体,这样才不易引起怀疑。无法区分不仅指人类视觉听觉无法区分,安全性高的信息隐藏也要使计算机无法区分。信息隐藏的安全性取决于第三方有没有能力将载体对象和伪装对象区别开来。对伪装对象进行正常处理,一定不要破坏隐藏的信息。
系统特性
信息隐藏系统有很多特性:
安全性包括系统自身算法的安全性和各种攻击情况下的安全性,真正的安全就是攻击者经过各种方法仍然不能判断是否有信息隐藏。
鲁棒性指嵌入水印后的数据经过各种处理操作和攻击操作后,不导致其中的水印信息丢失或者被破坏,包括传输过程中的信道噪音、滤波操作、重采样、有损编码压缩、D/ A或A/ D转换等。
安全性和鲁棒性之间存在一种平衡。安全性高鲁棒性差:c’与c难以区分,信息隐藏必须采用载体的随机噪声,经过有损压缩或者攻击者在c’中加入随机噪声,就可以抹去隐藏信息。鲁棒性强安全性低:隐藏信息系统不易被破坏但隐藏信息会改变载体的某些特征,严重降低载体质量。
透明性:利用人类视觉系统或听觉系统属性,经过一系列隐藏处理,使目标数据没有明显的降质现象,而隐藏的数据却无法人为地看见或听见。
自恢复性:经过一些操作或变换后,可能会使封面信息产生较大的破坏,如果只从留下的片段数据,仍能恢复隐藏信号,而且恢复过程不需要宿主信号,这就是所谓的自恢复性。
可纠错性:为了保证隐藏信息的完整性,使其在经过各种操作和变换后仍能很好的恢复,通常采取纠错编码方法。
信息隐藏——图片基础相关推荐
- matlab信息隐藏图片,信息隐藏 实验二 BMP 图像信息隐藏
实验二 BMP 图像信息隐藏 一,实验目的 1,了解BMP图像文件格式 2,了解利用BMP图像文件隐藏信息的原理 3,设计并实现一种基于24位真彩色BMP图像的文件信息隐藏方法. 二,实验环境 1, ...
- 图片嵌入隐藏-大容量的信息隐藏算法
今天分享一下最近看到的一个图片嵌入隐藏的算法. 这是一种基于空间域的自适应多平面位的信息隐藏算法.该算法计算复杂度低.信息隐藏量大.且有实验表明在不影响图像视觉效果的前提下,其信息隐藏量比LSB算法大 ...
- 信息隐藏与数字水印实验:图片类隐写(MATLAB)
文章目录 一.在BMP图像中隐藏数据 实验一:在BMP图像数据后隐藏数据 实验二:在文件头与图像数据之间隐藏信息 二.图像LSB隐写 实验一:在图像中嵌入相同分辨率的二值图像 实验二:在图像中嵌入不同 ...
- matlab信息隐藏和提取,使用matlab进行图像信息隐藏和提取
基于格式的信息隐藏方法通常在文件头与图像数据之间,或图像数据末尾添加秘密信息,具有实现简单,透明性高,隐藏容量大等多个优点:LSB图像信息隐藏算法是将秘密信息隐藏在图像像素数据的低位上来隐藏信息的方法 ...
- 信息隐藏技术综述——粗浅入门
本文为2017年十一月做的关于信息隐藏技术的PPT汇报的配套讲稿,相关参考资料已上传至 (http://download.csdn.net/download/sir_chai/10104787) 第一 ...
- 信息隐藏隐写系统框架
信息隐藏中隐写是其中很重要的一部分.本文通过一段时间的CTF的学习结合个人CTF比赛杂项选手的刷题经历总结.对一部分自己所学过的隐写进行系统的概括. 隐写 隐写相关概念 定义 隐写分析(stegana ...
- 【期末复习】北京邮电大学《数字内容安全》课程期末复习笔记(2. 信息隐藏与数字水印)
[相关链接] [期末复习]北京邮电大学<数字内容安全>课程期末复习笔记(1. 绪论) [期末复习]北京邮电大学<数字内容安全>课程期末复习笔记(3. 文本安全) [期末复习]北 ...
- Windows下C 用 Socket 发送图片--基础
Windows下C 用 Socket 发送图片--基础 转载:http://blog.csdn.net/yulinxx/article/details/51338214 服务器端: #include ...
- java bmp信息隐藏_BMP图像信息隐藏及检测
1.实验目的 (1)了解BMP图像文件格式 (2)了解利用BMP图像文件隐藏信息的原理 (3)掌握基于24位真彩色BMP图像的文件信息隐藏方法 2.实验内容 (1)在图像数据后隐藏信息 (2)文件头与 ...
最新文章
- Swift类与结构、存储属性、计算属性、函数与方法、附属脚本等
- [Machine Learning]--无监督学习
- tensorflow 制定 CPU 或GPU
- Linux电源管理(5)_Hibernate和Sleep功能介绍【转】
- SourceInSight自定义命令说明与应用
- java yeild_Java 中 Thread.yield() 方法详解
- mysql 实例与用户_MySQL(17):用户登录实例
- LeetCode 1 两数之和 python
- vue延迟渲染组件_做一个可复用的 echarts-vue 组件(延迟动画加载)
- 本地拒绝服务漏洞修复建议
- ABAQUS2017帮助文档查看_51CAE_新浪博客
- 爬取三个acm网站题库(neuqoj pku hdu)
- 个个给力2010年十大国产软件新品回顾
- python实际应用2-拆分PDF
- dwf怎么合成一个_图纸集批量发布单页dwf的方法——院办质量小组
- 4.JavaScript对象和初始面向对象
- Android Studio往模拟器添加音乐
- Excel数据分析从入门到精通(三)函数进阶-52个Excel函数之清洗类函数
- 大张伟侮辱了恩克,优酷侮辱了世界杯
- 手机删除文件还有救,5个不错的Android数据恢复软件
热门文章
- Mini LED遇到电竞将擦出怎样的火花,三星玄龙骑士电竞显示器Neo G9给你答案
- [ATL/WTL]_[初级]_[窗口如何实现一个Tooltip]
- 服务器内存不足上传文件解决办法,电脑内存不足的解决方法
- linux系统运行级别wq命令,Linux系统运行级别和关机重启命令介绍
- 在电脑上玩手机游戏绝地求生:全军出击
- Vim教程2 在文件中的移动
- 哈佛大学凌晨四点半的景象[转]
- redisson使用全解——redisson官方文档+注释(上篇)
- #devopstools 用DD测试磁盘读写速度
- ShowModal 关闭问题