反汇编apk
反汇编用于分析某个apk的程序思路。逆向工程有风险,举报需谨慎。以下为ubuntu系统操作。
第一次看这个题目时候,感觉挺简单的,但是考虑使用python或者Java会很慢,决定用C++解题,没想到跳进了大坑!哎,c++这样的底层的操作语言,实现高层脚本语言(python)功能的确是非常麻烦——不断造轮子,轮子破破烂烂的,可是C++性能确实摆在那里,老司机开车比人家快嘛!
记下自己配置这个“臃肿”但是强大的IDE使用方法。写写简单的HTML和python还是比较好用的。
ubuntu我一直都是使用硬盘安装,没有试过烧录到u盘引导安装,因为不想浪费一个优盘。
这次的题目就比较简单,只涉及到SHA-256的使用。装个Pycrypto库就能用了。解题思路就是从后面的block往前面block添加Hash值,复杂度O(n)。
这道题目很简单,目的就是让同学们熟悉一下块加密的API。
题目中,教授Dan Boneh只给出两种解密方式,其实完成作业后,自己尝试更多加密、解密方式,也是不错的。你看shadowsocks作者都能玩遍几乎所有加密方式,每次发送数据都更新IV,非常有意思。若GFW尝试破解某条TCP流量,真是闲的蛋疼。
数据解析时,python可以相互转换各种数据类型。最近在斯坦福公开课《密码学》网站上面做题发现,我对数据转换很不熟悉,写下日志记下用法。
Coursera公开课《加密学》的一道课后习题,花了整整一下午写程序解出来了,参考了很多资料。
深刻体会One time pad必须一次性使用的重要性。
requests库适合我这种懒人。
为什么要用requests而不用urllib2呢?
官方文档中是这样说的: