Java每天写1000字程序员

图说信息安全(上)

2016-06-12  本文已影响362人  帅气小伙

大家好,我是帅气小伙。最近忙着复习,更文的速度会慢很多,在这几天对信息安全的复习,我有许多非常棒的图和大家分享,希望对信息安全的内容有一个感性的认知。

信息安全

信息安全的解决办法

安全性攻击的主要形式

主要威胁

信息安全研究内容及相互关系

概述

信息安全模型

模型

美国人提出(InformationAssurance):为了保障信息安全,除了要进行信息的安全保护,还应该重视提高安全预警能力、系统的入侵检测能力,系统的事件反应能力和系统遭到入侵引起破坏的快速恢复能力。

密码学简介

简单的介绍

对称密码—加密密钥和解密密钥相同

对称密钥加解密的模型 对称密码体制

非对称密码—加密密钥和解密密钥不相同(公钥和私钥)

简介

对称密码的密钥分配分配问题(密码我有了,怎么告诉你)通信双方要进行加密通信,需要通过秘密的安全信道协商加密密钥,而这种安全信道可能很难实现;

对称密码的密钥管理问题(密码我有很多,很难管理)在有多个用户的网络中,任何两个用户之间都需要有共享的秘密钥,当网络中的用户n很大时,需要管理的密钥数目是非常大(n*(n-1)/2)。

对称密码的数字签名难实现问题(这个东西不是我上传的,可能是我的密码泄露了)当主体A收到主体B的电子文挡(电子数据)时,无法向第三方证明此电子文档确实来源于B,并事后B不能否认。

公钥密码体制模型

模型

RSA的密钥生成算法

生成算法

数字签名

做Android开发的应该不会陌生

Hash函数简单介绍

简介

信息完整性验证

图1

口令传输和存储

一般的web服务器存储密码的方式

开发小Tips

如何防止同一张图片被上传两次,对上传的文件进行Hash函数处理

数字签名

数字签名原理

Android应用签名过程解释

1.选择或者创建KeyStore文件(就是上面那个图的内容,创建时你填的内容),这个文件是加密的

2.打开的KeyStroe文件(创建过程不需要打开),然后输入你的密码(因为是加密的),输入你创建时候的别名(就是说你的笔名吧,创建的时候你要填的,相当于个人资料吧)。

3.输入你的私钥,然后Keytools就会帮你签名了,然后你的App就属于你的了。

Android开发中,为什么你的微信功能总是提示审核不通过?

1.你确认已经在微信上登记过你应用的包名并审核通过(登记的时候就是用你APP的公钥,一般用SHA的)

2.确认你调试APP的签名(公钥)与登记的公钥是一致的。很多人都是在这一步错了。因为你一直都是用DeBug签名(IDE自动帮你签了)

3.微信验证APP的过程,首先找到你的包名,然后查看你APP的公钥并与登记的对比。

PKI(公钥基础设施)

PKI简介 图1

证书的内容

CA发布证书的内容

CA简介

CA简介

RA简介

注册中心你只需知道这么多

密钥生命周期

密钥生命周期

CA和RA的协作

证书注册 证书撤销

证书管理

证书管理

基于PKI技术的协议

1.SSL

–认证用户和服务器,确保数据发送到正确的客户机和服务器

–加密数据以防止数据中途被窃取

–维护数据的完整性,确保数据在传输过程中不被改变

2.Https

–使用SSL来实现安全的通信

3.IPSec

-目前已经成为最流行的VPN解决方案

感想

这是我对知识的流程再造,我用一种直观的思维向大家呈现了信息安全这么课程的简单知识框架。也为大家展示了我心目中想要的总结。我一直希望自己能够像很多大牛一样能够贴出自己的代码,后来我发现贴代码是下下策,我从来都不会去看字段代码,更不会理解他们的思路,我只会粘贴到我的项目中。这对于一个程序员来说,是一点营养都没有的快餐。如果你真的想要深入学习,请像这篇文章一样,对你的知识进行流程再造。

一个值得思考的死循环

你真的懂吗?

这篇文章会有后续,用你们的喜欢来表达你们对下篇的期待吧,我是帅气小伙,我们下期再见。

上一篇 下一篇

猜你喜欢

热点阅读