Android移动平台中的信息隐藏系统设计

2017-03-09 09:26黄琳凯
网络安全技术与应用 2017年4期

◆黄琳凯

(国际关系学院 北京 100091)

Android移动平台中的信息隐藏系统设计

◆黄琳凯

(国际关系学院 北京 100091)

Android系统现如今是应用最多的智能平台,在国内外大范围的被使用。本文对于安卓系统的隐藏设计提议了某种方法,在秘密信息的传递中进行隐身。根据安卓移动平台的特点,研究和解析了达成BMP和JPEG图像的信息隐藏系统,同时实际参考方案,并运用于安卓移动平台系统上。

Android;信息隐藏;系统设计

0 引言

信息掩蔽体系是把秘密的信息藏在某个载体当中,通过载体的掩藏,把秘密信息进行传输,让秘密信息不见天日,这样才能对于隐秘信息的安全性和保密性有效果。现如今的信息隐藏技术为国家政治、军事、经济信息提供保护,使这些信息在公共环境下的安全、传递、分享的过程中不受侵害。

1 Android系统

安卓系统是一个公开的平台,根据Linux操作系统,其中有公用主件和重要软件。安卓系统最重要的一个特点是他的开放性,可以让任何移动终端厂家进入安卓组织当中,对于安卓系统的开发有很大的帮助,其上层软甲的开发应用的编程语言为Java语言,为安卓提供了很多有趣的软件信息。

1.1 应用程序层

第一层的蓝色区域为最上层的运用程序层,在发布安卓系统的发布会上,其核心程序应用也一同进行发布,而且这些程序的编辑都是通过 Java语言形成的,和其他手机不同,安卓版本的程序还可以进行变换,不会像之前一样不能动,这为安卓系统增加了很多灵活性的东西,让他更受欢迎。

1.2 应用程序框架层

第二层是应用程序框架层,因为安卓属于开放性平台,它能够开发许多新奇和有趣的应用程序,这样开发人员就可以随意的使用设备的硬件设施,比如:方向位置信息、运转后台服务、闹钟、增添状态栏等等一系列的硬件设施,这一层同时还在开发软件过程中运用到来公共组件。

1.3 系统运行层

第三层的方块是系统运行层,包括了一些C/C++库,它可以为安卓系统中的组件运行提供一定的帮助。应用程序框架是让其与开发者进行沟通,核心库的主要系统有:C库、媒体库、Surface Manager(显示子系统的管理)、Lib Web Core(web浏览器引擎用,支持可嵌人的web视图)。

1.4 Linux内核层

红色部分是Linux内核层,安卓是在Linux kernel基础上的,但其不是GNU的核心部分。安卓的Linux内核控制服务系统,他的存储、内存/进程管理、和驱动程序都仰赖于它,其硬件层和软件层都有一个相应的接连处,让安卓系统和Linux内核分散,这样安卓系统可以不用长期依靠Linux内核,让内核成为一个独立的个体,也让开发者不必为驱动程序进行考虑,为开发者开发应用程序提供便利。

2 间接信息隐藏

如今有很多的信息隐藏体系都很通行,但是最常见的还是基于空域的信息隐藏和基于变换域的潜藏,这两种隐藏方法分别用于空余图像和压缩图像,下面就是我要说明的空域隐藏算法和DCT域隐藏算法这两种算法。

2.1 空域隐藏算法

空域隐藏算法的范例是LSB算法,全名是最低有效位算法。把潜藏信息和载体信号都进行比特流序列运算,在进行潜藏的时候,把隐藏信息的比特值换算成载体信号中最微小的比特值,这样才能保证潜藏的信息不被人所看见。

2.2 DCT域隐藏算法

JPEC是图片格式中最常见的一种,JPEC在进行压缩时,必不可少的技术之一就是DCT变换,对于在DCT变换系数(DCT域)上对信息进行隐藏也是最常见的一种隐藏技术。和上述的第一步骤一样,先把潜藏信息进行比特流,在进行信息潜藏的进程中,通过变动DCT系数将信息隐藏的不失败,最多见的DCT域隐藏算法有JSteg、F3、F4、F5、Out Guess和MB等等,在本文中要讲述,通过改变选定的DCT系数的奇偶性对信息进行隐藏。

3 Android信息隐藏设计

由于安卓体系对于 java中的图像处理不支持,所以在本文中,运用编辑书写的BMP24图像编解码函数对BMP24图像进行信息隐藏功能;但是对于JPEG系统,由于它的编解码不是很简易,需要运用Linux系统下的jpeglib库才能取得DCT系数,并使用C语言实现DCT域的信息隐藏技术,为了让它能在安卓系统下正常使用,需要对NDK的jpeglib库进行移植和编程,使用JNI调动C函数来进行信息隐藏的功能。

3.1 BMP24图像空域隐藏实现流程

(1)通过对BMP24载体图像进行解码,就能得到他的图片文件中的像素数据;

(2)每一个选择的像素的灰度值,如果想要LSB和进行隐藏的信息的比特值相同,不可以对 LSB的比特值进行修改,不然的话,就会进行下一步的执行程序;

(3)将秘密信息的比特值取代之前的灰度值的 LSB,但是他的高度只能是七位,这是不能改变的;

(4)对于进行修改后的像素进行数据编码,之后才能得到含有密码的图像,才能进行再破解,形成一定程序。

3.2 JPEG图像DCT域隐藏实现流程

(1)使用开发人员在安卓应用中嵌入使用本地代码编写的组件的工具集进行移植和编程jpeglib库;

(2)使用并调整jpeglib库中jpeg的载体图像的DCT系数;

(3)对于被选择中的DCT系数(在这个过程中,我们采取的是中度频率系数,这时因为低度频率的系数在携带关于图像的重要的信息时,和高度频率的系数大部分都是了零,所以是不会被隐藏的),如果变成了零,那么就会跳过这条信息,不然的话,就会进行执行下一步的任务;

(4)如果隐藏的秘密信息的比特值是1的话,那么相对应的DCT系数将会变成偶数,如果在这个基础上加1,那么对应的DCT则会成为奇数;不然的话,就是DCT系数为奇数,在这个基础上加上壹就会变成偶数(标注:在进行运算之前,应该还要判断DCT系数是不是负1,如果是负1的情况下,就需要减去1才可以)。

(5)把上一步骤运算完成后,在 Linux系统下编程并进行翻译,从而产生SO文件,才能进行下一步的进度。

(6)最后,在安卓系统的项目中,找到JNI,然后通过JNI找到本地文件,再在其中调用C文件,最后对信息进行隐藏,从而完成整个信息隐藏程序。

4 网络安全技术与大数据的应用

4.1 网络安全技术

网络安全技术是对各种数据的传输进行多方位的保护,大致分为物理安全分析技术,网络结构安全分析技术、系统安全分析技术、管理安全分析技术、及其安全服务和策略。

4.1.1 网络安全技术的特点

(1)安全措施和技术的不断发展产生了网络安全,在单一的措施和技术下,很容易造成网络的不安定;

(2)安全措施与技术不断发生改变;

(3)网络的不断发展,使得社会各个地方都在使用网络,进入网络世界的技术也是各种各样,所以,网络安全技术是一个非常繁琐的工程体系。为了能建立属于我国的网络安全技术系统,就需要国家和法律的支持,还有各个企业联合研发的系统。

4.1.2 网络安全技术的分类

一是虚拟网技术,它主要是以局域网为基础的技术互换。这种技术的好处是传递的信息只会去到应该去的地方,在很大程度上,防止了别人的网络监听等手段。但是越是高级的安全技术,越容易被黑客攻击。

二是防火墙技术,这种技术的对于各个网络之间进行访问的控制,是为了防止非内部的网络通过不正当的手段进入到内部网络,对内部资源进行查看。虽然防火墙可以保证不受黑客的攻击,但是还是有不可避免的问题,外部人员进不来,但是内部人员也会对网络安全造成影响,不能全面性地禁止不安全的软件的袭击。

4.2 大数据时代下计算机网络安全管理措施

在大数据的背景下,为了对计算机网络的安全进行控制,想必须对于自身体系的问题进行了解,同时还要对于随时可能发生的攻击进行分析并提出解决方案,最后可以使用高效的技术对于计算机网络的安全系统进行保护。

5 结论

现如今,大部分的信息隐藏技术都是在PC机(俗称个人电脑)上完成的,在安卓系统上进行信息隐藏技术是非常少的,基本没见过。在电脑上进行信息隐藏是时候,很容易被通过隐藏只读被解析,但是这些隐写解析工具很难被应用在安卓系统上,因此有很高的安全性。对于安卓系统的信息隐藏可以让我们随时获得图像,又因为安卓系统的防御性强,可以很好地将信息拦截并进行解析,而且,安卓系统的传送方式有很多,可以让我们将秘密信息完整地传送给接收方,所以,安卓系统的信息隐藏技术有很大的市场前景。

[1]施燕,王璐.Android移动平台中的信息隐藏系统设计[J],2013.

[2]范锋.Android的架构与应用开发研究[J].信息与电脑,2012.

[3]刘振华,尹萍.信息隐藏技术及其应用[M].北京:北京科学出版社,2002.

[4]李金刚,刘春芳.如何把信息隐藏在24位BMP图像中[J].计算机时代,2002.

[5]王少杰,严伍琼.基于BMP位图的LSB信息隐藏算法的实现[J].电脑开发与应用,2009.