关于函数类研究生毕业论文开题报告范文,与利用文本余弦相似度实现Android应用的版权保护相关本科毕业论文范文

时间:2020-07-05 作者:admin
后台-系统-系统设置-扩展变量-(内容页告位1-手机版)

这是一篇关于函数类研究生毕业论文开题报告范文,与利用文本余弦相似度实现Android应用的版权保护相关本科毕业论文范文。是抄袭论文专业与函数及向量及余弦方面相关的免费优秀学术论文范文资料,可作为函数方面的大学硕士与本科毕业论文开题报告范文和职称论文论文写作参考文献下载。

【摘 要 】 由于Android平台的开放性和普及性,其上的应用开发日益增多.但由于有Android系统及开发工具是开源的,所有有些个人和企业利用反向工程工具对他人开发的应用进行破解修改,作为自己的产品进行发布销售.这种行为严重侵害了原作者的利益.应用商城的运营者为了保证自己运营的产品是正版产品,必须花费大量人力进行测试比对.而本文提出了通过提取Android程序包中函数调用关键字,并使用文本余弦相似度算法进行盗版应用自动检测的方法.并基于此方法对Android反盗版系统的基础构架进行了设计.

【关 键 词 】 余弦相似度 Android应用 版权保护 反向工程

一、引言

Android操作系统是由谷歌公司推出的基于Linux开源的嵌入式操作系统,当前它主要运用于手机等移动设备上.从2008年推出第一款基于Android的手机以来,在短短的5年里,它已超过了原有的塞班系统占领了手机市场份额第一的位置.截止2013年9月全世界采用这款系统的设备数量已经达到10亿台[1].


写函数论文的方法
播放:38365次 评论:6456人

利用文本余弦相似度实现Android应用的版权保护参考属性评定
有关论文范文主题研究: 关于函数的论文例文 大学生适用: 在职论文、函授论文
相关参考文献下载数量: 10 写作解决问题: 怎么撰写
毕业论文开题报告: 文献综述、论文选题 职称论文适用: 核心期刊、高级职称
所属大学生专业类别: 怎么撰写 论文题目推荐度: 优质选题

Android系统之所以能这样受到广大用户和开发者的青睐,主要原因在于其开放的系统和易于上手的应用开发平台,大大降低了第三方厂商进入Android应用开发的门槛.正是由于Android平台和应用开发技术相对透明,有些公司和个人为了其自身利益,剽窃他人应用,进行反向工程,替换小部分代码、图片文字,改头换面作为自己的产品推向市场.这种行为严重扰乱了Android应用市场,从长远来说将影响整个产业链的健康发展.尤其对于“手机应用商店”的运营方,应该担负起平台推广和销售的应用产品监督和管控的职能,避免侵权的应用在平台运营.当前,“手机应用商店”的运营方多是以书面版权文档审核,人工评测的方式进行版权及内容审查.这种方式费时费力,而且存在人员主观因素.因此,需要一种由计算机辅助的应用程序包自动版权检测工具.

二、Android应用盗版手段分析

要反Android应用盗版侵权,就要了解常用的应用盗版手段.作为Android应用盗版者最容易获得的是已编译好可执行的Android应用程序包.这个包里包括了已编译的执行代码、本地库文件、图片和字符串资源、相关应用的配置文件等.应用盗版者通过使用反向工程工具把APK包解开,转化为可直接编辑修改的资源文件、配置文件、smali代码和动态链接库文件[2].最容易的应用盗版方法,就是直接修改图片和字符串资源,这样可以快速地完成对外观的修改,使其从用户界面上完全不同于原应用.还有一些技术较高的修改者会对配置文件和smali代码进行修改,改变应用执行的顺序,跳过一些公司信息、版本信息、联网激活等代码,并植入一些自己的代码,使得应用运行时的行为与原应用有较大差异.但不论何种手段,是对于一个应用盗版者,没有源代码,从成本考虑一般不能对程序运行逻辑进行大的调整,函数调用关系基本保持与原应用一致.如果对应用程序的片段引用,而程序的主体框架结构都是自创,则不应该归类为抄袭和盗版的一类.

通过对盗版者的修改行为分析,被盗版的Android 应用和新应用虽然在界面,图片,文字,甚至用户体验流程上可能有很大差异,但是盗版者从节约成本的经济利益角度考虑,不会对晦涩难懂的字节码程序作大的修改.这就为进行自动代码分析,提取代码特征进行比对,最终为确定Android应用相似度奠定了基础.

三、文本余弦相似度概念和运用

文本余弦相似度,是基于一段文字中各关键字的词频乘以它的权重而组成的向量来表示一个文本的特征,而每个文本都可以通过统计获取到它的特征向量,而两文本的相似度就是由它们特征向量在空间中的夹角余弦值来表示的.文本的余弦相似度在0到1间变化.如果0代表两特征向量成直角正交,两篇文本中没有任何相同的关 键 词 ,可以认为两篇文本没有抄袭的嫌疑.如果1代表特征向量重合,两篇文本具有完全相同的关 键 词 ,而且出现的频率完全相同,可以认为两篇文本有高度抄袭的嫌疑[3].

要完整理解文本余弦相似度算法,必须先了解词频和逆向文件频率TF-IDF的概念.TF-IDF是一种用于资讯检索与文本挖掘的常用加权技术.词频TF表示词条t在文档d中出现的频率.逆向文件频率IDF表示词条t在文档库中的稀有程度[4].IDF越大,则说明词条t具有很好的类别区分能力.

四、Android应用相似度比较算法设计

正如前文分析的,作为Android应用最难以修改的部分是程序逻辑.如何从程序包中提取出程序逻辑呢?一个常用的Android程序包反向工程工具Apktool是最好的选择.在运行带反编译参数的Apktool命令行后,会生成Davlik虚拟机语言(Android的Java虚拟机)表述的程序文件(smali目录).它是类似于汇编语言的低级语言,只要做简单的汇编就能转化为虚拟机可执行字节码[5].正是由于此种特性,也就决定了其语法和格式的严谨性,语义上无二义性,可以作为比较Android应用相似性的基础文本.

首先,提取出反编译后代码中所有函数调用行,并通过空格把语句分成独立的词.可以分解为操作符、参数、被调用的函数.而其中操作符和参数都是频繁出现在每个应用中,不能表示特定应用的特征,应该把其归入到终止统计的词中,避免干扰特征向量的有用关 键 词 信息.这样就只有被调用的函数被纳入关 键 词 TD-IDF向量,这个关 键 词 包括函数的类名、函数名、参数类型列表、返回值类型,是函数的最基本特征,是最不容易被篡改的内容.这样就可以对于在一个应用中出现的所有被调用函数关 键 词 进行词频统计.


本篇论文转载于 http://www.sxsky.net/chaoxi/459802.html

得到词频TF后,还有一个关键参数IDF(逆向文件频率).这需要对所有可以收集到的应用程序建立应用反编译库(必须要有足够数量,这对于专门进行应用商城运营的机构是相对容易的),提取出每个应用中被调用的函数.并以函数为查询索引,统计包含这个函数调用的应用个数.知道了应用反编译库的总应用个数和包含这个函数调用的应用个数,就能根据IDF公式计算出某个函数调用的IDF值.如果这个函数调用出现的应用越少,这个函数调就越能表现出当前应用与其他应用的区别,IDF值就越大,此函数调用在该应用中的特征向量的权重就越大.

有了一个应用中

后台-系统-系统设置-扩展变量-(内容页告位2-手机版)
声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:123456789@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。
后台-系统-系统设置-扩展变量-(内容页告位3-手机版)