把整个世界留给你

花了好长时间下载的<凉宫春日的消失>,在硬盘躺了很久,想着趁某天晚上有时间补完,没想到这部片子居然有2小时40分钟,在动画界也算是奇葩般的长作了.于是断断续续花了2个晚上把它看完了.

本片名为<凉宫春日的消失>,的确团长的戏份实在少得可怜,中途很长一段时间都没现过身.不过团长长发飘飘出镜的画面实在太唯美了,那画面太美我不敢看了.虽然另外一个世界中化身为一个学习优秀的乖乖女,但依然保留着那股无所畏惧的本性,也难怪阿虚看到团长后毫不犹豫的选择了按下回车键.

作为本片女主角,有希倒是萌到极致.从TV版的三无角色变成害羞的小女生.作为神一样存在的角色,她目睹了15532次的漫无止境的八月,那可是整整600年啊,重复了上万次的暑假的最后两个星期,作为观众,短短八集就已经让人抓狂了.但有希是唯一保留所有记忆的人.也难怪她会出现bug,改造世界了.她的世界是孤独的,SOS团什么烂摊子都得由她收拾,不时还要肩负起保护众人的责任.但她的烦恼又向谁诉说,只能独自一人慢慢消化.直到某一个临界点,她暴走了,但她依然把选择权留给了阿虚.简直就是拿整个世界向阿虚表白.

但阿虚终究是喜欢团长的,虽然嘴上不断地吐槽,就算春日每天不停地制造各种麻烦,他依然享受春日在身边的日子.而有希对他来讲,就是一个永远坐在团部室座位上拿着本书很少发言有什么困难只要找有希就一定能解决的朋友而已.

本片就是大萌神脑残粉们的福利,五星强推.

大路考

今天大路考,人不多,12点半就开始考了

一起在车上的有一个是之歌sys的女博士,我就说看着咋这么眼熟,她第一个开一次就过了。有一个已经挂了一次结果今天又连挂两次不知道要交多少补考费。还有一个一直被骂开太慢,最后还是过了。

大路考贼简单平时多练练就熟了,3公里一下子就开到了。靠边停车时候忘记打灯了还好考官放我过了。

坐等驾照买车偶也

android签名机制

好久没有写博客了都荒废了,今天就随便写一点笔记也许以后还会用到。

故事要从很久以前说起,这是一个很长的故事,谁都不知道会不会有结局。这也是一个日常生活中经常发生的事情,自以为很聪明的项目经理+自以为项目经理是个sb的码农,滥俗的剧情。总之现在就在做android签名有关的项目。最近看了android系统的源代码改了一下做个记录以供查阅。

每个android的apk里都包含签名的信息。android系统可以安装任何带有合法签名的apk,如果一个apk没有签名信息那是无法在android上安装的。在我们平时用eclipse写android程序时他也在apk里加入了debug的签名信息,所以也是合法的可以安装的。为一个apk签名时,我们首先需要使用keytool这个工具,他会随机产生公私钥对,并根据输入的信息产生一个证书,把公钥打包进证书里。然后使用jarsigner,利用上一步生成的密钥和证书对apk进行签名。这两个工具在安装java时会自带。签完名的apk里面会有一个META-INF文件夹,里面包含了3个文件。jarsigner的过程就是生成这三个文件:1. 程序遍历apk包中的所有文件(entry),对非文件夹非签名文件的文件,逐个生成SHA1的数字签名信息,再用Base64进行编码,写入MANIFEST.MF。2. 对MANIFEST.MF中的信息使用SHA1-RSA算法,用私钥进行签名,写入CERT.SF。3. 将公钥、所用的加密算法等信息写入CERT.RSA。具体参见http://www.blogjava.net/zh-weir/archive/2011/07/19/354663.html

下面讲一讲源代码里对签名的检测。原生android中只会检测是否有签名,签名是否合法(程序的完整性)。看了好久的源代码之后,发现安装一个apk时会首先进入packages/apps/packageinstaller这个系统级的应用里,在这里会对apk进行一系列预处理,最后调用到PackageManagerService里的installPackageWithVerification函数。安装apk还有一种方法就是通过调用adb install来安装,这时候会直接调用installPackageWithVerification函数。所以如果想控制apk的安装,直接截住源头是最好的方法。通过对几千行代码的研读,最后决定在installPackageLI这个函数里对apk的签名进行检测,不是特定签名的apk就不安装。在对签名进行检测的时候,参考了android自带的对OTA签名进行检测的部分代码。执行keytool -export -keystore mystore -alias mykey -file my.pem -rfc生成pem文件,打包成zip放到手机里(比如sdcard)。安装apk时只要检测apk的公钥和zip包里的公钥是否一致即可检测出apk是否可信任。部分关键代码如下:

boolean verified = false;
HashSet<Certificate> trusted = new HashSet<Certificate>();
try {
ZipFile zip = new ZipFile(“/mnt/sdcard/mykey.zip”);
try {
CertificateFactory cf = CertificateFactory.getInstance(“X.509”);
Enumeration<? extends ZipEntry> entries = zip.entries();
while (entries.hasMoreElements()) {
ZipEntry entry = entries.nextElement();
trusted.add(cf.generateCertificate(zip.getInputStream(entry)));
}
} catch (CertificateException e) {
e.printStackTrace();
} finally {
zip.close();
}
PublicKey signatureKey = mPkgInfo.mSignatures[0].getPublicKey();

for (Certificate c : trusted) {
if (c.getPublicKey().equals(signatureKey)) {
verified = true;
break;
}
}

实际修改时发现PackageManagerService不能读取sdcard中的文件,各种方法找不出原因,最后把文件放到系统目录里就解决了。

其实还有个修改系统锁屏的项目,感觉那个更有意思更贴近生活,比如做个很可爱的锁屏,让妹子的手机变成全天下独一无二之类的。可惜做到一半转交给另一个同学了,现在看他貌似很痛苦的样子=______=||

虽然故事还没完,但也要来个中期小结什么的。下面简单说两点:1. android源代码很有意思,要不是毕业压力那么大,我倒是很想改出一个很不错的系统,独一无二量身定做。2. XX所的人水平真的不怎么样,想搞安全却连最基本的密码学知识也不去补习一下,都不如我这个只上过几节课的人高。当然也许只是跟我们合作的这些人比较菜,不知道幕后有没有什么大神。感觉以后如果找不到工作去研究所还是能混一混的,交大的同学一定要对自己有信心。

分手合约

看完影片,给人感觉就是韩国导演用中国演员拍出了日本电影的味道.

似乎很多人并不是很喜欢白百何,不知道为什么,我觉得长得挺好看的,是我喜欢儿的类型,看她斗嘴儿别有一番风味.

但饰演的角色是不是因为得了癌症导致智商降低,男主那么明显的做戏那么多破绽都看不出来,还信以为真最后要走了才弄巧成拙逼的男主彻底亮牌,两人重归于好,当然我最为上帝视角的观众能看到每个人物的剧情更何况我还是在自家电脑上看的哪里台词没听清还能倒退回去重新看一下.

看到两人兴奋地走出当年分手的咖啡店正憧憬着美好的婚礼灿烂的婚后生活的时候,我还特意看了下时间发现电影还剩半个小时想来男女主角应该不会幸福快乐地生活在一起了.果然吐血的老梗又来了.这TM也太巧了吧,刚复合就癌症复发,女主于是又一次选择了离开.想来后面的剧情无非就是男主知道了女主这5年为他做的一切,然后女主一定会死掉,因为死掉还能拿个2~3星的评分,如果女主奇迹般的被治好了那铁定是1分的烂作.于是后面权当看彭于晏和白百何两人了.

本片蒋劲夫演了个小受,虽然演的还行,但总感觉演的太刻意了,因为刚出场就看出来是个小受不知道是他演技好还是我gaydar太敏感了.

本片3星.

篮球那些回忆

昨天听闻麦蒂退役的新闻,不禁回想起那些看球打球的时光.

我所熟悉的一起打球的伙伴们,接触篮球的原因各种各样,总结一下大致有二.

一是因为小时候电视里热播的动画片<灌篮高手>,被那种充满青春的热血所吸引.很可惜,记忆中<灌篮高手>是在有线频道播出,属于付费节目,我小时候看的还是只有8个频道的那种电视,没有看过<灌篮高手>,倒是因为<足球小将>一度非常喜欢踢足球,再加上小时候没什么力气,记得体育课上打篮球的时候,就是几个小孩拿着球互相追,整的跟打橄榄球似的,倒马桶式投篮球都不一定能够到篮筐.所以,整个小学的运动时光都是在煤渣跑道围着的尘土飘扬的足球场上撒着脚丫子溜走的.

频繁开始打球是在初中的时候,当时正值姚明前往NBA开始打球,然后家里也终于装上了有线电视并且体育频道开始大量转播NBA比赛,掀起了一股篮球热.这是原因之二.随着这股热风,我也从一个弱小的小学生进入到躁动的青春期,女式投篮也终于能的进球了.

打球最鼎盛时期则是在高中,因为初中的时候学校里还有高中部,篮球场地有有限,打不过高中部的人也抢不到场地只能一边随便玩玩,但是到了高中之后,身体素质也更加好了,一起打球的人也多了.每天下课后总会一帮人去打球,即使打到天黑回家被父母臭骂玩物丧志也在所不辞,就算中午吃完饭也要冒着得阑尾的风险去球场厮杀一番.漂亮的过人,精彩的盖帽,华丽的上篮,流畅的配合是每个球员追求的目标,虽然灌篮的梦想遥不可及,但也尝试着跳起摸框摸板摸网.想想那些中午挤在食堂看球的日子,看着那些陪伴我们成长的偶像和身边一起呐喊的伙伴们,都是我们回不去的美好时光.

上大学后,渐渐开始变得宅起来,球也偶尔打打,比赛也只是看看结果,甚至好久都没关心总冠军是哪支队伍了.当年如数家珍般对议论着每个球员的特点,为自己喜爱的球员为自己喜爱的球队呐喊助威,学麦蒂的干拔跳投,学木桶伯的摇手指,学AI的胯下过人,学科比的后仰跳投,学卡特的大风车,我们见证了那些最华美的联盟时光,如今看着科黑科密的互相嘲讽,总觉得已经不够纯粹了.

因为姚明关注火箭,因为火箭关注麦蒂,在麦蒂退役的这天,看到一个呈现麦蒂职业一生的短片,放到35秒13分传奇的画面的时候,依然激动到眼眶湿润.或许只能依靠影响来缅怀当年篮球带给我们的一切,现在的联盟已经不是我们的联盟,那些篮球带给我的回忆,终究是一笔宝贵的财富.