zoukankan      html  css  js  c++  java
  • 网络开发之《网络安全》

    用户标识:

    username
    password

    设备标识:

    deviceid            // imei/macaddr/flashid/rfid/buildid/uuid
    phonenumber         

    手防护层级逐渐加深,原创文章,转载请注明出处,否则可能追责。

    =================

    一层防护

    目的:防君子

    方法:通过用户名和密码登录。用户名为身份,密码用来验证身份。

    二层防护

    目的:防空中抓包

    方法:明文的用户名和密码通过算法进行加密传输 [对称加密/非对称加密/AES/RSA...]

    三层防护

    目的:防有ROOT权限病毒程序 (自动保存功能会将密码保存在本地,具有root权限的用户可以拿到)

    方法:对本地保存的密码进行加密 [Base64/md5/AES],这样拿到的是加密后的密码,没有算法也不能逆向出原密码。

    参考:http://blog.csdn.net/hengyunabc/article/details/34623957

    四层防护

    目的:防算法、密钥被代码逆向破解

    说明:java代码很容易被反编译,黑客拿到算法代码,反求出原密码

    方法:

      1. 可以考虑jni调用cc++算法实现,arm的指令集反编译后难懂,增加破解难度

      2. 硬件加密,将算法和密钥、ID放在专有硬件中,也就是所谓的加密芯片。

         将原文通过接口传入加密芯片,返回密文和密钥。

    五层防护

    目的:防分布式暴力破解

    说明:参照DES的不安全性文章

    方法:

     1. 用AES替代DES,128位替代64等,增加计算量

       2. 采用非对称加密,RAS,结合硬件加密技术,将原文通过接口传入加密芯片,返回密文和随机公钥(此处要保证公钥的数量和不重复性)

    六层防护

    目的:防止密文被截获、转发

    说明:服务器向车辆发出控制指令时,生成的随机公钥+密文可能会被空中抓包截获,黑客稍后转发指令,可实现对车辆的控制

    方法:

      1. 生成的公钥在时间上具有时效性,超时则被丢弃

        2. 随机公钥只能被使用一次或者几次,完成操作后被丢弃,不可复用

    七层防护

     目的:防止种种种种

     说明:再好的安全体系也有漏洞

     方法:

        1. 加入异常监控装置,实时提醒用户存在异常,必要的时候可关闭可能会发生危险的功能

        2. 法律和舆论

     附录

     AES加密避免踩坑的方法:http://www.myhack58.com/Article/html/3/92/2015/67908.htm

     移动App该如何保存用户密码:http://blog.csdn.net/hengyunabc/article/details/34623957

     物联网安全实战,小米上榜:http://drops.wooyun.org/tips/10109

    ============================================

    安全会是车联网永恒不变的话题,路漫漫其修远...

  • 相关阅读:
    selenium浏览器参数设置详解——转
    py打包工具
    BurpSuite暴力破解和防御实战
    费马小定理(确定n 是否为素数)
    如何实现一个RPC框架1 —— RPC简介和通信协议的定义
    如何实现一个RPC框架2 ——用Netty实现协议通信
    15.三数之和
    flex开发零碎笔记,随时补充
    转“国内图片网站Yupoo的架构”
    转“经验分享:大型高并发高负载网站的系统架构 ”
  • 原文地址:https://www.cnblogs.com/alanfang/p/5152090.html
Copyright © 2011-2022 走看看