CN102111753A - 一种手机软件加密方法 - Google Patents
一种手机软件加密方法 Download PDFInfo
- Publication number
- CN102111753A CN102111753A CN2010105776167A CN201010577616A CN102111753A CN 102111753 A CN102111753 A CN 102111753A CN 2010105776167 A CN2010105776167 A CN 2010105776167A CN 201010577616 A CN201010577616 A CN 201010577616A CN 102111753 A CN102111753 A CN 102111753A
- Authority
- CN
- China
- Prior art keywords
- mobile phone
- uid
- software
- database
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Telephone Function (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
一种手机软件加密方法,涉及软件,尤其涉及手机设计方案的软件加密方法;首先是在生产环节,每台手机在烧录软件时,会根据手机CPU中的UID码来对软件中的部分关键代码做加密。由于每台手机的UID码都是独一无二的,所以实际写入每台手机ROM中的软件都是唯一的与它的硬件UID码匹配的。在生产烧录的过程中,会记录下每台正版生产的手机的UID码,并按批次汇总到验证服务器的数据库中,在手机首次开机连入运营商网络后,就会将本机的UID码发给服务器做验证,如果服务器在UID数据库中找不到相应的记录,说明此台手机不是正版生产的,手机软件将被锁定,不能正常工作。这样通过在生产环节和使用环节的双重加密验证,能够有效防止手机设计方案被盗用。
Description
技术领域
本发明涉及软件,尤其涉及手机设计方案的软件加密方法。
背景技术
传统的设计中,终端产品软件加密是通过软件和硬件相结合的方式,软件结合硬件的方式需要使用到IC芯片,增加了产品的成本。
发明内容
本发明所要解决的技术问题是提供一种简单的软件加密方法,通过在生产环节和使用环节的双重加密验证,能够有效防止手机设计方案被盗用。
本发明是通过以下技术方案来实现的:一种手机软件加密方法,其特征在于包括下列步骤:
S1、设计公司在完成手机软件开发后,编译连接为BIN文件,供工厂烧录;
S2、手机烧录软件在烧录时先读取手机CPU的唯一识别码UID,任意两颗CPU的UID都是不同的;
S3、手机烧录软件以UID为密钥对BIN文件中关键部分代码做加密处理,再将处理后的BIN文件烧录入手机;
S4、手机烧录软件将每台手机的UID都记录下来,并按批次导入验证服务器的UID数据库;
S5、手机开机后,读取本机CPU的UID,并以UID为密钥对关键部分代码做解密;
S6、当手机软件运行到解密部分代码时,如果解密是正确的,软件可以顺利运行下去;如果解密错误,软件不能正常运行,则手机不能正常开机;
S7、手机开机成功,连入运营商网络,进入待机状态后,会检查本机的文件系统中是否存在远程验证成功记录;如果为是,则手机继续正常工作;如果为否,则连接验证服务器,将UID发送给服务器;
S8、服务器将待验证的UID与数据库中的记录做比对,如果数据库中有同样的UID记录,则验证成功,在手机文件系统中写下验证成功记录,下次开机后不必再做验证;如果数据库中不存在此UID记录,则为盗用软件生产的产品,手机将被锁机,再不能连入运营商网络。
本发明的有益效果在于:首先是在生产环节,每台手机在烧录软件时,会根据手机CPU中的UID码来对软件中的部分关键代码做加密。由于每台手机的UID码都是独一无二的,所以实际写入每台手机ROM中的软件都是唯一的与它的硬件UID码匹配的。如果用ROM读取设备来盗读手机软件,盗取的软件写入别的手机,由于UID码的不匹配,是无法正常开机的。生产环节的加密依赖于生产工厂对烧录软件以及烧录BIN文件的保密,但是由于手机销售维修渠道的特殊性,手机的各地维修点也有可以获得烧录软件以及烧录BIN文件,为了弥补这个漏洞,又增加了远程验证的环节。在生产烧录的过程中,会记录下每台正版生产的手机的UID码,并按批次汇总到验证服务器的数据库中,在手机首次开机连入运营商网络后,就会将本机的UID码发给服务器做验证,如果服务器在UID数据库中找不到相应的记录,说明此台手机不是正版生产的,手机软件将被锁定,不能正常工作。这样通过在生产环节和使用环节的双重加密验证,能够有效防止手机设计方案被盗用。
附图说明
图1为本发明的一种手机软件加密方法流程示意图。
具体实施方式
下面结合附图对本发明作进一步说明:
参照图1所示,本发明一种手机软件加密方法包括下列步骤:
S1、设计公司在完成手机软件开发后,编译连接为BIN文件,供工厂烧录;
S2、手机烧录软件在烧录时先读取手机CPU的唯一识别码UID,任意两颗CPU的UID都是不同的;
S3、手机烧录软件以UID为密钥对BIN文件中关键部分代码做加密处理,再将处理后的BIN文件烧录入手机;
S4、手机烧录软件将每台手机的UID都记录下来,并按批次导入验证服务器的UID数据库;
S5、手机开机后,读取本机CPU的UID,并以UID为密钥对关键部分代码做解密;
S6、当手机软件运行到解密部分代码时,如果解密是正确的,软件可以顺利运行下去;如果解密错误,软件不能正常运行,则手机不能正常开机;
S7、手机开机成功,连入运营商网络,进入待机状态后,会检查本机的文件系统中是否存在远程验证成功记录;如果为是,则手机继续正常工作;如果为否,则连接验证服务器,将UID发送给服务器;
S8、服务器将待验证的UID与数据库中的记录做比对,如果数据库中有同样的UID记录,则验证成功,在手机文件系统中写下验证成功记录,下次开机后不必再做验证;如果数据库中不存在此UID记录,则为盗用软件生产的产品,手机将被锁机,再不能连入运营商网络。
在具体操作时,例如设计公司完成某型号手机的软件开发,编译连接后生产烧录手机用的BIN文件发到工厂。BIN文件从地址0x0000000至0x00004000的指令是手机硬件自检程序,从地址0x00010000开始是主程序。手机开机后从地址0x00000000开始执行指令,执行到硬件自检程序结尾处,即地址0x0000399C,此处的指令是“B 0x00010000”,即跳转到主程序入口。
烧录工具在烧录A手机时,先读取A手机CPU的UID码,例如为34AF-1356-5BD0-0235,以此UID码为密钥对指令“B 0x00010000”做DEC加密,加密结果为“23AE3422”,于是烧录工具将BIN文件地址0x0000399C处的内容改为“23AE3422”,并将处理过后的BIN文件烧录入手机的ROM中。同时,烧录工具将该手机的UID码34AF-1356-5BD0-0235记录入设计公司的数据库。
烧录后的A手机,在开机后,烧录在ROM中的程序被拷贝到RAM中,并且,地址0x0000399C处的内容“23AE3422”被以UID码为密钥解密还原为“B0x00010000”。然后,CPU从地址0x00000000处开始执行指令,首先执行的是硬件检测程序,硬件检测结束后,地址0x0000399C处的指令“B 0x00010000”会将程序流程正确的跳转到主程序入口处,开始执行主程序,手机A可以顺利开机。
如果有他人试图盗版该手机设计方案,购买到A手机后,采用抄板的方法,复制出与A主板相同的主板B,并用回读设备读出A手机ROM中的内容,重新烧录入B手机,那么,B手机ROM的0x0000399C处也为“23AE3422”。当B手机开机后,烧录在ROM中的程序被拷贝到RAM中,地址0x0000399C处的内容“23AE3422”被以B手机的UID码为密钥解密,由于B手机CPU的UID码不是34AF-1356-5BD0-0235了,所以不能解密出正确的“B 0x00010000”指令,程序流程不能正确的跳转到主程序入口处,B手机无法正常开机。
但是如果盗版者设法拿到了烧录工具和烧机BIN文件,那么写入B手机的内容,就会正确的加密和解密,为此,必须有第二道防线来做防范,这就是UID数据库的验证。设计公司每批次给工厂下订单生产,工厂在生产线上每烧录一台手机,就记录一次UID码,生产结束后,将该生产批次的UID码汇总提交给设计公司,设计公司将这些UID码都存入UID数据库。
当正版手机A第一次开机成功,连入运营商网络,进入待机状态后,会连接设计公司的验证服务器,将本机UID发送给服务器。服务器将待验证的UID与数据库中的记录做比对,如果数据库中有同样的UID记录,则验证成功,在手机文件系统中写下验证成功记录,下次开机后不必再做验证;如果数据库中不存在此UID记录,则为盗用软件生产的产品,手机将被锁机,再不能连入运营商网络。
这样,盗版的手机B,即使是采用原厂的烧录工具和烧机BIN文件来生产,能正常开机,在远程验证这个环节,由于其UID码未曾录入数据库,无法通过验证,也会被锁机,不能继续使用。
根据上述说明书的揭示和教导,本发明所属领域的技术人员还可以对上述实施方式进行适当的变更和修改。因此,本发明并不局限于上面揭示和描述的具体实施方式,对本发明的一些修改和变更也应当落入本发明的权利要求的保护范围内。此外,尽管本说明书中使用了一些特定的术语,但这些术语只是为了方便说明,并不对本发明构成任何限制。
Claims (1)
1.一种手机软件加密方法,其特征在于包括下列步骤:
S1、设计公司在完成手机软件开发后,编译连接为BIN文件,供工厂烧录;
S2、手机烧录软件在烧录时先读取手机CPU的唯一识别码UID,任意两颗CPU的UID都是不同的;
S3、手机烧录软件以UID为密钥对BIN文件中关键部分代码做加密处理,再将处理后的BIN文件烧录入手机;
S4、手机烧录软件将每台手机的UID都记录下来,并按批次导入验证服务器的UID数据库;
S5、手机开机后,读取本机CPU的UID,并以UID为密钥对关键部分代码做解密;
S6、当手机软件运行到解密部分代码时,如果解密是正确的,软件可以顺利运行下去;如果解密错误,软件不能正常运行,则手机不能正常开机;
S7、手机开机成功,连入运营商网络,进入待机状态后,会检查本机的文件系统中是否存在远程验证成功记录;如果为是,则手机继续正常工作;如果为否,则连接验证服务器,将UID发送给服务器;
S8、服务器将待验证的UID与数据库中的记录做比对,如果数据库中有同样的UID记录,则验证成功,在手机文件系统中写下验证成功记录,下次开机后不必再做验证;如果数据库中不存在此UID记录,则为盗用软件生产的产品,手机将被锁机,再不能连入运营商网络。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105776167A CN102111753A (zh) | 2010-12-07 | 2010-12-07 | 一种手机软件加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105776167A CN102111753A (zh) | 2010-12-07 | 2010-12-07 | 一种手机软件加密方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102111753A true CN102111753A (zh) | 2011-06-29 |
Family
ID=44175749
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010105776167A Pending CN102111753A (zh) | 2010-12-07 | 2010-12-07 | 一种手机软件加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102111753A (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102509051A (zh) * | 2011-11-22 | 2012-06-20 | 康佳集团股份有限公司 | 一种防止软件抄板的方法及系统 |
CN103177225A (zh) * | 2013-04-01 | 2013-06-26 | 厦门市美亚柏科信息股份有限公司 | 一种数据管理方法和系统 |
CN103714286A (zh) * | 2013-12-17 | 2014-04-09 | 上海酷宇通讯技术有限公司 | 防止在移动终端中恶意安装软件的方法及系统 |
CN107368760A (zh) * | 2017-08-03 | 2017-11-21 | 北京奇安信科技有限公司 | 一种电子设备状态处理方法及装置 |
CN108234390A (zh) * | 2016-12-14 | 2018-06-29 | 浙江舜宇智能光学技术有限公司 | 无线设备固件加密系统及其方法 |
CN108304740A (zh) * | 2017-06-02 | 2018-07-20 | 深圳三诺信息科技有限公司 | 一种烧录数字产品密钥的方法 |
CN109002695A (zh) * | 2018-06-20 | 2018-12-14 | 浙江理工大学 | 一种软件加密方法 |
CN110764797A (zh) * | 2018-11-19 | 2020-02-07 | 哈尔滨安天科技集团股份有限公司 | 一种芯片中文件的升级方法、装置、系统及服务器 |
CN112114826A (zh) * | 2020-09-11 | 2020-12-22 | 上海庆科信息技术有限公司 | 一种烧录管理方法、装置、平台及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1780435A (zh) * | 2004-11-25 | 2006-05-31 | 李杨 | 一种防盗手机及其防盗方法 |
CN101149768A (zh) * | 2006-09-20 | 2008-03-26 | 展讯通信(上海)有限公司 | 一种专用处理器软件的加密和解密方法 |
JP2008097170A (ja) * | 2006-10-10 | 2008-04-24 | Fuji Xerox Co Ltd | 暗号化機能付き処理装置、暗号化装置、および暗号化機能付き処理プログラム |
CN101419652A (zh) * | 2008-08-22 | 2009-04-29 | 航天信息股份有限公司 | 一种软硬件结合的保护程序的方法 |
CN101609492A (zh) * | 2009-07-23 | 2009-12-23 | 凌阳科技股份有限公司 | 嵌入式设备的加解密方法和系统 |
-
2010
- 2010-12-07 CN CN2010105776167A patent/CN102111753A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1780435A (zh) * | 2004-11-25 | 2006-05-31 | 李杨 | 一种防盗手机及其防盗方法 |
CN101149768A (zh) * | 2006-09-20 | 2008-03-26 | 展讯通信(上海)有限公司 | 一种专用处理器软件的加密和解密方法 |
JP2008097170A (ja) * | 2006-10-10 | 2008-04-24 | Fuji Xerox Co Ltd | 暗号化機能付き処理装置、暗号化装置、および暗号化機能付き処理プログラム |
CN101419652A (zh) * | 2008-08-22 | 2009-04-29 | 航天信息股份有限公司 | 一种软硬件结合的保护程序的方法 |
CN101609492A (zh) * | 2009-07-23 | 2009-12-23 | 凌阳科技股份有限公司 | 嵌入式设备的加解密方法和系统 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102509051A (zh) * | 2011-11-22 | 2012-06-20 | 康佳集团股份有限公司 | 一种防止软件抄板的方法及系统 |
CN103177225A (zh) * | 2013-04-01 | 2013-06-26 | 厦门市美亚柏科信息股份有限公司 | 一种数据管理方法和系统 |
CN103177225B (zh) * | 2013-04-01 | 2016-04-27 | 厦门市美亚柏科信息股份有限公司 | 一种数据管理方法和系统 |
CN103714286A (zh) * | 2013-12-17 | 2014-04-09 | 上海酷宇通讯技术有限公司 | 防止在移动终端中恶意安装软件的方法及系统 |
CN108234390A (zh) * | 2016-12-14 | 2018-06-29 | 浙江舜宇智能光学技术有限公司 | 无线设备固件加密系统及其方法 |
CN108304740A (zh) * | 2017-06-02 | 2018-07-20 | 深圳三诺信息科技有限公司 | 一种烧录数字产品密钥的方法 |
CN108304740B (zh) * | 2017-06-02 | 2021-01-08 | 深圳三诺信息科技有限公司 | 一种烧录数字产品密钥的方法 |
CN107368760A (zh) * | 2017-08-03 | 2017-11-21 | 北京奇安信科技有限公司 | 一种电子设备状态处理方法及装置 |
CN109002695A (zh) * | 2018-06-20 | 2018-12-14 | 浙江理工大学 | 一种软件加密方法 |
CN110764797A (zh) * | 2018-11-19 | 2020-02-07 | 哈尔滨安天科技集团股份有限公司 | 一种芯片中文件的升级方法、装置、系统及服务器 |
CN112114826A (zh) * | 2020-09-11 | 2020-12-22 | 上海庆科信息技术有限公司 | 一种烧录管理方法、装置、平台及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102111753A (zh) | 一种手机软件加密方法 | |
JP5342649B2 (ja) | ハードウェアベースセキュリティのためのシステムおよび方法 | |
CN102025716B (zh) | 一种对动态口令令牌的种子进行更新的方法 | |
JP5502198B2 (ja) | デバイスのシリアライゼーションを実行するためのシステムおよび方法 | |
CN102138300B (zh) | 消息认证码预计算在安全存储器中的应用 | |
CN109429222A (zh) | 一种对无线网络设备升级程序及通讯数据加密的方法 | |
CN101968834A (zh) | 电子产品的防抄板加密方法和装置 | |
JP2012532387A (ja) | 電子資産を管理するためのシステムおよび方法 | |
CN102156843B (zh) | 数据加密方法与系统以及数据解密方法 | |
CN107809677B (zh) | 一种在电视机中批量预置Widevine Key的系统及方法 | |
CN104732159A (zh) | 一种文件处理方法及装置 | |
CN106611310A (zh) | 数据处理的方法、穿戴式电子设备和系统 | |
CN109446757B (zh) | 一种用于通用mcu程序保护的方法 | |
US9251098B2 (en) | Apparatus and method for accessing an encrypted memory portion | |
CN200993803Y (zh) | 网上银行系统安全终端 | |
CN102004887A (zh) | 程序保护方法和装置 | |
CN105512520B (zh) | 一种反克隆的车载系统及其工作方法 | |
CN100489877C (zh) | 防止终端软件被盗用的方法及装置 | |
CN102708310A (zh) | 一种批量生产的计算机软件的注册码防盗版加密方法 | |
US20080104396A1 (en) | Authentication Method | |
CN102855439A (zh) | 一种执行文件自校验方法及装置 | |
CN111611603B (zh) | 一种sata接口的安全量产控制设备 | |
CN107330318A (zh) | 一种数字信号处理板卡及其调试系统的绑定加密方法 | |
CN105426705A (zh) | 一种会计软件的加密控制系统 | |
CN113806774B (zh) | 加密方法、解密方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20110629 |