互联网：加密与公钥
嗨，我叫米娅·吉尔·埃普纳( Mia Gil-Epner)， 我在加州大学伯克利分校主修计算机科学系
我在国防部工作，主要工作是确保信息安全
互联网是一个开放的公共系统。 我们在共享的线路上传送与接受信息
尽管它是一个开放系统， 我们仍然透过网络交换大量的私密数据
像是：信用卡号码、帐户信息、密码、电子邮件
那么这些私人事物要如何保密呢？ 任何类型的数据都可以通过
透过加密程序：混排或改变信息来隐藏原始的内容， 任何类型的数据都得以保密
解密是一个重排的过程，得以让数据变得可以解读
这是一种简单的想法，人们这样做已经有好几世纪之久
最为人所知的一种加密方法是「凯萨密码」
这个方法是以凯萨大帝来取名，这位罗马将军将军事命令加密
以确保即使信息被敌方拦截，也无法解读。
凯萨密码是一种演算规律： 将原文中的每一个字母，按顺序都替换为向下一定间隔「数量」的字母
如果这个数量只有信息的发送者与接收者知道，它就称为密钥（key）
它允许接收者能够解开秘密信息
举例来说：假定你原本的信息是「HELLO」 使用凯萨密码算法，密钥是5
加密后的信息会是… 要解密消息，收件人只需使用密钥进行反转过程。
但有一个大问题， 有了凯撒密码，任何人都可以轻易破解
或者破解加密信息，通过尝试每一个可能的密钥，并在英文字母表
只有26个字母，这意味着你最多只需要试26个键就可以解密消息。
现在尝试26个可能的键不是很难，它最多需要一两个小时
让我们把它变得更难： 将每个字母横移不同的数量，而不是固定的量
这个例子： 用一个10位长度的密钥，来加密信息
（显示着每个连续的字母要更改的位置）
要猜到这个密钥非常困难！ 使用10位加密，就有100亿种可能的密钥组合
很明显，这超过任何人类可以解决的范围，可能要花许多世纪
但现今的一台普通计算机，只要几秒就可以尝试所有100亿种可能组合
因此，在现代世界里，坏人都装备了计算机，不是拿笔算
你要怎么做，才能把信息加密到足够安全，太困难到无法破解呢？
太困难是指：有太多的可能性，因此不可能在一段合理的时间内被计算出来
当今的安全通信是以256位元长的密钥来加密。
这表示：坏人拦截了你的信息，他的计算机必须尝试这么多种的可能密钥… （看画面上的巨量数字）
直到他找到了正确的密钥，才能破解信息。 即便你有100,000台超级计算机，
要让这10万台超级计算机去每秒尝试那一百万亿的密钥， 将要花费数十年的时间，才能尝试每一种组合。
哪怕仅仅是破解一条由256位加密保护的信息。
当然，计算机芯片的速度是它的两倍，大小是它的一半。
如果这种指数级的发展速度继续下去，今天不可能解决的问题，
将在未来几百年内得到解决，那么256位元也将不足以保证安全。
事实上,我们已经不得不增加标准关键的长度来跟上计算机的速度。
好消息是，使用较长的密钥并不会使加密消息变得更加困难，
但它会成倍地增加破解密码所需的猜测次数。
当发送方和接收方使用相同的密钥对消息进行加密和解密时，
称为对称加密。像凯撒密码(Caesar Cipher)这样的对称加密技术，
密钥必须由两个人事先私下商定。这对我们来说是件好事，
但互联网是开放的，是公开的，所以两台计算机不可能私下“见面”，
就密钥达成一致。相反，计算机使用非对称加密密钥，
即公钥可以与任何人交换不共享的私钥。公钥用于加密数据，
任何人都可以使用它来创建一条秘密消息，但是只有
访问私钥的计算机才能解密这个秘密。至于，它是如何工作的
是一些我们暂时不会提及的数学知识。现在，假设你有一个个人邮箱，
任何人都可以将邮件存入该邮箱，但他们需要一个密钥。你可以
复制多份密钥，然后寄给你的朋友，或者直接把它公开。你的朋友
甚至陌生人都可以使用公钥访问您的储存槽并向其中发送消息，
但只有你可以使用你的私钥打开邮箱，访问收到的所有秘密消息。
你还可以通过使用朋友邮箱的公开密钥，将消息发回你的朋友。
通过这种方式，人们可以在不需要就私钥达成一致的情况下交换安全消息。
公钥密码学是开放internet上所有安全消息传递的基础，
包括称为SSL和TLS的安全协议，
它们在我们浏览web时保护我们。
今天，只要在浏览器的地址栏中看到小锁或https字母，
这意味着您的计算机，正在使用公钥加密与您所在的网站安全地交换数据。
随着越来越多的人上网，越来越多的私人数据将被传输，
保护这些数据的需求将变得更加重要。
随着计算机运行速度越来越快，我们将不得不开发新的方法，
使加密技术难以破解。这就是我的工作，它总是在变化。