过时的技术

ZIP伪加密

经过伪加密的apk,改成zip格式打开会发现里面的文件都经过了加密。

APK实际上是Zip压缩文件,但是Android系统在解析APK文件时,和传统的解压压缩软件在解析Zip文件时存在差异,利用这种差异可以实现给APK伪加密的功能。在Zip结构中,Central Directory部分的File Header头文件中,有一个2字节长的名为 General purpose bit flags的字符按,其中如果第0位置1,则表示Zip文件的该Central Directory是加密的,若果使用传统的解压缩软件打开这个Zip文件,在解压该部分Central Directory 文件时,需要输入密码。当然,用APKTOOL也无法解压。

对apk伪加密实现,可以使用Python的zipFile模块来做,在Python的zipfile模块中,ZipInfo类中记录了Zip文件中相应的Central Driectory 的相关信息,包括General purpose bit flags, 在ZipInfo类中属性为flag_bits, 因此将需要加密的APK文件的每个ZipInfo的flag_bits和1做或操作,实现在General purpose bit flags的第0位置1.

用这段代码(已经是2013年的了):http://bbs.pediy.com/showthread.php?t=174825

C:\Users\Larry\Desktop>java -jar ZipCenOp.jar
[email protected]
coolapk.com
no source here, but u can reverse as u like

usage:
ZipCenOp.jar <option> <file>
option:
        r : recover a PKZip
        e : do a fake encryption

进行伪加密:

C:\Users\Larry\Desktop>java -jar ZipCenOp.jar e 1.apk

然后安装,提示:Failure [INSTALL_FAILED_INVALID_APK]

然后解密,安装,提示:Failure [INSTALL_PARSE_FAILED_NO_CERTIFICATES]

又听闻新版本系统已经不接受为加密过的APK了。此种方法已经没意义了。不过源码还是可以学学的。不得不感叹技术变化得太快,尤其安全方面,需要不停学习啊。

REFERENCE:http://1.honebl.sinaapp.com/?p=43

时间: 2024-07-28 17:08:47

过时的技术的相关文章

【Passport】微软过时的技术

虽然已过时,没来得及体验,摘录一段别人的文章,假装对passport的了解 微软在过去的身份验证服务上,一直采用的Passport验证,但已经是N年前推出来的一个软件架构,当然也被软件界很多地方采用到,由于很多安全问题以及隐私问题,导致05年eBay与Passport分手,相继不少公司也与微软身份验证服务分道扬镳.为何会这样呢?这还得从Passport流程说起: Passport 是基于 Cookie 的身份验证服务.使用 Passport 身份验证的示例事务对话的工作方式如下: 客户端向受到保

张小龙谈“大数据五种开源处理技术”

概述 现在市场上有超过25万个开源技术出现了.如何选择?让我们一起看下5种激动人心的大数据技术. Storm 和Kafka是未来数据流处理的主要方式,它们已经在一些大公司中使用了,包括 Groupon,阿里巴巴和The Weather Channel等. Storm,诞生于Twitter,是一个分布式实时计算系统.Storm 设计用于处理实时计算,Hadoop主要用于处理批处理运算. kafka是由LinkedIn研发的一款消息系统,作为一个数据处理的管道基础部分存在于系统中.当你一起使用它们,

浅谈非法外联检测技术的演变

针对隔离内网,非法外联因其危害巨大,一直都是网络边界完整性防护的重中之重. 早期非法外联主要是指以电话拨号为主的私自连接互联网的行为,早期电话拨号还是非常方便的,如163拨号,263拨号等,只要有电话线,就可以随时拨号上网,缺点就是网速慢,收费高.针对早期电话拨号的检测技术是"双机"检测,即一台部署在内网做为扫描端,另一台部署在互联网做为接收端,技术原理大家可以在网上搜,技术实现相对简单,目前已是过时的技术了. 对非法外联的硬性监管要求,加上"双机"检测模式的过时,

学好技术,做一个不浮躁的人,请记住以下几点

浮躁的人容易问:我到底该学什么----别问,学就对了: 浮躁的人容易问:Java有钱途吗:----建议你去抢银行: 浮躁的人容易说:我要中文版!我英文不行!----不行?学呀! 浮躁的人分两种:只观望而不学的人:只学而不坚持的人: 浮躁的人永远不是一个高手 1.不要看到别人的回复第一句话就说:给个代码吧!你应该想想为什么.当你自己想出来再参考别人的提示,你就知道自己和别人思路的差异. 2.初学者请不要看太多太多的书那会误人子弟的,先找本系统的学,很多人用了很久都是只对部分功能熟悉而已,不系统还是

技术的边界

去年,网上流传一则趣闻. 美国圣昆廷州立监狱安排囚犯学习编程,完成学习的犯人出狱后,没有一个人重新犯罪被抓回监狱. 一位刚刚出狱的囚犯说:"太可怕了,我宁愿在外面饿死也不想再进去学编程了." 后面那句话是网友杜撰的,但是程序员圈子里,大家依然把它当作笑话转发."你看,编程多痛苦,还不如坐牢呢." 我一直忘不了这个段子,觉得它是一个很好的象征:当代社会就像一座机器组成的监狱,学会技术可以摆脱牢房. 2. 人类已经不再生活在大自然了,而是生活在一种机器环境:住宅.交通.

苹果手机试玩app如何无限做任务技术教程!

现在越来越多人想学习试玩app如何无限做任务技术教程了,但是网上很多过时的技术误导了很多人,而且每个技术收费标准不同很多人被坑了,今天凯哥教你无限刷试玩为大家分享一些app试玩怎么无限刷任务技术. 试玩app如何无限做任务:其实试玩app如何无限做任务还是挺简单的,想要知道试玩app如何无限做任务就要知道目前市面上技术有多少种. 目前试玩app如何无限刷做任务技术的话分为几种的,一种是抹机.另外一种抓包技术也就是俗称的软改udid技术,另外一种是插件儿,还有一种是跳码的技术目前也就这么几种. 其

什么是HTML5前端开发?HTML5前端要学哪些技术?

什么是HTML5前端开发?前端开发一般指网页开发,前端开发是从网页制作上演变过来的,网页上软件化的交互形式都是基于前段技术实现的.程序员指从事程序开发.维护的专业人员,其中程序员可以分为设计和编码两个部分. HTML5前端的发展前景可观,可以从事的工作也很多,比如:web前端开发工程师.HTML5开发工程师.web APP开发工程师.Java开发工程师等. 那么想要学好HTML5前端开发,那么需要掌握的专业技术有哪些? 第1阶段:前端页面重构:PC端网站布局.HTML5+CSS3基础项目.Web

微服务架构(Microservice Architecture)

之前一段时间,有听部门架构说起接下来公司要使用微服务架构来研发系统,当时没怎么在意,因为是第一次听说微服务这个名词(果然无知者无畏啊):正好赶上五一假, 我自告奋勇的,接了编写微服务架构培训文档这个任务(也许因为我是文科生,文笔稍微好点).五一假期三天,基本都是在看资料,梳理思路以及编写接下来的培训文档中度过. 下面,就说说我这几天的一些收获吧:先说说资料来源吧:有架构给我的一些资料,以及自己百度和论坛.社区找来的一些资料,权当做一个总结式的简介... 目录如下: 一.微服务架构介绍 二.出现和

初学者学习C++的50条忠告

1.把C++当成一门新的语言学习(和C没啥关系!真的.); 2.看<Thinking In C++>,不要看<C++变成死相>; 3.看<The C++ Programming Language>和<Inside The C++ Object Model>,不要因为他们很难而我们自己是初学者所以就不看; 4.不要被VC.BCB.BC.MC.TC等词汇所迷惑--他们都是集成开发环境,而我们要学的是一门语言; 5.不要放过任何一个看上去很简单的小编程问题--他们