首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

紧急求助斑竹,难题码?

紧急求助斑竹,难题码?

斑竹,你好!
兄弟想请教如何在Flash中设置密码。用来控制我的主程序的运行。如果某人没有我的密码文件,即使有了我的程序也没有办法使用。就像正规软件中都有license 文件一样。另外,还有一种方式,即如何可以设定,我的程序只能够使用有限的次数。这样我可以把我的程序打一个包,送给一位网上认识的朋友。
Freescale的MCU与现在的大多数MCU采用基本相同的加密方法,即如果没有密码,就无法读出芯片中的程序和数据。
至于你说的那种加密,应该是应用软件层次方面的问题,与芯片本身的加密方法无关。
海纳百川  有容乃大
strongchen,你好,感谢你的发言。其实,我的意思是如何在flash中的某一地址写一个或者几个字节的数字。然后在程序中。去读这个地址的内容。如果不是我所设定的内容,就不能继续运行程序。在使用次数的限制上,我可以在某一地址写一数字,每次启动程序,这一数字进行加1,或者减一,就可以了。可是关键是怎么控制,flash的擦写呢。而且比如我的密码是长留flash的,一旦写入,以后对于软件的更改,就不再更换密码了。
strongchen,你好,感谢你的发言。其实,我的意思是如何在flash中的某一地址写一个或者几个字节的数字。然后在程序中。去读这个地址的内容。如果不是我所设定的内容,就不能继续运行程序。在使用次数的限制上,我可以在某一地址写一数字,每次启动程序,这一数字进行加1,或者减一,就可以了。可是关键是怎么控制,flash的擦写呢。而且比如我的密码是长留flash的,一旦写入,以后对于软件的更改,就不再更换密码了。
自己顶一下
应用程序对FLASH进行读或擦、写的操作是完全可以实现的,也很方便。对大多数Freescale的MCU,你可以直接调用它的Monitor ROM中的子程序对FLASH进行操作,当然也可以自己编程对FLASH进行操作。具体的资料请参加各个不同的MCU的数据手册中关于FLASH Memory和Monitor ROM的内容。
但我认为你如果不在应用程序中采用特殊的加密方法,那么别人一旦得到了你的程序,自然也就可以想办法破解了。
海纳百川  有容乃大
有个最简单的办法,把里面的关键部分做成库的形式,然后这样光得到你的源程序,而不把库的代码发给他,很多关键函数也打不开的
水泡泡
 我的QQ是:52449804 
 我的网站是: www.dyic.com.cn
 欢迎访问和留言跟我联系
nishui_2000,你好,可是怎么做成库呢?
顶一下
再顶
其实任何的加密只是一种形式吧,我个人认为的。因为无论是软件或者是硬件加密,只是一种对一般人的防范吧,有矛就有盾,只是一种值得跟不值得去解密的因素吧!你的第一个问题可以这样做吧,我这种方法本意也不是为了加密的,只是为了在线下载比较方便而写的。你可以把你的程序分成两部分。然后在Flash中分块吧!先写入一块程序,该段程序只负责管理你的Flash还有可以保存你的密码吧!然后在硬件中IO口上设置一下,如果出现你想要的情况,可以将程序跳到你的第一段程序地址中执行,也就是管理Flash的那段程序吧,这段程序可以下载你的原程序并把你的原程序写到你设置的区域吧,然后解除硬件设置,正常执行时就会在你的原程序中运行,并在你的原程序中校验一下你的密码吧,可以用一个关联密码,不要在原程序中出现具体的密码,如果能跟你密码的地址关联起来那更好不过了。这些只是有一定的作用,如果遇到真正的高手,也没有用,因为即使芯片加密,只要肯花气力也是可能的。所以这些加密方法都不是绝对万能的!
        至于你的第二个问题,应该可以解决,就像strongchen讲的那样是属于软件范畴的。你可以到那个论坛中去讨论。
Gulf
顶一下
怎么没有人回应呢
好象你的问题都回答过了,有没回答的吗?
是问怎么做库的方面么?有个最简单的方法,你在这个论坛里面搜索一下,有介绍的,我也是跟那个大侠学的。很容易,我现在就在用库
水泡泡
 我的QQ是:52449804 
 我的网站是: www.dyic.com.cn
 欢迎访问和留言跟我联系
返回列表