- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
信息隐藏实验十二基于SPA的音频隐写分析
一、实验目的
了解抽样对分析(Sample Pairs Analysis,SPA)方法的基本原理,掌握使用SPA方法来判断音频文件是否经过LSB隐写,设计并实现一种基于SPA音频隐写分析的算法。
二、实验环境
(1)Windows 7操作系统;
(2)MATLAB R2012b版本软件;
(3)携密音频文件。
三、原理简介
LSB隐写分析方法有很多种,前面两次实验已经介绍了卡方和RS两种方法,本次实验介绍一种抽样对分析方法来分析音频文件是否经过LSB隐写。在SPA算法中,要用到RS算法中所定义的函数,即
(1)
式中:定义该函数为,用函数来描述信号的域相关性。在音频信号中,相邻抽样值之间具有很高相关性。因此选择相邻的抽样值对来构成一个抽样组。在LSB隐写之后,函数的期望值变为
(2)
函数的期望值变化为
(3)
在LSB隐写过程中(假设隐写率为),若秘密信息随机地嵌入到音频载体中,抽样值对将会有四种变化模型:
(1)10模型:变化,不变化;。
(2)01模型:变化,不变化;。
(3)11模型:和都变化;。
(4)00模型:和都不变化;。
假设抽样值用比特的二进制表示,令为抽样值最重要的比特值,为LSB比特值。因此,。这样就能表示为:,。在下表1中对进行统计。
表 1 函数的期望值变化
0
0
0
0 实验数据表明,的抽样值对的数量和的抽样值对数量近似相等,而且,抽样值对的数量和抽样值对的数量近似相等。因此,这些对于式(3)不会有任何影响,由于LSB隐写方式并不会改变和的值,因此式(3)的变化主要是由那些的抽样值对所引起的。同时,和的抽样值对的数量要大于和的抽样值对的数量,因此式(3)值为正,也就是说,LSB隐写会增大的值。因此,本次实验将会集中分析时的抽样值对的情况。
对于比特的音频信号,LSB隐写嵌入的过程并不会引起抽样值前面比特的变化,也就是说,和不会改变。队友没有秘密信息的音频信号,当时抽样值对有四种情况:代表的值对;代表的值对;代表的值对;代表的值对。在LSB隐写嵌入之后,当时抽样值对也有四种情况:用分别代表。抽样值对有四种变化模式01,10,11,00。可通过构造一个有限状态机来模拟抽样对序列的变化情况,如下图1所示。
图 1 描述状态变化的有限状态机
用下列各式来反映序列和的相关性。符号代表抽样对序列的基数:
(4)
(5)
(6)
(7)
对于值对(用到的)和值对(用到的),发现在LSB隐写之前,近似相等(都用来表示),在LSB隐写之后几乎不变。因此能够通过或者来得到。上式变化如下:
(8)
通过求解上面的方程可以得到隐写率:
(9)
式中:;。
四、实验步骤
1. 音频文件LSB嵌入
本次实验中使用SPA方法来分析利用S-Tools工具生成的携密音频文件。
2. SPA分析
源代码spa.m如下:
%基于相邻抽样值统计的隐写分析方法
close all;
clear all;
%读入音频文件
fid=fopen(.wav,r);
%前44字节为头信息
status=fseek(fid,44,bof);
a=fread(fid,[4,inf],uint8);%读入 all of the simples
%a=fread(fid,5000,uint8);
%初始化各个统计量
B0=0;
B1=0;
B2=0;
B3=0;
B=0;
D1=0;
D2=0;
D=0;
k1=0;
k2=0;
%求各个统计量
[B0,B3]=sumad(a);
B1=sumb(a);
B2=sumc(a);
x=[B1,B2];
B=mean(x);%取x的算术平均值
D1=sume(a);
D2=sumf(a);
y=[D1,D2];
D=mean(y);%取y的算术平均值
k1=B0+B3+2*B-4*D;
k2=4*B-4*D;
z=1-sqrt(k2/k1)%求解隐写率
close all;
function [b0,b3]=sumad(a)
n=length(a);
if(mod(n,2)==0)
n=n;
else
a(n+1)=0;
n=n+1;
end
b0=0;
b3=0;
for i=1:n/2
if(a(2*i-1)==a(2*i))
if((mod(a(2*i-1),2)==0)(mod(a(2*i),2)==0))
b0=b0+1;
els
您可能关注的文档
最近下载
- 【解读】GB17761-2018电动自行车安全技术规范.pdf VIP
- AD832I机台操作指引.pdf VIP
- 《植物的茎》(教案)-中职农林牧渔大类《植物生长和环境》同步教学(高教版)(第四版)(全一册).docx VIP
- 证券从业资格证金融市场基础知识模拟卷及答案解析.docx VIP
- 证券从业资格证考试金融市场基础知识冲刺试题.docx VIP
- 证券从业资格证《金融市场基础知识》考前练习及答案解析.docx VIP
- 证券从业《金融市场基础知识》基础练及答案解析.docx VIP
- 证券从业资格考试金融市场基础知识预测试题及答案解析.docx VIP
- 2021年证券从业考试《金融市场基础知识》习题及答案.docx VIP
- 高中英语学业质量标准研究.pptx VIP
文档评论(0)