【Coursera】Security Introduction -Eighth Week(1)
Security Introduction
People With Bad Intent
今天,Bob 向 Alice 发送了一条 “Hello,Allice!” 的信息,他们希望这条信息只有他们两个人知道,但是邪恶的 C 出现了,他通过非法的手段窃听了这条信息,当然,在这之后,有一堆 无处不在的 贪图Alice美色的 坏人(看来Alice长的很漂亮。。),同样的也想要窃听他们之间的对话,怀着邪恶的目的。
Paranoia(偏执狂)
- Who is out to get you?
- If you are interesting or influential people want to get into your personal info.
- If you are normal, folks want to use your resources or take your information to make money...
- Usually no one cares...(=_=)But it is safest to assume some is always trying...
为什么要关注安全?因为security牵扯到我们每一个人,有人每时每刻都想着要偷取别人的个人信息来卖钱。
当我们谈及,有人想获取你的信息的时候,你会想:是谁 那么变态 想偷我的信息?为什么想要偷我的信息?
我们对于这个世界 太普通了,大部分想偷取我们利益的人,基本都是想拿走我们的银行卡,然后在冻结银行卡之前,买一些东西给他们维持生计(这让我开始心疼那些 负债累累 吃完沙县就跑路的老哥们)。
比如,你开了一家公司,你有很多生意上的竞争者,他们想破解进入你的邮箱,这种诡计比比皆是。
Who is out to get us? -The government
角色逆转了,那么此刻 government 是好人,我们是坏人,好人想要知道我们想干什么坏事,来阻止我们。
事实上,government 拥有最先进的安全破解设备。
Alan Turing and Bletchley Park
- Top secret code breaking effort
- 10,000 people at the peak (team effort).
- BOMBE: Mechanical Computer
- Colossus: Electronic Computer
政府现在拥有着像 BOMBE 这样的机器,窃取我们的机密通信,并且尝试破解它们。我们现在处在战争中,我们想让我们的信息越来越安全。最后演变成了一种军备竞赛。
Security is always a Tradeoff(交易,折中)
- "Pefect Security" is unreachable -Must find the right tradeoff.
- Security. versus(与). Cost.
- Security. versus. Convenience(See also,"profit").
- "More" is not always better -vendors(供应商) of products will try to convince you that you cannot live without their particular gadget(装置).
没有完美的安全措施,现在许多的公司听信所谓安全专家的话,花费大量的金钱来使得安全变得越来越好,这完全就是 fallacy(谬误推理)。
benefit analysis
Terminology(术语): 两个问题 欺骗与泄密
- 泄密 Confidentiality(机密性): Prevent unauthorized viewing of information.防止数据的泄露。
- 欺骗 Integrity(诚实正直): Information is from who you think it is from and has not been modified(调整) since it was change.
Security - Encryption(加密) and Confidentially
Confidentially 机密性
- Plaintext is a message that will be put into secret form.
- Ciphertext is a transformed version of plaintext that is unintelligible(不能理解的) to anyone without the means to decrypt(解释清楚).
首先解决的是 机密性,加密 和 解密。这是二战时布莱切利园的工作。
这里我们使用的术语:明文(plaintext) 和 暗文(ciphertext)。
无论我们想要传递文本信息或者是其他的信息,这些我们想传递的信息都叫做 明文。
这些信息我们有加密的版本,称之为暗文。
密文有可能在传输的过程中被第三方截获,我们所要做的事情 就是让 密文转变为明文 的这一过程 变的复杂且难以破译。
- encryption(加密): The transformation of plaintext to ciphertext is referred to as encryption.
- decryption(解密): Returning the ciphertext back to plaintext is referred to as decryption.
- The strengthen of a cryptosystem(密码系统) is determinded by the encryption and decryption techniques and the length of the key.
钥匙Key 本身是一串数据,通过特定的算法来实现加密和解密。
Two kinds of systems
Two basic types of cryptosystem exist: secret-key and public-key.
In a secret-key scheme(体系), the key used for encryption must be the same key used for the decryption. Also called symmetric-key (对称) crytosystem.
Secret-key crytosystems have the problem of secure key distribution(分配) to all parties using the cryptosystem.
我们有两种密码系统:公钥 和 密钥。密钥加密系统最早从罗马时代开始,一直到第二次世界大战。公钥加密系统相对来说比较年轻,从上个世纪70年代开始应用。
密钥,又称作 symmetric-key 对称密钥,意味着发送方和接收方都知道信息的内容。简单的来说,加密和解密使用同一把钥匙。
公钥,不是对称的,意味着加密所用的钥匙 和 解密所用的钥匙 不一样。
密钥的问题在于,你需要有一个绝对安全的交流环境。需要一个安全的方法告诉对方密钥。这个缺陷也推动了公钥的发展,公钥加密系统能够在并不安全的环境下工作,实现钥匙的传递。
如图,Alice 想要发送 “candy” 这条报文,她通过 密钥 加密了这条信息,得到了暗文:“dboez”,发送给了Bob,Bob 也知道密钥,将暗文解密,得到了明文“candy”。
我们假设 接收端和发送端 都是安全的,只有中间的网络是不安全的,那么信息被Eve截获了,Eve就要像布莱切利园一样,做解密的工作。
凯撒密码(The Caesar cipher) 是一种最古老的 最广泛应用的加密方式,我们在之前的FOJ上的题目有见到过这样的题目,输入一串暗文,利用凯撒密码的解密方式 得到明文。它采用的是 替换(shift)的概念。
明文在发送之前做了替换类型的加密工作,对方得到了密文,然后从安全的途径中获取了解密的方法,然后对密文进行解密。
加密的方法是 从明文字母对应到暗文字母,解密的方法是 从暗文字母对应到明文字母。
进行了两次的凯撒密码解密尝试:
我们能够猜测出 发送者想要发送信息的大意,从而帮助我们解密。当第三方发现数据泄露的时候,能够利用这一点 来破译密码。
在 www.rot13.com (类似早期的朋友圈,Facebook)中,会经常看到一些荤笑话,但是系统不允许出现 fuck 这样的脏话,所以发送者会想一些方法来加密这些文字,这样我们才能把荤段子发送给订阅的人。用到了凯撒密码的第13种解法,很有意思。我们把 荤段子 发送到rot13网站,然后加密为密文,发送给订阅者。
2016/8/9
【Coursera】Security Introduction -Eighth Week(1)的更多相关文章
- 【Coursera】Security Introduction -Eighth Week(2)
Review -Terminology(术语): Confidentiallity & Integrity 泄密 & 欺骗 Confidentiallity: Prevent unau ...
- 【Coursera】Security Introduction -Ninth Week(1)
前言 Coursera 的 Internet History,Technology,and Security 进入最后一周的学习了,在这最后一周内,需要进行的内容是 public-key 公钥系统的讲 ...
- 【Coursera】Security Introduction -Summary
对这门课程的安全部分进行一个小结. 往期随笔 第八周第一节 第八周第二节 第九周第一节 第九周第二节 前言:为什么互联网要提及安全 因为security牵扯到我们每一个人,有人每时每刻都想着要偷取别人 ...
- 【Coursera】Security Introduction -Ninth Week(2)
对于公钥系统,我们现在已经有了保证它 Confidentially 的一种方法:SSL.SSL利用了公钥的概念. 那么 who we are talking to? Integrity Certifi ...
- 【python】An Introduction to Interactive Programming in Python(week two)
This is a note for https://class.coursera.org/interactivepython-005 In week two, I have learned: 1.e ...
- 【Coursera】Seventh Week
Application Layer:Use the services of the TCP layer Quick Review Link Layer(Ethernet):gets the data ...
- 【Coursera】History: Dawn of Electronic Computing学后小结
今天学习了Coursera上University of Michigan开的互联网的历史.技术和安全课程的FirstWeek内容. 先是吐槽下这个Coursera,认证非常麻烦,PC端需要摄像头拍照. ...
- 【Coursera】支持向量机
一.最大间隔分类器 1. 函数间隔:\(γ^{i} = y^{i}(w^{T} x + b)\), 改变w和b的量级,对分类结果不会产生任何影响,但是会改变函数间隔的大小.因此,直接对函数间隔求最大值 ...
- 【转】An introduction to using and visualizing channels in Go
An introduction to using and visualizing channels in Go 原文:https://www.sohamkamani.com/blog/2017/08/ ...
随机推荐
- SQL SERVER 2008 误删数据且无全备恢复方法
原文:http://www.jb51.net/article/84932.htm SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可.但是,这个恢复需要有两个前提条件: 1. 至 ...
- 使用spring boot,gradle,idea,js,html创建一个小的前后端程序
1:配置build.gradle,添加依赖等 buildscript { repositories { mavenCentral() } dependencies { classpath('org.s ...
- bootstrap modal插件弹出窗口如何限制最大高度,并且在内容过多时可以滚动显示
.modal-body{ max-height:400px; overflow-y:auto; } 只有在modal-body类上限制高度才能起作用,其他地方的限制均不起作用
- [lr] 直方图
直方图基础知识 • 直方图的特征和作用 ▪ 直方图的x轴从左到右代表亮度逐渐增加,即从最暗到最亮:y轴代表某个亮度值下颜色像素的多少(密度). ▪ 直方图由红绿蓝三种颜色组成,分别表示红绿蓝通道:其中 ...
- win 7 和 winserver 2008 下,布署网站遇到的错误解决方法
本人亲测,有效. 1.如果只列出目录: web.config的system.webServer配置节下是否有这个: <modules runAllManagedModulesForAllRequ ...
- linux文件系统软链接硬链接
引子 目前,UNIX的文件系统有很多种实现,例如UFS(基于BSD的UNIX文件系统).ext3.ext4.ZFS和Reiserfs等等. 不论哪一种文件系统,总是需要存储数据.硬盘的最小存储单位是扇 ...
- JaveScript-简介
1.JaveScript:脚本语言.(弱类型语言)可以写在head,也可以写在head里,同样可以写在html外面<script src=""></script& ...
- hdu6000 Wash ccpc-20162017-finals B Wash
地址:http://acm.split.hdu.edu.cn/showproblem.php?pid=6000 题目: Wash Time Limit: 20000/10000 MS (Java/Ot ...
- swift 错误集锦
1.注册 NIB 出现错误 // error:'registerNib(_:forCellReuseIdentifier:)' has been renamed to 'register' (_:fo ...
- Zookeeper使用实例——分布式共享锁
前一讲中我们知道,Zookeeper通过维护一个分布式目录数据结构,实现分布式协调服务.本文主要介绍利用Zookeeper有序目录的创建和删除,实现分布式共享锁. 举个例子,性能管理系统中,告警规则只 ...