Wecouldn'tfindanyresultsforyoursearch.Pleasetryagainwithanotherkeywords.
信息被加密以后变成了密文在网上传播,接收者拿到密文进行解密cryptanalysis,解密以后就可以看到明文。
进行破译密码的人叫破译者,破译者不一定都是坏人,密码学研究者为了研究密码强度,也会需要对密码进行破译,研究者在这种情况下也是破译者。
加密与压缩的顺序?压缩一定在加密之前。因为加密以后,比特序列的冗余性消失,基本上无法再压缩了。在加密前进行压缩的做法不仅仅限于混合密码系统,而是对所有密码都适用。
对称密码(symmetriccryptography)是指在加密和解密时使用同一密钥的方式。对应的加密方式是对称加密。目前广泛使用AES。
对称密码有多种别名,公共密钥密码(common-keycryptography),传统密码(conventionalcryptography),私钥密码(secret-keycryptography),共享密钥密码(shared-keycryptography)等。
对称密码需要解决将解密密钥配送给接收者的密钥配送问题。
公钥密码(public-keycryptography)则是指在加密和解密时使用不同密钥的方式。对应的加密方式是非对称加密。目前广泛使用RSA。(RSA、ElGamal、Rabin、DH、ECDH)
公钥密码解决了密钥配送的问题,但是存在通过中间人攻击被伪装的风险,因此需要对带有数字签名的公钥进行认证。
网上很多免费的软件,为了防止软件被篡改,有安全意识的软件发布者会在发布软件的同时会发布这个版本软件的散列值hash。散列值是用单向散列函数(one-wayhashfunction)计算出来的数值。目前广泛使用SHA-2(SHA-224、SHA-356、SHA-384、SHA-512)和具有全新结构的SHA-3(Keccak算法)
散列值hash,又被称为哈希值,密码校验和(cryptographicchecksum),指纹(fingerprint),消息摘要(messagedigest)。
单向散列函数并不是为了保证消息的机密性,而是完整性(integrity)。完整性指的是,数据是正确的,而不是伪造的。单向散列函数是保证信息的完整性的密码技术,它会检测数据是否被篡改。
单向散列函数可以单独使用,也可以作为消息认证码、数字签名以及伪随机数生成器等技术的组成元素使用。
为了确认消息是否来自期望的通信对象,可以通过使用消息认证码(messageauthenticationcode)。消息认证码主要是提供了认证(authentication)机制,与此同时它也能保证消息的完整性。
消息认证码中最常用的单向散列函数是HMAC。HMAC的构成不依赖于某一种具体的单向散列函数算法。
消息认证码能对通信对象进行认证,但无法对第三方进行认证。它也无法防止否认。消息认证码可以用来实现认证加密。
试想有这样一种情况,A欠B100万美刀,于是A向B打了一张欠条。一周以后,A拿到钱以后就不承认那张欠条是自己写的,抵赖借钱了。
这个时候就牵扯到密码学里面的防抵赖的技术——数字签名。数字签名类似现实世界中的签名和盖章,数字签名是一种能防止用户抵赖,伪装,篡改和否认的密码技术。目前广泛使用的数字签名算法包括RSA、ElGamal、DSA、椭圆曲线DSA(ECDSA)、爱德华兹曲线DSA(EDDSA)等。
如果用户B能让A在打欠条的时候,签上自己的签名(数字签名),这样可以防止他日后抵赖。
公钥基础设施PKI中使用的证书,就是对公钥加上认证机构的数字签名所构成的。要验证公钥的数字签名,需要通过某种途径获取认证机构自身的合法公钥。
伪随机数生成器(PseudoRandomNumberGenerator,PRNG)是一种能够模拟产生随机数列的算法。伪随机数负责承担密钥生成的职责。它由密码和单向散列函数等技术构成,主要用于生成密钥、初始化向量和nonce等。
加密技术是为了让消息内容本身无法被读取。而隐写术是为了能够隐藏消息本身。
举个例子,比如在一个音乐里面可以隐藏一张图片,在特定的比特位上面分别插入图片的二进制位,只要记住哪些位是图片,哪些为是音乐,那么就能还原成一首音乐和一张图片。
再比如,iOS开发中,可以把客户端本地的证书隐藏到图片资源中。这样就算怀有恶意的人拆开ipa安装包,咋一看也找不到证书文件,除非先逆向代码,找到隐写术的算法才能获取到证书的真实文件。
数字水印就是利用了隐写术的方法。数字水印是一种将著作权拥有者及购买者的信息嵌入文件中的技术。但是仅仅凭借数字水印技术是没有办法对信息进行保密的,所以需要结合其他的技术一起。
可以将加密和隐写术结合起来使用。类似上面证书隐藏到图片中的例子。证书是加密过的,所以证书隐藏了敏感信息,隐写术又隐藏了证书本身。
密码学家的工具箱中的内容完整整理如下:
密码技术实质是压缩技术
在消息认证码中,MAC值就是认证符号,在数字签名中,签名就是认证符号。两者都是通过较短的认证符号来对较长的消息进行认证。
历史上著名的密码有,凯撒密码,简单替换密码,Enigma。
凯撒密码是把明文简单的平移n位,得到密文。这种密码强度低,可以用暴力破解它,左右移动尝试0-25次就可以破译。
Enigma是二战中德国使用的密码机器。通过转子和接线的方式来产生密钥。过程略复杂。图灵在1940年研究出了破译Enigma的机器。
用公钥密码加密会话密钥,用对称密码加密消息。
这里看似复杂,其实就是前面几步的组合。先生成数字签名,然后再进行加密。加密的本体不仅仅是消息本身,而是数字签名和消息拼合之后的数据。
这里也是之前验证数字签名和解密步骤的组合。解密先解密的不仅仅是消息,而是数字签名和消息拼合之后的数据。
Reference:
《图解密码技术》
Populartags
About
Newsletter
Subscribetoournewsletterandstayupdatedonthelatestnewsandspecialoffers!