目 录
1 绪论 1
1.1 研究背景 1
1.2 研究方法 1
1.3 研究内容 2
2 关键技术 3
2.1 报文摘要技术 3
2.1.1 单向散列函数 4
2.1.2 单向散列函数技术 4
2.2 数字图像技术 5
2.2.1 数字水印的概念 5
2.2.2 数字水印的要求 6
2.2.3 数字水印的原理及其通用模型 6
2.3 数字图像加密技术 8
2.3.1 数字图像加密的原理与通用模型 8
2.3.2 数字图像加密的典型算法 8
3 算法实现 11
3.1 采用的算法 11
3.2 算法流程图 12
3.3 报文摘要提取 12
3.4 数字图像水印 17
3.4.1 位图的位面 17
3.4.2 LSB算法模型 17
3.4.3 LSB算法的实现 18
3.5 混合加密 19
3.5.1 DES算法 19
3.5.2 RSA公开密钥密码体制 25
3.5.3 混合加密的实现 26
4 一种基于现代密码体制的图像加密算法 28
4.1现代密码体制 28
4.2 AES简介 29
4.2.1 AES的来源 29
4.2.2 AES算法描述 30
4.3 基于AES的数字图像置乱 31
4.4 实验结果与分析 32
4.4.1 图像的置乱效果 32
5 总结 33
参考文献 34
致谢 35
本课题旨在分析数字图像的结构和特点,对数字图像进行加密和解密,即:利用一定的算法对一副图像进行加密以达到不暴露原始图像的目的,然后进行解密以达到恢复原始图像的目的。同时,为了鉴别出图像是否被篡改,要求满足图像认证的要求。认证的目的是检测对图像数据的修改,以确定载体信息的完整性和真实性。可用易碎水印和报文摘要来实现图像认证。虽然只用报文摘要也能达到图像认证的目的,这种方法认证的精确度比较高,但是在传输过程中难免会受到噪声等的干扰,故使用报文摘要可能会达不到预期的目的,同时,因为数字水印也有图像认证的功能,因此,本系统采用报文摘要结合易碎水印来实现该目的。
3 算法实现
3.1 采用的算法
近年来,随着国际互联网络与多媒体技术的迅速发展,数字图像己经逐渐克服了往日因存储量巨大而带来的种种问题,成为信息表达方式的主流,数字图像信息的安全问题成为国际上研究的焦点问题。数字图像具有信息量大、信息表达直观的特点,它的安全保密显然与以往在计算机上所面对的文本数据截然不同。数字图像信息安全保密是结合数学、密码学、信息论、计算机视觉以及其它计算机应用技术的多学科交叉的研究课题。数字图像的加密技术是当代信息安全领域中比较活跃的一个研究方向。它结合了数学、密码学、信息论、计算机视觉以及其它计算机应用技术的多门学科。随着科技的发展,尤其是多媒体技术的发展,出现了更多的、新的图像加密算法,而按照不同的分类标准,图像加密算法还可以作其他不同的分类。
通过阅读一定量的资料了解到该课题目前在国内外的研究状况和相应的发展趋势。经过反复的思考,本课题打算按以下思路着手设计,以求最终能以程序实现该课题。
即:DES和RSA的混合加密算法,先随机产生一个DES密钥,用此密钥加密图像,得到扩展名为.bmp.mcs的文件1,然后采用RSA加密算法对随机产生的DES密钥进行加密将得到的密文加到文件1的文件头里面去。这样如果想得到原文件就必须先破解文件头,而文件头是由RSA加密的,安全性比较高,想破解并不是件容易的事,同时又由于DES加密速度快,适用于大文件的加密,且安全性不高,而RSA加密速度慢,适用于小文件的加密,但安全性很高,两者的结合即满足了速度的要求,又满足了安全性的要求。同时,为了满足图像鉴定的要求,特引进数字水印技术,即:采用一散列函数作用原图像,以提取一报文摘要,然后将此报文摘要作为水印信息嵌入到原始图像中,经加密解密后,再在解密后的图像中提取水印信息,然后判断此水印信息和原报文摘要是否相同,若相同,说明原始图像没有被篡改过,否则说明原始图像已被篡改。
3.2 算法流程图

图3-1 算法流程图

// EncryWithPicture.cpp : Defines the class behaviors for the application.
// www.srcfans.com#include "stdafx.h"
#include "EncryWithPicture.h"
#include "EncryWithPictureDlg.h"#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif/
// CEncryWithPictureAppBEGIN_MESSAGE_MAP(CEncryWithPictureApp, CWinApp)//{{AFX_MSG_MAP(CEncryWithPictureApp)// NOTE - the ClassWizard will add and remove mapping macros here.//    DO NOT EDIT what you see in these blocks of generated code!//}}AFX_MSGON_COMMAND(ID_HELP, CWinApp::OnHelp)
END_MESSAGE_MAP()/
// CEncryWithPictureApp constructionCEncryWithPictureApp::CEncryWithPictureApp()
{// TODO: add construction code here,// Place all significant initialization in InitInstance
}/
// The one and only CEncryWithPictureApp objectCEncryWithPictureApp theApp;/
// CEncryWithPictureApp initializationBOOL CEncryWithPictureApp::InitInstance()
{AfxEnableControlContainer();// Standard initialization// If you are not using these features and wish to reduce the size//  of your final executable, you should remove from the following//  the specific initialization routines you do not need.#ifdef _AFXDLLEnable3dControls();           // Call this when using MFC in a shared DLL
#elseEnable3dControlsStatic();  // Call this when linking to MFC statically
#endifCEncryWithPictureDlg dlg;m_pMainWnd = &dlg;int nResponse = dlg.DoModal();if (nResponse == IDOK){// TODO: Place code here to handle when the dialog is//  dismissed with OK}else if (nResponse == IDCANCEL){// TODO: Place code here to handle when the dialog is//  dismissed with Cancel}// Since the dialog has been closed, return FALSE so that we exit the//  application, rather than start the application's message pump.return FALSE;
}










VC++图像加密软件设计与实现相关推荐

  1. 保护你的聊天隐私---“外挂式”加密软件设计思路

    保护你的聊天隐私---"外挂式"加密软件设计思路<?xml:namespace prefix = o /> Jack zhai 即时通讯工具(常用的是聊天软件与网上电话 ...

  2. java文件加密软件设计_【文件夹加密超级大师和Java软件构架设计模式哪个好用】文件夹加密超级大师和Java软件构架设计模式对比-ZOL下载...

    强大的文件和文件夹加密软件,还具有彻底隐藏磁盘以及禁止使用或只读使用USB存储设备.数据粉碎删除等功能. 软件特色功能: 1  对文件夹具有五种加密方法: 闪电加密:瞬间加密你电脑里或移动硬盘上的文件 ...

  3. 【图像加密】基于Logistic混沌图像加密与解密Matlab代码

    1 简介 当今时代,科学技术发展迅猛,网络成为人们获取成为人们获取多媒体数字信息的主要渠道,数字图像作为日常交流的主要传输媒介,更是承担着信息传递的重任.保证信息在传播过程中的安全性和完整性便成了目前 ...

  4. opencv对图像是软解码_基于opencv和c++的图像处理软件设计与实现(26页)-原创力文档...

    毕业设计中文摘要 基于opencv和c++的图像处理软件设计与实现 摘要: 本文主要对基于opencv和c++的图像处理软件设计与实现进行介绍.本软件由主界面和若干二级菜单组成,主界面功能有文件操作. ...

  5. 唐诗三百首加密软件如何使用_文档文件加密及设计图纸加密的防泄密软件怎么部署和使用...

    深圳加密软件发展很快,目前较先进.较安全的加密技术是透明加密.透明加密是一种根据要求在操作系统层自动地对写入存储介质的数据进行加密的技术.文件透明加密模块是防止电子文件由于公司内部员工泄露而开发的内核 ...

  6. 飞想图纸加密软件可以有效保护您的设计图纸的知识产权

    飞想图纸加密软件可以有效保护您的设计图纸的知识产权 目前企业图纸安全所面临的一些问题: 1,在日常生产经营中,经常遇到客户要一些单位搞设计出方案,结果设计方案被客户转手到了第三方进行报 价加工,心血白 ...

  7. 设计图纸文件加密有效方法如何轻松防止图纸外泄?互联网企业使用图文档加密软件优势?

    对电子图纸文档加密工作势在必行.那么针对企业的不同应用环境以及具体使用需求,如何去部署使用图纸文档加密软件?其加密软件的使用对于企业的发展有何重要的价值? 对于相关的企业来说,其因为内部因素造成的数据 ...

  8. 图像工程课程设计 基于 OpenCV 、 Qt 库实现的图像处理软件 大学编程作业(TUST 天津科技大学 2023年)

    基于 OpenCV . Qt 库实现的图像处理软件 目录 基于 OpenCV . Qt 库实现的图像处理软件 一.项目简介 二.项目要求 三.项目源码 四.交流学习 图像处理工具说明文档 基于 Ope ...

  9. MATLAB图像置乱混沌加密解密设计

    MATLAB基于GUI图像置乱+混沌加密解密 一.课题介绍 1 混沌的解释 混沌密码学是一种新的密码加密算法,具有简单.高效.安全等优点.混沌密码学是混沌理论的一个重要的应用领域.混沌用于密码学主要依 ...

最新文章

  1. Dubbo原理何源码解析之服务暴露
  2. linux命令gcc常用选项
  3. 求多项式解(三种方法MATLAB)
  4. PHP自动加载类的实例
  5. android.os.BinderProxy cannot be cast to
  6. 反汇编基础-寄存器及内存
  7. Union的一个妙法
  8. 《小艾上班记》—— 读后总结
  9. UGUI的image
  10. GDI+ 保存HDC为位图文件
  11. 热点账户高并发解决方案
  12. 网页中的字体对应的word字体大小对照表
  13. [技术讨论]关于前几天发布的京东bug上的问题分析
  14. linux修改hostid
  15. phpstudy php56 zend,关于shopex 4.9 php5.6版安装环境问题
  16. vscode 插件 markdown-preview-enhanced 设置深色预览主题
  17. git撤回上一次的提交
  18. 以Edge浏览器为例演示清除浏览器的缓存
  19. 浅谈互联网赚钱的几种方式
  20. 英语每日阅读---2、越来越多人反对人工智能参战

热门文章

  1. JS将字符串转数组、转数字、转对象;将数组转字符串、转对象;将对象转数组、转字符串
  2. N多的红烧茄子做法!
  3. 已解决(MongoDB安装报错)Service ‘MongoDB Server (MongoDB)’ (MongoDB) failed tostart. Verify that you have su
  4. 计算长方形或正方形的周长和面积
  5. 【系列】重新认识Java——基本类型和包装类
  6. 定义一个电话簿,用人名查电话
  7. 白兵机器人怎样连接_“玩具之家”的新宠——星战白兵冲锋队员机器人体验
  8. 【FFMPEG】解决截取MP4视频的中间段时,截取完成后前几帧视频卡住,但是有声音的情况
  9. 通过Teardrop学习网络通信编程
  10. JS手机号身份证验证