A. 对STM32F107编程时,使用什么方法能防止被别人反汇编,用什么方法能够加密谢谢

1,如果板子上有外部存储器,可以先编写一个程序,利用算法把id计算得内到一些值容存入外部存储器,然后再烧写真正的程序,真正的程序去校验外部存储器的数据是否合法即可

2,利用板子上按键组合,或是上电按住某些键,程序在这个时候利用算法把id计算得到一些值存入程序区(stm8为EE区),程序运行时去验证程序区数据是否正确

3,轩微编程器有软件加密的功能,编程器会读芯片id,根据算法直接改写缓冲区,达到软件加密的作用

4,读出的id通过一定算法,例如异或加上一个数,得到的数据存入flash(只运行一次,运行后标志位也存入flash),下次读到这个标志位,就不运行这个程序。

四、做软件加密时注意
1,不要在程序中直接出现id地址,例如STM32:1FFFF7E8 1FFFF7EC 1FFFF7F0 STM8: 0x4865~0x4870
2, 利用校验和或是crc对程序区进行校验,防止改程序

B. 什么是反汇编

嘿嘿 汇编:就是将汇编语言源程序翻译成(机器指令表示的二进制文件)目标程序。

反汇编专就是汇属编的反过程,它是将可执行的目标程序翻译成汇编语言源程序的过程。也就是解密。
由于现在的保密意识到加强,一般在把目标程序写入芯片的同时,都采取了软件加密和硬件加密技术,反汇编的难度越来越大。

呵呵 满意 就选满意回答哦

C. 单片机原理的加密方法

科研成果保护是每一个科研人员最关心的事情,加密方法有软件加密,硬件加密,软硬件综合加密,时间加密,错误引导加密,专利保护等措施有矛就有盾,有盾就有矛,有矛有盾,才促进矛盾质量水平的提高加密只讲盾,也希望网友提供更新的加密思路,现先讲一个软件加密:利用MCS-51 中A5 指令加密,其实世界上所有资料,包括英文资料都没有讲这条指令,其实这是很好的加密指令A5 功能是二字节空操作指令加密方法在A5 后加一个二字节或三字节操作码,因为所有反汇编软件都不会反汇编A5 指令,造成正常程序反汇编乱套,执行程序无问题仿制者就不能改变你的源程序。
硬件加密:8031/8052单片机就是8031/8052掩模产品中的不合格产品,内部有ROM,可以把8031/8052 当8751/8752 来用,再扩展外部程序器,然后调用8031 内部子程序当然你所选的同批8031芯片的首地址及所需用的中断入口均应转到外部程序区。
硬件加密
用高电压或激光烧断某条引脚,使其读不到内部程序,用高电压会造成一些器件损坏重要RAM 数据采用电池(大电容,街机采用的办法)保护,拔出芯片数据失去机器不能起动,或能初始化,但不能运行。
用真假方法加密
擦除芯片标识
把8X52单片机,标成8X51 单片机,并用到后128B的RAM 等方法,把AT90S8252 当AT89C52,初始化后程序段中并用到EEPROM 内容,你再去联想吧!
用激光(或丝印)打上其它标识如有的单片机引脚兼容,有的又不是同一种单片机,可张冠李戴,只能意会了,这要求你知识面广一点 。
用最新出厂编号的单片机,如2000 年后的AT89C 就难解密,或新的单片机品种,如AVR 单片机。
DIP 封装改成PLCC,TQFP,SOIC,BGA等封装,如果量大可以做定制ASIC,或软封装,用不需外晶振的单片机工作(如AVR 单片机中的AT90S1200),使用更复杂的单片机,FPGA+AVR+SRAM=AT40K系列。
硬件加密与软件加密只是为叙说方便而分开来讲,其实它们是分不开的,互相支撑,互相依存的软件加密:其目的是不让人读懂你的程序,不能修改程序,你可以………….....
利用单片机未公开,未被利用的标志位或单元,作为软件标志位,如8031/8051有一个用户标志位,PSW.1 位,是可以利用的程序入口地址不要用整地址,如:XX00H,XXX0H,可用整地址-1,或-2,而在整地址处加二字节或三字节操作码,在无程序的空单元也加上程序机器码,最好要加巧妙一点用大容量芯片,用市场上仿真器不能仿真的芯片,如内部程序为64KB 或大于64KB 的器件,如:AVR 单片机中ATmega103 的Flash 程序存储器为128KBAT89S8252/AT89S53中有EEPROM,关键数据存放在EEPROM 中,或程序初始化时把密码写到EEPROM 中,程序执行时再查密码正确与否,尽量不让人家读懂程序。关于单片机加密,讲到这里,就算抛砖引玉。

D. 在烧写.hex程序时为什么出现了加密呀

现在的烧写器抄在烧写*.hex程序时,为了保护你的程序,都会要求你进行加密,若你来加密,也可以正常烧写进去,不会影响你调试程序.
只是这一块MCU若是到了别人手里,别人就可以通过烧写器把芯片里的*.hex程序读出来,再反汇编一下,那么你的原程序就成了别人的了.
所以,若要形成产品,在烧写*.hex程序时就一定要加密!!!

E. 关于加密的和反汇编的

你的key1...keyn是原文抄吧,X1...Xn是密文吧!首先你对密钥理解的不够清楚,你的意图是每个数据*100,密钥算法(密钥只是算法的一种形象说法)不同?解密就是/100,如果得知其中任何2对以上数据,是很容易推算的。加密就是将数据以另一种形式表现,将原始数据带入某个函数,得出结果就是另一种形式,但这个函数可能是很复杂的,这是数学家关心的。 关于花指令就是误导反汇编软件的,不知道上述生成啥汇编啊?我不太了解,看上面有跳转语句,应该汇编后也生成跳转,起一定作用。
记得点赞啊

F. 反汇编逆向难学吗,入门难吗

反汇编是工具来做的,比如IDA,OD,你说的这个应该是逆向和破解技术。
逆向其实内是有它的难度在里面的,要跟容汇编打交道,很多时候破解要涉及加密算法,驱动保护还有壳。可以这么说,逆向技术本身不算太难,但是难的是逆向防御技术。

因为逆向在windows平台上的通用性而且不是太难学,导致了商业软件为了追求安全性,产生了很多逆向分析的对抗技术,来增强自己的安全性。毕竟自己辛辛苦苦花钱花时间搞出来的东西,被别人两下学了去,怎么想怎么不舒服。
这里面,加壳鄙人不了解,不做评论。驱动保护就是在内核里搞风搞雨,入手的门槛还是比较高的。所以学逆向不难,花时间花功夫多练手。但是想把你高超的逆向功力应用到实际的商业产品上,驱动和壳是你必须面对的东西,去研究这两者会花费大量精力。
AGP论坛站长,反游戏保护和windows内核技术大牛A总听说是高二就开始研究内核技术了,lz如果花时间,也是能学成的,毕竟有成功案例在了。有点基础想撸驱动,还可以找A总报名参加下付费培训。。。广告已打, 心满意足。