本文主要是介绍matlab imdilate_基于MATLAB的视觉加密技术,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
❝欢迎关注「工科男的Maltab学习日志」,利用Mardown文本编辑器编写文章,全新排版升级,内容、代码内容、代码更简洁,该公众号同时开通了视频号,「工科男的日常」,欢迎大家扫码关注。 ——工科男
❞
1 视觉加密 简介
对于信息安全技术在当今飞速发展的社会中面对的严峻考验,一种新型的用于保护人们私密信息的技术应用而生,给信息安全学科带来了新的发展方向。视觉密码技术是信息安全的一个重要组成部分,近年来得到了快速的发展。视觉密码是一种对秘密图像来加密的新型加密技术,有别与传统密码学和秘密共享技术,最主要针对的是文本类秘密信息的加密。视觉密码技术将需要保护的秘密信息共享到一组无意义类噪声的共享图像中。由于其共享图像的无意义特性,从而保证了从有限共享图像中得到任何与共享秘密信息有关的任何信息,而将共享图像分发给不同的参与者保存,解决了权利集中问题,运用秘密共享的门限特点提供共享秘密信息的安全性,保证了不法者在得到部分共享图像并叠加同样不能获得有效的秘密图像,必须用达到门限数量的共享图像个数,并以透明胶片或者其他可用的方式叠加即可恢复其中共享的秘密图像。 下图左滑可播放幻灯片2 Shamir 方案的基本概念
Shamir 将秘密共享的思想运用到加密对象为图像的情况,从而提出了视觉密码方案(Visual Cryptography Scheme, VCS)。在一个(K,N)视觉密码方案中,要求,一个秘密图像通过从初始矩阵集合和中分别选取不同的满足一定条件的矩阵来共享并得到N幅共享图像(影子图像),其中矩阵集合 和分别来自基础矩阵和的列变换。将N幅共享图像分发给不同的(N)参与者保存。如果要想恢复被共享的秘密图像,必须收集到至少K幅被分发的共享图像,并将这 K 幅图像叠加到一起即可将共享的图像恢复。无需任何其他复杂算法的参与。并且多人参与恢复保证了共享图像的安全性。为了保证视觉密码的叠加可恢复性,必须保证对于共享的黑白秘密像素点产生不同的共享图像结果
3 方案的算法
以经典(2,2)视觉密码方案为例来完成方案的初始化、构造过程以及其核心原理。例如构造一个(2,2)-VCS,其中像素扩展选择 m=2,参数 l=0,h=1。给出基础矩阵和其中秘密图像选择为有计算机字样的图像I。首先通过条件公式来判断所选择的基础矩阵和是否满足共享条件,只有满足共享条件的矩阵才可以参与秘密共享。将基础矩阵和带入公式可以得到:
可见,在恢复过程中,黑色像素点通过来表示,而白色像素点通过来表示,其中表示有个黑色像素点和个白色像素点组成。
共享步骤:
- 得到初始矩阵集合和通过对基础矩阵和列变换得到;
- 选择像素点并判断其值为0或为1,根据行或列从秘密图像I中选择;
- 如果所选像素点的值为0,则从矩阵集合中随机选出矩阵并将对应的两行分别分配给共享图像和,如果所选像素点值为1,则从矩阵集合中选择生成共享图像的矩;
- 循环执行(2)和(3)直到秘密图像 I 中的所有像素点都被共享从而得到共享图像和,然后将和分别分发给合格的不同参与者保存。
恢复步骤:
- 将分发给不同参与者的共享图像收集;
- 将图像打印到透明胶片或者是一起存储到其他计算机设备中;
- 将和叠加得到恢复密图。
4 MATLAB加密视觉算法实现
例如,对下图进行Shamir经典(2,2)视觉加密
首先对该图片进行读取,并进行二值化
clear all
clc
A = imread('龙哥最帅.jpg');
BW = imbinarize(rgb2gray(A));
之后,对该二值化的图像矩阵进行处理
size(BW);
此时BW_1与BW_2即加密图像
imshow(BW)
figure
imshow(cell2mat(BW_1))
对加密图像可以用透明纸打印出来重叠,或者利用计算机,将保存下来的图象在word里进行重叠即可解密,该实例源码已上传至QQ群(272558566)。
411)
5 作品展示
往期精彩阅读(点击即可阅读)
- 自动执行文本中的 MATLAB 表达式——关于eval函数的使用技巧
- 条形图学习札记——如何排序并指定坐标标签
- MATLAB图论实例——最短路径
- 四点悬置六自由度动力学响应仿真与分析系统
- A、C频率计权网络
- MATLAB函数库大全(收藏版)
- 科技论文写作WORD必备技巧——排版
- 数学建模——无约束优化问题
- 基于MATLAB的核放射素查询系统
- 基于MATLAB云图背景图片的添加
- 基于MATLAB文本转语音包的实现
- MATLAB调用摄像头实例
- 基于MATLAB制作简易画板
- 基于MATLAB的心电图信号分析与处理
- Lamb频散曲线快速绘制软件
- 软著——高阶椭圆齿轮副参数设计与分析系统
- 日常札记——关于极坐标绘图的若干小问题
- 基于MATLAB定时器timer函数制作数字万年历
- 基于MATLAB视频处理——抖音小视频去除水印
- 抖音上火起来的来的撩妹神器
- 基于compass函数的时钟制作
- 如何验证身份证号码是否合法
- MATLAB版本的扫雷小游戏
- 基于hough变换的直线检测
- MATLAB 如何生成 APP ———以运动模糊图像复原为例
- 高效办公路上MATLAB助你一臂之力
- 微积分问题的MATLAB求解(二)——龙贝格积分的算法实现
- 微积分问题的MATLAB求解(一)
- 技巧篇——如何抓取网页中的图片
- 数据插值与拟合
- MATLAB版本的俄罗斯方块签
- 凉凉——可变速小风扇
- 跟着工科男学英语单词
- Matlab GUI 简介
- 你的时光倒映机
- 谁说工科男不解风情
- 您有一份软件著作权请查收
- 高逼格坐标轴函数
- plot3与mesh的区别
「在学习中得到乐趣,在乐趣中收获学习」欢迎关注和分享该公众号。如果您有什么建议可以公众号直接回复即可。期待您的加入,也希望您分享给您身边有需要的人,建议直接将该公众号设为星标记公众号,以免错失精内容,该公众号同时开通了视频号「工科男的日常」,欢迎扫描下方二维码关注。
QQ技术交流群:272558566
这篇关于matlab imdilate_基于MATLAB的视觉加密技术的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!