白盒加密基本思想

why:

  黑盒:攻击者无法实质的接触安全密钥(执行加、解密的算法)、或者任何内部的操作,仅仅能接触到外部的信息和操作,并且代码执行和动态加密也不可见。传统的加密技术默认为黑盒环境

  灰盒:攻击者能实质的接触到部分的密钥或者泄露的信息(即:边信道信息)。边信道分析攻击(Side Channel Analysis, SCA)利用密码系统泄漏的信息进行的。

  白盒:攻击者完全掌握了整个操作过程,且完全可见。攻击者可以自如地观察动态密码运行过程,并且内部算法的详细内容完全可见,可随意更改。

    所有涉及解密部分的代码也就一览无余了。定义如下:

    1. 攻击者对主机和软件具有完全控制权
    2. 软件动态执行过程是可见的
    3. 加密算法内部细节完全可见、可修改

 

what:

  白盒加密:属于对称加密,是指能够在白盒环境抵御攻击的一种特殊的加密方法。

  目的是:不在运行环境中出现完整的密钥

 

how:

  核心思想:混淆。
    混淆的意思就是让人看不懂,如果说加密是隐藏信息,混淆就是是扰乱信息。它们之间的最大区别是,加密就是信息放进了保险箱,但是一旦我有了钥匙,我就能打开这个保险箱。而混淆则是让信息以一种完全无法理解的形式存在,尽量让人无法理解中间的过程(也就是只能看到输入和输出,但无法理解结果是如何得到的),但不影响信息本身发挥作用(一个加了密的程序,在源码未解密前是无法执行的,但是经过混淆的程序,可以正确执行)。

  特点:算法和密钥紧密捆绑在了一起,生成表。

    白盒加密将算法和密钥紧密捆绑在了一起,由算法和密钥生成一个加密表和一个解密表,然后可以独立用查找加密表来加密,用解密表解密,不再依赖于原来的加解密算法和密钥。

  优势:算法和密钥的合并,所有可以有效隐藏密钥,与此同时也混淆了加密逻辑

    白盒加密的一种实现思路就是将算法完全用查表来替代。因为算法已知,加密的密钥已知,所以将算法和密钥固化成查表表示,这就是白盒密钥的实现过程。

  

 

posted @ 2022-01-24 17:32  修心而结网  阅读(553)  评论(0编辑  收藏  举报