【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/ ...
随机推荐
- 日期 date +%F-%T-%N
date +%F-%T-%N 2016-03-24-14:40:13-997433641 %% a literal % %a locale's abbreviated weekday nam ...
- android发短信,打电话
//1.进入系统短信列表界面 Intent intent = newIntent(Intent.ACTION_MAIN); intent.addCategory(Intent.CATEGORY_DEF ...
- 下厨房6月26日数据丢失事故总结 MYSQL主分区被rm 命令误删除
下厨房6月26日数据丢失事故总结 MYSQL主分区被rm 命令误删除 http://tech.xiachufang.com/?p=18 在6月26日凌晨12点左右,我们在做线上数据库的备库时,误将线上 ...
- MutationObserver 监听DOM树变化
1 概述 Mutation observer 是用于代替 Mutation events 作为观察DOM树结构发生变化时,做出相应处理的API.为什么要使用mutation observer 去代替 ...
- 【SVM】A Practical Guide to Support Vector Classication
零.简介 一般认为,SVM比神经网络要简单. 优化目标:
- Hive的安装与配置
1.因为我使用MySQL做为Hive的元数据库,所以先安装MySQL. 参考:http://www.cnblogs.com/hunttown/p/5452205.html 登录命令:mysql -h主 ...
- 机器学习理论基础学习5--- PCA
一.预备知识 减少过拟合的方法有:(1)增加数据 (2)正则化(3)降维 维度灾难:从几何角度看会导致数据的稀疏性 举例1:正方形中有一个内切圆,当维度D趋近于无穷大时,圆内的数据几乎为0,所有的数据 ...
- JSP—cookie
cookie的作用: 1.对特定对象的追踪,如访问次数,最后访问时间,路径等 2.统计网页的浏览次数 3.在cookie有效期内,记录用户的登录信息 4.实现个性化,记录用户的喜好 5.保存的数据存在 ...
- Verilog篇(四)时序模型
时序模型:仿真器的时间推进模型,它反映了推进仿真时间和调度事件的方式. 1)门级时序模型:适用于分析所有的连续赋值语句,过程连续赋值语句,门级原语,用户自定义原语. 特点:任意时刻,任意输入变化都将重 ...
- sql when null 判断
Sql Server 中使用case when then 判断某字段是否为null,和判断是否为字符或数字时的写法不一样,如果不注意,很容易搞错 错误方法: CASE columnName WHEN ...


