科普
每天早上起来第一件事就是打开交易所看币价行情的你,对加密货币的加密两字了解多少呢? 而密码学这看似深奥的学问,竟然可以追朔到古埃及时期?
(本文参考资料源自 CoinDesk )
Table of Contents
Toggle密码学的概念与起源简单来说,密码学是一门透过将讯息转换为只有预期接收者才能处理和阅读的形式来保护讯息的科学。它的第一个已知用途可以追溯到公元 1900 年,为埃及坟墓中的象形文字。而密码学本身来自希腊语 kryptos 和 graphein,分别表示隐藏和书写。
广告 内文未完请往下卷动密码学最着名的其中一个用途是由 Julius Caesar 在公元前 40 年左右开发的,人们称之为凯萨密码Caesar#8217s cipher。凯萨密码是一种针对英文字母的加密法,能使一篇英文文章不被外人解读,因为对外人而言,凯萨密码看起来就是一串单纯的乱码。而 Julius Caesar 其实是将字母表中的每个字母做平行移动,每个字母都被字母表中的后几个字母或前几个字母替换。例如,字母表向右移动五位,这意味着字母A 代表F,B代表G。因此传递讯息时,可以减少被拦截的疑虑,因为只有知道加密规则的人了解如何解读讯息。
在电脑出现之后,人们也开始使用更复杂的加密方式,但是不管在甚么时代,人们对加密的需求及目标依旧不变:将可读的消息纯文本转换为非预期读者无法理解的内容密文。
加密方式的种类在基础密码学中,有主要三种加解密方式,分别为对称式加密 Symmetric Encryption 、非对称式加密 Asymmetric Encryption 与杂凑函数 Hash Function 。
对称式加密对称式加密是指数据的传送方与接收方在加解密数据时,皆使用同一把密钥。所以只要双方都拥有这把钥匙,当传送方传送资料时,使用该把钥匙加密,而接收方在收到资料后,再使用同一把钥匙解密,便可解读资料。为此,双方需要提前商定密钥。虽然此加密方式较为方便且快速,但只有一个密钥保护讯息或数据需要承担密钥被有心人士拦截且复制的风险。
Binance官方下载这就像是你将家里的备用钥匙放在家门口的花盆底下,你跟室友在忘记携带钥匙的时候,皆可以透过此备用钥匙打开家门。但是,陌生人也有可能在未经许可的情况下找到钥匙并闯入。
非对称式加密非对称式加密是指每个使用者都拥有一对金钥,分别为公开金钥 Public key 及私密金钥 Private key ,公开金钥能被广泛地发布与流传,而私密金钥则必须被妥善地保存;当讯息由其中一把金钥加密后,就必须用另一把金钥解密。此外,加解密的钥匙要是完整一对的,可以是公钥加密私钥解密,也可以是私钥加密公钥解密,没有一定。运作原理是传送方与接收方在传送之前,先把彼此的公钥传给对方,当传送方要传送时,就用接收方的公钥将讯息加密,接收方收到加密讯息后,再用自己的密钥解开,这样即使有心人拿到公钥,只要没拿到接收方的私钥,也还是无法解密讯息。
但这依旧有个问题,接收方无法确定讯息是否真的由约定好的传送方传送。由于接收方的公钥是有可能在网路上被找到的,任何拥有接受方公钥的人皆可以将讯息透过该公钥进行加密并发送给接收方,若此讯息是恶意或有病毒的,接收方透过自己的私钥打开时,便面临着风险。这时便需要数位签章Digital Signature的帮忙了。
数位签章数位签章能确保讯息、软体或数位档案中数据的安全性、真实性和完整性。顾名思义,它的作用类似于物理签名,是将你的身份与数据绑定的独特方式。传送方透过使用自己的私钥将与签名相关的数据进行加密来创建数位签章,而接收方使用传送方的公钥来解密数据。因此如果接收方无法使用传送方提供的公钥解密和读取数位签章,则表明讯息、资料或签章存在问题,便无法对讯息进行身份验证,进而保障接收方的安全。
举例来说,大雄跟胖虎交换了公开金钥,大雄先用胖虎的公钥把讯息加密,再用大雄自己的私钥对该封讯息进行数位签章。而胖虎收到后,先用大雄的公钥确认数位签章是大雄本人没错,再用胖虎自己的私钥解开内容,便完成了讯息只有胖虎能看到,且确认是大雄寄给他的双重保障。
数位签章数位签章能确保讯息、软体或数位档案中数据的安全性、真实性和完整性。顾名思义,它的作用类似于物理签名,是将你的身份与数据绑定的独特方式。传送方透过使用自己的私钥将与签名相关的数据进行加密来创建数位签章,而接收方使用传送方的公钥来解密数据。因此如果接收方无法使用传送方提供的公钥解密和读取数位签章,则表明讯息、资料或签章存在问题,便无法对讯息进行身份验证,进而保障接收方的安全。
举例来说,大雄跟胖虎交换了公开金钥,大雄先用胖虎的公钥把讯息加密,再用大雄自己的私钥对该封讯息进行数位签章。而胖虎收到后,先用大雄的公钥确认数位签章是大雄本人没错,再用胖虎自己的私钥解开内容,便完成了讯息只有胖虎能看到,且确认是大雄寄给他的双重保障。
杂凑函数杂凑函数主要是将不定长度讯息的输入后,演算成固定长度杂凑值Hash Value的输出,且所计算出来的杂凑值必须符合两个主要条件:
由杂凑值是无法反推出原来的讯息。杂凑值必须随加密前的内容改变而改变。举例来说,杂凑函数就像一台果汁机,我们将各种水果 (资料) 放进去绞碎,这时候得出的产物 (经过杂凑函数计算出来的杂凑值) 是独一无二的,没有办法还原成原来的水果 (资料)。倘若我们改变水果的种类,得出的产物 (经过杂凑函数计算出来的杂凑值) 同时也会跟着改变。
从杂凑函数的两点特性可知,有别于其他形式的加密,因为它属于单向加密,无法从杂凑值反推回去。除此之外,杂凑值还可以充当数位指纹,预防资料在透过网路传输期间遭到任何未经授权的修改,因为对原始数据的任何更改都会产生新的杂凑值,该杂凑值不会再与原始数据匹配,便无法在区块链上进行验证。
加密货币的一大吸引力来自于其在区块链上的安全性和透明度。而这些都依赖于加密机制。未来密码学将持续发展,以满足人们对数位环境的安全需求,随着区块链技术和加密货币更广泛地被各行各业采用,密码学的应用将会更普及地出现在我们的生活中。
密码学 衍伸阅读