签名验证发生错误sigdict/contents illegal data?
sig签名错误什么意思
签名校验失败分为以下两种情况:
1.
sig参数生成错误
有可能由下列原因引起:
(1)构造源串时注意URI不含host,如/v3/user/get_info,而不是113.108.20.23/v3/user/get_info;
(2)构造源串时,没有将key排序后,再将(key=value)用&拼接起来。
(3)构造密钥时,没有将appkey后加“&”。
(4)某些语言的URLEncode系统方法在进行URL编码时,并没有按照现行的URL编码规则进行。详见下文的:URL编码注意事项。
对于支付和营销类接口,除了以上问题外,还有一些特别容易出错的地方:
(1)支付和营销相关回调协议中规定参数值都为string型,开发商出于本地记账等目的,对接收到的某些参数值先转为数值型再转为string型,导致字符串部分被截断(例如:字符串“13.14”转为整形再转为string
就会变成13),从而导致签名出错。
如果要进行本地记账等逻辑,建议用另外的变量来保存数值,传参时必须用原始接收到的string型值。
(2)支付和营销相关回调协议中,在进行签名生成时多加了一个步骤:
在构造源串的第3步“将排序后的参数(key=value)用&拼接起来,并进行URL编码”之前,需对value先进行一次编码 (编码规则为:除了
0~9 a~z A~Z !*()
之外其他字符按其ASCII码的十六进制加%进行表示,例如“-”编码为“%2D”)。
(3)支付和营销接口中的goodmeta参数,必须是UTF8格式,参与签名前要进行Base64编码。
(4)支付和营销接口中的payitem参数,含有*号字符,在进行URL编码时要注意观察是否进行了编码。
2.
sig参数生成正确,但是参数传输前没有进行URL编码。
所有参数传输时都要进行URL编码,包括sig。如果没有进行URL编码,则即使sig是正确的,但是校验sig时不能匹配。
建议的解决方案:
(1)开发者可以使用平台提供的签名验证工具来计算签名:open.qq/tools ,
通过工具吐出的签名生成过程,来排查具体是哪一步出了问题。
(2)如果您是PHP开发者,可以使用PHP
SDK中的签名生成函数来生成签名,避免自己去进行复杂的签名生成逻辑的开发。
刷机包签名校验失败 怎么办
导致刷机失败的原因及解决方法:
1、Recovery版本不对
用官方Recovery去刷第三方ROM,是无法刷入的。较为老版本的Recovery无法兼容一些新的刷机脚本,会导致刷机无法执行,可以电脑百度搜索适合本机的CWM的Recovery,下载后用ODIN刷入手机。
2、ROM刷机包存在问题
最常见的就是刷机包问题,通常因为刷机包下载的并非适合本机三星 I9100机型,或者刷机包制作者制作ROM出现问题,另外就是刷机包下载过程中出现下载不完整的错误。重新下载适合本机的ROM包,最好进行下MD5校验,保证下载文件完整。
3、电量不足
当刷机过程中因为电量不足导致刷机程序无法执行,或者因为电量不足导致刷机过程中手机自动断电关机。保证手机电池有充足的电量,最起码在60%以上。
4、SD卡有问题
有的SD卡存在问题,导致刷机的时候无法正确读取刷机包。更换新的SD卡。
5、刷机操作不正确
在刷机过程中的操作错误,比如没有双清等,在刷入ROM之前,一定要先清空原有手机中的数据,否则会导致刷机后系统卡在开机画面。
刷机包签名校验失败怎么破
你好,根据你的情况,你可以重新刷机或更换刷机包。
如果能进入recovery,就双清(双wipe),双清重启后不行就刷机;不能就百度“救砖”。
进入Recovery模式方法:
方法一:如果手机是开机状态,请先关机,抠下电池再装上,在关机情况下,同时按住电源键 + 小房子(Home)键,直到出现Recovery界面为止。
方法二:如果以上方法无法进入,那么再开机,先按住音量+键不放,然后再长按电源开机键,直到出现Recovery界面为止。
recovery刷机(电源键确定,音量上下键移动),步骤如下:
1. 将从网上下载的对应手机刷机rom,然后复制到SD卡的根目录,rom为zip格式(可以打开验证一下,zip包里必须有META-INF这个文件夹的才是刷机包,但是不要改动zip包里的文件),不解压。复制完成后可以断开sd卡和电脑的连接。
2. 彻底关机(最好关机后抠一下电池),然后通过特殊按键组合进入recovery界面。
3. 选中 wipe cache partition按电源键确定,再用选中yes按确定;然后再选中wipe data/factory reset按确定,选中yes后确定。(如果只是双清,到这步停止即可。)
4. 选install zip from sdcard 按电源键确定,然后再选 choose zip from sdcard按电源键确定,然后选择rom刷机文件,按电源键确定, 再选yes按电源键确定开始刷。
5. 刷完,也就是进度条走完后的界面,返回到recovery主界面。这时选reboot system now按电源键手机重启。第一次重启时间长,要耐心等!到此刷机结束。
刷机后出现这个该怎么办
reboot system now 重启系统
-apply sdcard:update.zip 使用SD卡根目录的update.zip更新系统
-wipe data/factory reset 清空data分区并恢复出厂设置
-wipe cache partition 清空cache分区
-install zip from sdcard 从SDcard选择文件更新系统
--apply sdcard:update.zip 使用SD卡根目录的update.zip 更新系统
--choose zip from sdcard 从SD卡选择zip格式升级包
--toggle signature verification 切换签名验证
--toggle script asserts 切换升级脚本检查
-backup and restore 备份和恢复
--Backup 备份
--Restore 恢复
--Advanced Restore 高级恢复
-mounts and storage 挂载和存储
--mount /system 挂载/system分区(系统分区)
--mount /data 挂载/data分区(数据分区)
--mount /cache 挂载/cache分区(缓存分区)
--mount /sd-ext 挂载/sd-ext分区(A2SD分区)
--format boot 格式化内核分区
--format system 格式化系统分区
--format data 格式化数据分区
--format cache 格式化缓存分区
--format sdcard 格式化存储卡
--format sd-ext 格式化内存卡SD
--mount USB storage 挂载SD卡为U盘模式
-advanced 高级
--Reboot Recovery 重启Recovery
--Wipe Dalvik Cache 清空Dalvik缓存
--Wipe Battery Stats 清空电池状态
--Report Error 报告错误
--Key Test 键位测试
--Partition SD Card 对SD卡分区
--Fix Permissions 修复权限