如何hook关键数据的读取,对其加密解密,比如:NSUserDefaults

RT:如何hook关键数据的读取,对其加密解密,比如:NSUserDefaults 应该使用Method Swizzling还是Fishhook?

这2种方法应该都可以吧,是在越狱机上做吗?

非越狱机上是不是做不了呢?

非越狱机只能在自己的进程里做swizzle吧?
在自己的进程里,直接存取加密过的数据,然后本地解密就好了啊,为什么要swizzle呢?

就是想让开发的人不用管数据的加密和解密操作。

就是想让开发的人不用管数据的加密和解密操作。

关键是数据读写的位置不光发生在NSUserDefaults里吧,是要全部覆盖,还是只用覆盖NSUserDefaults?如果是后者,用swizzle应该是可行的

恩,其它关键数据的读写也要加密处理,包括sqlite、keychain。有什么更好的方案呢

……那还是让工程师自己写吧,不然是治标不治本