Android端网络数据传输进阶过程

概述

   最近新接手了一个新的金融项目,进行二次开发,我只想说代码质量真是不怎么好,全部的代码都写在Activity里面,分层不是很清晰,但是每个项目都有值得学习的地方,给了我一个星期的时间来熟悉代码,我现在就来说下做了几个金融类项目,其中最重要的网络安全问题。

项目1:

     前面几个项目网络请求都没有做网络传输过程的加密,那个时候是没有安全意识,后台也没有提出网络传输过程需要加密,所以只做了简单的token验证,android端也没有对账户加入手势进入的功能,所以用户的信息完全暴露出来了,如果有人刻意劫持中间传输过程的数据,就可以拿到数据,做一些事情了。

项目2: 

     项目2的时候数据处理就感觉进阶了一个过程,这也是我安全意识提高的一个过程,这个项目使用后台给的公钥进行了加密,采用了HTTP+SSL方式进行了数据传输,在body部分,加入了签名的概念,使用MD5+特定令牌字段的方式对body里面的数据进行加密,但是只在签名过程进行了加密,在请求体里的其他数据没有进入另外的处理。这时候感觉这个项目的安全性还蛮好的。Android端也加入了进入手势,对资金的安全查看权限也提高了一个档次。

项目3:

    项目3就是这个二次开发项目,这个项目的代码质量不敢苟同,但是对网络数据的处理,也是我收益蛮多的,get到了新的知识点,简直就是美滋滋。该项目采用了AES加密的方式,但是我没有看到HTTP+SSL+证书的形式,但是它对网络的数据(body内容)进行了AES加密,然后用MD5又进行了一次加密,Android端对获取的数据要用AES进行解密,才能看到正常的json串,对本地数据的处理也采用了AES才会存储到本地,这个是我之前没有想到的方面。

  总结:

      通过做了若干个Android端的项目,我对网络安全有了大致的体会,感觉下次讨论前后端网络接口的时候,这些可以整理起来用到下个项目当中去,这是一个不断迭代的过程,反正每次看到新东西的感觉都是特别爽。但是过分的设计代码架构,你会发现别人看你代码可能要花点功夫,这个我深有体会。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值