单片机加解密原理
2017-06-09 16:31
537 查看
单片机加解密可划分为两大类,一类是硬件加解密,一类是软件加解密。
硬件加密,对于单片机来说,一般是单片机厂商将加密熔丝固化在IC内,熔丝有加密状态及不加密状态,如果处于加密状态,一般的工具是读取不了IC里面的程序内容的,要读取其内容,这就涉及到硬件解密,必须有专业的硬件解密工具及专业的工程师。
现在重点谈谈软件方面的加解密。
软件加解密的前提是要有软件,即单片机程序,可以是以源代码的形式(C语言或汇编语言程序)提供,或是以二进制(bin格式或hex格式等)提供。一般学习借鉴别人的程序,一般是以二进制形式提供(此二进制程序一般是从上述硬件解密的过程中得到)。随着科技的发展,一般由硬件解密过程获得的二进制程序,还需要做进一步的软件分析、修改,即软件解密过程,程序功能才能真正的有效(除非没有做任何软件加密的程序,稍微高手一点的工程师会对自己的软件加密的),否则程序只能烧到母片上有效,而烧到同型号的其它芯片,某些关键功能会失效,甚至整个程序将不工作。
其实软件加密原理很简单,就是利用单片机IC厂商,为每片出厂芯片的某一特殊全球唯一识别参数,即ID号做为密钥,对程序进行加密。如果以本ID号的程序烧到另一ID号的芯片中,程序中经软件加密过的部分的功能将完全失效。
要解密上述经软件加密过的程序,唯一的途径,就是反汇编程序,分析单片机反汇编后的汇编程序,将程序中软件加密相关的密钥去掉,然后编译得到新的程序。
硬件加密,对于单片机来说,一般是单片机厂商将加密熔丝固化在IC内,熔丝有加密状态及不加密状态,如果处于加密状态,一般的工具是读取不了IC里面的程序内容的,要读取其内容,这就涉及到硬件解密,必须有专业的硬件解密工具及专业的工程师。
现在重点谈谈软件方面的加解密。
软件加解密的前提是要有软件,即单片机程序,可以是以源代码的形式(C语言或汇编语言程序)提供,或是以二进制(bin格式或hex格式等)提供。一般学习借鉴别人的程序,一般是以二进制形式提供(此二进制程序一般是从上述硬件解密的过程中得到)。随着科技的发展,一般由硬件解密过程获得的二进制程序,还需要做进一步的软件分析、修改,即软件解密过程,程序功能才能真正的有效(除非没有做任何软件加密的程序,稍微高手一点的工程师会对自己的软件加密的),否则程序只能烧到母片上有效,而烧到同型号的其它芯片,某些关键功能会失效,甚至整个程序将不工作。
其实软件加密原理很简单,就是利用单片机IC厂商,为每片出厂芯片的某一特殊全球唯一识别参数,即ID号做为密钥,对程序进行加密。如果以本ID号的程序烧到另一ID号的芯片中,程序中经软件加密过的部分的功能将完全失效。
要解密上述经软件加密过的程序,唯一的途径,就是反汇编程序,分析单片机反汇编后的汇编程序,将程序中软件加密相关的密钥去掉,然后编译得到新的程序。
相关文章推荐
- AT89C51单片机解密原理
- [RSA加密2]RSA加密解密原理
- RC4的加解密原理
- 迅雷、快车、QQ旋风链接的加密解密方式原理
- 公钥私钥加解密原理
- CYQ.Data V5文本数据库技术原理解密
- Base64 算法原理,以及编码、解码【加密、解密】 介绍
- https原理:证书传递、验证和数据加密、解密过程解析
- 第30课:彻底解密Spark 2.1.X中Shuffle中JVM Unified Memory内幕详情:Spark Unified Memory的运行原理和机制是什么?Spark JVM最小配置是什么
- Openssl及加密解密(一)数据加密解密及CA原理
- 单片机仿真器的原理介绍
- Maxtocode对.Net程序加密的原理及解密探讨四(翻译IL字节码)
- CA 解密系统原理及流程
- https原理:证书传递、验证和数据加密、解密过程解析
- MaxtoCode对.Net程序加密的原理及解密探讨一
- https原理:证书传递、验证和数据加密、解密过程解析
- 椭圆曲线加解密及签名算法的技术原理及其Go语言实现
- 网络加密解密原理(一)
- 第01课 了解单片机的原理控制一个LED灯的亮和灭-----51单片机C语言试验教程