什么是S-OFF?
S代表 Security Lock,是安全锁,保护锁的意思。S-OFF就是安全保护关,S-ON就是安全保护开。
Secure Lock 就是安全锁。是硬件设计厂商用于保护固件不被刷写而设计的安全锁。如果这个安全锁是关闭的,那么对手机内的闪存芯片的刷写保护就关闭了,言外之意也就是可以随便刷ROM了;反之,S-ON就是安全锁打开了,手机被写保护了。HTC的机器在用RUU刷机的时RUU会将安全锁暂时关闭,然后就可以刷HTC自己的ROM。而HTC的HBOOT还有签名验证,所以没有HTC签面的ROM在刷机的时候是无法通过验证的。
什么是ENG S-OFF?
ENG代表 Engineer,也就是工程的意思。是HTC的手机在工程阶段测试时候使用的SPL,这种SPL是最不稳定的,一般只有HTC的ENG版本的RUU里面带这种SPL,也就是工程版RUU里面才带这种。

图中的G1手机在HBOOT模式下显示为ENG S-OFF

什么是SHIP S-OFF?SHIP代表 SHIPPMENT,也就是出货的意思。当HTC交货给各大运营商的时候,ROM都是SHIP S-ON的,这些ROM都是经过了很多测试的,同样也是非常稳定的,也是零售版本采用的系统。

图片中的G6手机在HBOOT模式下显示为SHIP S-ON

哪种S-OFF比较好?那要先说这两种OFF的区别:ENG S-OFF是单独的SPL级别的OFF,这种工程版SPL,因为是是用于开发人员调试的,所以开启了fastboot调试功能,也就是可以通过fastboot命令去刷机。SHIP S-OFF是在零售版本或者说是发布版本的SPL基础上,用HTC内部的解锁工具进行解锁,而达到的S-OFF。这种S-OFF的特点是没有开启fastboot功能,比较稳定,并经过很多次测试,硬件兼容性也比较好,不会出现信号不好,wifi断线等问题;HTC的任何版本ROM,官方RUU都可以直接刷,刷完官方还是S-OFF。SHIP S-OFF并不会像ENG SPL一样,刷官方RUU之后还要再重新解一下S-OFF,而且可以卡刷ROM,所以各版本的好坏还是要用户自己去衡量。最后要说一下:SHIP S-OFF的童鞋可以随便刷自己对应型号的RUU;ENG S-OFF的童鞋不怕降级不了也可以随便刷;当然你要是笨到,用G6的RUU去刷G7的手机小编我也拿你没办法,刷死别怪小编我没提醒你哦!此贴最后要感谢R大师的技术支持。

安卓手机刷机教程之HBOOT命令详解
安卓手机可以给我们带来的乐趣,体现在方方面面,随处可刷的ROM!同样的,刷ROM也是一项安卓具备的独特功能,但作为刷ROM的前提条件,我们首先要了解手机的各项特征,接下来,我们就进入安卓手机的工程模式,也就是HBOOT模式,了解一下手机的各项基本信息参数,同时也是非常重要的几项信息。可以看到手机中会显示如下参数。
BRAVO PVT1 SHIP S-ON
HBOOT-0.93.0001
MICROP-031d
RADIO-5.10.05.23
Aug 10 2010,17:52:18

注:以上信息,可能会与你的手机内容所显示的并不相同,但不妨碍演示,大家只要了解它们所代表的内容便可以了。BRAVO:这个是手机型号的内部开发代号。PVT(或者是EVT,DVT,CVT):是代表手机的版本类型。一台手机从研发到上市,可能会经历多次版本上的调试和改动,版本类型标志着机器是什么时候的产物,如下:EVT:工程机,研发阶段机器的型号;DVT:开发机,特殊开发用途机器的型号;CVT:商用机,交付运营商的机器的型号;PVT:量产机,最终上市的零售版机器的型号。(PVT1:第1批量产机)SHIP/ENG:手机HBOOT(SPL)的版本。SHIP:shippment的缩写,出货的意思,零售版的HBOOT版本。ENG:Engineer的缩写,工程的意思,修改版的HBOOT版本。S-ON(或者是S-OFF):S代表Security Lock,即安全锁。HTC在手机内部设置了一个安全锁,用来控制系统分区的读写状态。S-ON:安全锁开;S-OFF:安全锁关。如果你需要对关于S-OFF和S-ON的详细内容解读,可以参考:上面的HBOOT-0.93.0001这里显示了HBOOT的版本号,HBOOT是一个很特殊的部分,刷坏了这里,手机就会变砖,类似于升级电脑的BIOS,刷错了BIOS,你只能返厂用特殊的擦写工具来恢复了,所以,对HBOOT的操作要特别的注意,如非必要,不要去轻易刷写此分区!RADIO-5.10.05.23这里显示了RADIO的版本号,同样的,RADIO会随着官方系统的升级而跟着升级,RADIO是负责信号和硬件驱动的,理论上讲,应该是越高版本越好,当然也不是绝对,也需要要看情况的,就像电脑上的驱动,最新的并不一定是最好的。

白卡解锁与软解锁风险全面分析~~s-on/s-off
一、了解基本知识:
       手机的系统储存在RADIO CHIP芯片(即手机的ROM)之中,下面以蓝色框框代表这颗芯片

Hboot对系统有两种装载方式:只读和读写,取决于Security(S)开关的ON 或者OFF
Hboot相当于电脑BIOS的地位,它是最接近硬件层面的存在。

有了上面的基础,下图可以表示出白卡解锁的原理:

把RADIO中的Security开关由ON解锁成OFF,这就是白卡的作用。所以SHIP S-OFF在XDA上又被称为RADIO S-OFF,RADIO指的是这个芯片,SHIP则是对应HBOOT的版本状态
软解锁的原理用下图表示:

Desire S的软解锁还未做出来,但从G3-G10的软解方式都是一样的,下图可以表示:由一些高人重新编写了一个第三方HBOOT刷手了手机,从而可以骗过手机的安全锁检查,等于是开启了一条可读写RADIO芯片的绿色通道实际上,手机的安全锁仍然是开着的,不过在修改版的HBOOT下不起作用了而已IS的XX过程也是这样的,最终需要刷入一个修改过的HBOOT来骗开S-OFF的大门,总之要刷RADIO芯片里的东西,你就得过S-OFF这关(G7、G9等有点特殊。。。有个叫unrEVOked3的软件直接做掉NAND LOCK。。。在S-ON下刷机,可惜这一团队也没再更新了)IS不是没有人编写HBOOT,而是要刷第三方HBOOT,你还必须要先ROOT,不然你是没有权限刷掉HBOOT的,软ROOT没成功其他的什么都做不了(SHIP S-OFF是走捷径直接加进去的,不算XX)。现在HTC把SYSTEM保护得很完善,ROOT的难度相当的高啊。。。
既然这样,那“臭名昭著的白卡机”是什么东东,为什么会被骂得这么惨不忍睹?下图可以表示出白卡机的来历: 

我们网上说的白卡机指的就是这种情况了,JS把有各种乱杂软件充斥其中的ROM刷进了白卡解锁的手机里,这D确是一件让人很不爽的事情!!!至于g,o,a,p,k,我觉得它是做了冤大头了。。。呵呵,至少我在这里混了这么久也没见过这么不堪的ROM发布在论坛上。什么?开机显示着它?那有什么难。。。改第一屏、第二屏的方法连我这个半吊子的人都会做,何况JS。。。以g,o,a,p,k的名义发布ROM很有说服力呢。而往ROM里塞东西就更没有技术含量了。。。就一个解压打包的过程
不过,还好RUU是可以解决这个问题的。下面看看RUU的强悍:

刷RUU涉及到超级CID问题:

二、至此,原理部分介绍完毕,两种解锁方式作如下对比:
SHIP S-OFF(白卡解锁)

1.安全。不管你做错了什么,都可以回到HBOOT上面重新来过,因为SHIP S-OFF方式并没有改动HBOOT
2.可以随时RUU,你刷了什么觉得不妥了,RUU就行,毕竟官家的东西别的不行,稳定性还是一流的。
3.官方新系统发布了,你可以首先体验,不需要等自己手机销售地版本更新。而且用得不爽了还可以随时降级(降级有什么用?一般手机系统的XX都是从低版本XX的,版本越高,漏洞越少,还怎么个XX法)。4.功能:除了FASTBOOT外和ENG S-OFF完全一样。
缺点:        SHIP S-OFF的FASTBOOT功能不如ENG S-OFF做得那么完整。ENG S-OFF一般都可以方便地使用FASTBOOT功能,不过普通用户应该很少用到FASTBOOT。FASTBOOT可以做什么?我觉得最大的优点是灵活,可以在电脑端随时更改系统,不用每次都关机进HBOOT卡刷。比如改个内核、第一屏、刷个ROM等都是鼠标点几下的事。
ENG S-OFF(软解锁)

1.功能完整,包括FASTBOOT
2.做完RUU后(需要金卡)可以变回S-ON。(这有什么用?呵呵~行货保修啊。。。)
3.其他功能和SHIP S-OFF一致(IS的还没出来,不知会不会加入新功能)
缺点:    这是个很致命的地方:如果你刷HBOOT成功了,那恭喜你,你和SHIP S-OFF的一样安全,不管你做错了什么,都可以回到HBOOT上面重新来过,但是!刷HBOOT本身这一过程是有风险的,相当于电脑刷BIOS(你电脑买了这么久有刷过BIOS么。。。刷ROM(重装系统)还可以试几次,刷HBOOT,我以前每台机都刷得我满头大汗的),所以刷之前一定要做好MD5校验,否则一旦出错,手机变砖是必然的了。
    最后,白卡解锁也是可以再做一次软解锁的(如果你需要用到FASTBOOT功能的话),因为这两种XX方式互不影响,是两个层面上的东西(上面的原理说得很清楚了)。我在Desire HD上都是让两种S-OFF状态并存的。

什么是S-OFF,什么是S-ON,HBOOT命令,玩转Android的更多相关文章

  1. 01.SQLServer性能优化之---水平分库扩展

    汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 第一次引入文件组的概念:http://www.cnblogs.com/dunitian/ ...

  2. 从直播编程到直播教育:LiveEdu.tv开启多元化的在线学习直播时代

    2015年9月,一个叫Livecoding.tv的网站在互联网上引起了编程界的注意.缘于Pingwest品玩的一位编辑在上网时无意中发现了这个网站,并写了一篇文章<一个比直播睡觉更奇怪的网站:直 ...

  3. 避免重复造轮子的UI自动化测试框架开发

    一懒起来就好久没更新文章了,其实懒也还是因为忙,今年上半年的加班赶上了去年一年的加班,加班不息啊,好了吐槽完就写写一直打算继续的自动化开发 目前各种UI测试框架层出不穷,但是万变不离其宗,驱动PC浏览 ...

  4. Angular2入门系列教程7-HTTP(一)-使用Angular2自带的http进行网络请求

    上一篇:Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数 感觉这篇不是很好写,因为涉及到网络请求,如果采用真实的网络请求,这个例子大家拿到手估计还要自己写一个web ...

  5. Angular2学习笔记(1)

    Angular2学习笔记(1) 1. 写在前面 之前基于Electron写过一个Markdown编辑器.就其功能而言,主要功能已经实现,一些小的不影响使用的功能由于时间关系还没有完成:但就代码而言,之 ...

  6. H5实现摇一摇技术总结

    摇一摇遇到的问题 一.如何对摇晃效果进行反馈 刚开始的处理方式是,摇晃过程中不做任何处理,但后来反馈说这种效果不好,好像就没有摇动一样,如果声音也不响的话,就真的和什么都没发生一样. 后来想了想,加入 ...

  7. 【AR实验室】mulberryAR : ORBSLAM2+VVSION

    本文转载请注明出处 —— polobymulberry-博客园 0x00 - 前言 mulberryAR是我业余时间弄的一个AR引擎,目前主要支持单目视觉SLAM+3D渲染,并且支持iOS端,但是该引 ...

  8. 【原】Android热更新开源项目Tinker源码解析系列之三:so热更新

    本系列将从以下三个方面对Tinker进行源码解析: Android热更新开源项目Tinker源码解析系列之一:Dex热更新 Android热更新开源项目Tinker源码解析系列之二:资源文件热更新 A ...

  9. App开发:模拟服务器数据接口 - MockApi

    为了方便app开发过程中,不受服务器接口的限制,便于客户端功能的快速测试,可以在客户端实现一个模拟服务器数据接口的MockApi模块.本篇文章就尝试为使用gradle的android项目设计实现Moc ...

  10. webp图片实践之路

    最近,我们在项目中实践了webp图片,并且抽离出了工具模块,整合到了项目的基础模板中.传闻IOS10也将要支持webp,那么使用webp带来的性能提升将更加明显.估计在不久的将来,webp会成为标配. ...

随机推荐

  1. Qt之自定义搜索框

    简述 关于搜索框,大家都经常接触.例如:浏览器搜索.Windows资源管理器搜索等. 当然,这些对于Qt实现来说毫无压力,只要思路清晰,分分钟搞定. 方案一:调用QLineEdit现有接口 void ...

  2. (转载)UITableView的详细讲解

    NSIndexPath类型是用来获取用户选择的indexPath,在别的函数里面,若需要知道用户选择了哪个cell,用上它可以省事很多.不必再去建全局变量section和row. NSIndexPat ...

  3. 4.0之后的hibernate获取sessionFactory

    static{ Configuration config=new Configuration().configure(); ServiceRegistry resgistry = new Servic ...

  4. POJ 2069 Super Star

    模拟退火. #include<iostream> #include<cstdio> #include<cstring> #include<algorithm& ...

  5. Maven 安装Jar包到本地仓库

    开始cmd: 例1: mvn install:install-file -DgroupId=Issues -DartifactId=beautyeye -Dversion=3.5 -Dpackagin ...

  6. python练习程序(c100经典例8)

    题目: 输出9*9口诀. for i in range(1,10): for j in range(1,i+1): print str(j)+"*"+str(i)+"=& ...

  7. 【Python】类和对象、继承、使用文件、存储、异常、标准库(不懂)

    当你调用这个对象的方法MyObject.method(arg1, arg2)的时候,这会由Python自动转为MyClass.method(MyObject, arg1, arg2)——这就是self ...

  8. 【Sass初级】开始使用Sass和Compass

    转自:http://www.w3cplus.com/preprocessor/beginner/getting-started-with-sass-and-compass.html 如果你的朋友.同事 ...

  9. 将UE添加到右键菜单

    1.新建UE.reg文件,将如下代码拷贝进去.注意UE安装路径 Windows Registry Editor Version 5.00  [HKEY_CLASSES_ROOT*shell]  [HK ...

  10. python 字典items和iteritems

    3.4.6 items和iteritems 说明:items以列表方式返回字典中的键值对,iteritems以迭代器对象 返回键值对儿(Python3中不再支持): 例子: 1: >>&g ...