• 大小: 4.43MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-08-10
  • 语言: C/C++
  • 标签: lsb,水印  

资源简介

一种基于LSB算法的,用C语言实现的数字水印方法,简单易懂。

资源截图

代码片段和文件信息

#include
#include
using namespace std;
#define N 100

void Shuiyin()
{
int i;
char name[50];//文件名
int length;//文件长度
char *buf;//文件内容
memset(name 0 50);
cout << “输入要打开的图片:“;
cin >> name;
FILE * f = fopen(name “rb“);//二进制方式
if(!f)
{
cout << “图片“ << name << “打开失败“ << endl;
return;
}
fseek(f0 SEEK_END);//seekend 2 把指针放到末尾
length = ftell(f);//length=文件长度
buf = new char[length + 1];
fseek(f 0 SEEK_SET);
fread(buf length 1 f);
buf[length] = ‘\0‘;
for(i=501;i<1000;i++)
{
buf[i]=buf[i]&254;
if(i%5==1||i%5==2||i%5==0)
{
buf[i]=buf[i]+1;
}
}
memset(name 0 50);
cout << “输入要保存的文件名:“;
cin >> name;
f = fopen(name “wb“);
if(!f)
{
cout << “保存图片“ << name << “失败“ << endl;
return;
}
cout << “文件“ << name << “保存完毕“ << endl;
fwrite(buf length 1 f);
fclose(f);
}

void Yanzheng()
{
int it=0;
char name[N];//文件名
long length;//文件长度
char *buf;//文件内容
memset(name 0 N);//初始化name
cout << “输入要打开的图片:“;
cin >> name;
FILE * f = fopen(name “rb“);//二进制方式
if(!f)
{
cout << “图片“ << name << “打开失败“ << endl;
return;
}
fseek(f0 SEEK_END);//seekend 2 把指针放到末尾
length = ftell(f);//length=文件长度
cout<<“源文件大小:“< buf = new char[length + 1];
fseek(f 0 SEEK_SET);//把指针放于文件的首部
fread(buf length 1 f);//每一个buf都指向文件
buf[length] = ‘\0‘;
for(i=501;i<1000;i++)
{
if(i%5==1||i%5==2||i%5==0)
{
if(buf[i]&1)
{
t++;
}
}
else
{
if(buf[i]&1)
{}
else
{
t++;
}
}
}
if(t==499)
{
cout<<“文件完整,未被修改“< }
else
{
cout<<“文件被修改了不完整“< }
fclose(f);
}

void main()
{
int tt=1;
char choice;
while(tt==1)
{
cout< cout<<“   完整性验证  “< cout<<“1、加入水印   “< cout<<“2、验证图像   “< cout<<“3、退出   “< cout<<“请输入你要操作的序列号: “;
cin>>choice;
if(choice==‘1‘)
{
Shuiyin();
}
else if(choice==‘2‘)
{
Yanzheng();
}
else if(choice==‘3‘)
{
cout<<“谢谢使用“;tt=0;break;
}
else
{cout< }
getchar();
system(“pause“);
}


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      59904  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\Debug\数字水印LSB.exe

     文件     691448  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\Debug\数字水印LSB.ilk

     文件     756736  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\Debug\数字水印LSB.pdb

     文件   15990784  2013-05-23 15:01  C语言信息隐藏数字水印LSB算法\ipch\数字水印lsb-3d04066b\数字水印lsb-c259d0d8.ipch

     文件     900654  2013-04-17 11:24  C语言信息隐藏数字水印LSB算法\数字水印LSB\2.bmp

     文件     900654  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\22.bmp

     文件    2070582  2013-04-16 10:41  C语言信息隐藏数字水印LSB算法\数字水印LSB\3.bmp

     文件     533334  2013-04-17 10:50  C语言信息隐藏数字水印LSB算法\数字水印LSB\5.bmp

     文件       4402  2012-12-31 11:02  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\1.bmp

     文件       4402  2012-12-29 20:53  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\11.bmp

     文件        790  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\cl.command.1.tlog

     文件       9210  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\CL.read.1.tlog

     文件        548  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\CL.write.1.tlog

     文件          2  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\link-cvtres.read.1.tlog

     文件          2  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\link-cvtres.write.1.tlog

     文件          2  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\link.1456-cvtres.read.1.tlog

     文件          2  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\link.1456-cvtres.write.1.tlog

     文件          2  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\link.1456.read.1.tlog

     文件          2  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\link.1456.write.1.tlog

     文件          2  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\link.2504-cvtres.read.1.tlog

     文件          2  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\link.2504-cvtres.write.1.tlog

     文件          2  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\link.2504.read.1.tlog

     文件          2  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\link.2504.write.1.tlog

     文件       1834  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\link.command.1.tlog

     文件       3354  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\link.read.1.tlog

     文件       1180  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\link.write.1.tlog

     文件      83528  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\LSB.obj

     文件        460  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\mt.command.1.tlog

     文件        566  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\mt.read.1.tlog

     文件        462  2013-05-23 14:25  C语言信息隐藏数字水印LSB算法\数字水印LSB\Debug\mt.write.1.tlog

............此处省略27个文件信息

评论

共有 条评论

相关资源