塞班智能手机论坛-Symbian NOKIA PDA PPC PocketPC Palm GPS smart phone » 塞班软件资源区 » 塞班S60第三版软件资源区 » 【转自OPDA】纯文字版的根证书制作傻瓜教程,看了就会!


2008-4-20 10:24 woshiboy
【转自OPDA】纯文字版的根证书制作傻瓜教程,看了就会!

首先要感谢Ttuukk的教程,让我们都用上了自己的根证书,也许还有一部分朋友还没成功,但是相信你在看了这个教程后一定就能成功了。不要怀疑我,因为你不能怀疑自己的智商!
这个教程就是在Ttuukk那个教程的基础上做的,相当的傻瓜化,以至于有点罗嗦,希望内行的朋友不要笑话我!因为我在一开始准备制作的时候连命令提示符都不知道怎么用,写得这么烦琐也是考虑到让和我一样没有基础的人能够看懂!再就是不希望更多的朋友和我一样在制作根证书上浪费太多的光阴。毕竟时间就是金钱!
  
  下面开始!
   
  安装OpenSSL后,先解压openssl.cnf.zip替换X:\OpenSSL\bin\openssl.cnf文件(X为盘符),然后打开命令提示符(可以通过Win+R后输入cmd来开启,也可以通过开始菜单-所有程序-附件-命令提示符来开启)。
  
  先定位到OpenSSL的安装目录,在命令提示符中输入:cd x:\openssl\bin(X为盘符)
  然后执行3个命令。
  第一个命令生成密匙对:
  openssl genrsa 2048 >selfsigned.key
  
  第二个命令是给自己颁发安全证书:
  openssl req -new -x509 -nodes -sha1 -days 3650 -key selfsigned.key >selfsigned.cer
  
  第二个命令完成后会依次要求输入:
  Country Name <2 letter code> [CN]:
  Organization Name <rg, company> []:
  Common Name <eg, YOUR name> []:
  Email Address []:
  
  其中Common Name我建议最好是输入8个字符(后面再说),Country Name和Organization Name也尽量简单的输入2-3个字符就够了。Email Address直接回车掉。(防止超过字节数,后面会说到)   不想填的地方直接输入" . "(去掉“ ”) ,回车,会比直接回车好,至于为什么,大家自己试试吧。
  
  第三个命令是生成DER格式文件:
  openssl x509 -in selfsigned.cer -outform DER -out selfsigned.der
   
  之所以在第二个命令时省去Email Address的输入并要求Country Name和Organization Name简单,是因为生成的der文件大小不能超过912字节数,所以当你生成der文件后可以马上通过十六进制编辑器打开生成的der文件selfsigned.der查看字节数是否超过规定大小。如果超过了则重新来一次,避免后面的麻烦!(PS:切记是der后缀的文件而不是cer后缀的文件。)
   
  确认无误后将selfsigned.der复制到你的手机上,然后用手机自带的文件管理器运行selfsigned.der,根据提示安装根证书,记住导入时的"栏目",并选择信任区域为"互联网"。导入完成后用文件管理器搜索文件CACerts.dat并将它复制到其他地方然后再复制到电脑上。
  
  这里又要说几点:
  第一,导入证书用手机自带的管理器,因为个别机型用第三方管理器无法安装证书(至少我用的N73不行)。
  第二,搜索CACerts.dat文件则用第三方管理器来搜索,或是直接到C:\PRIVATE\101f72a6下去复制。(我N73无法用自带的管理器搜索到CACerts.dat这个文件)
  第三,这里的"栏目"名就是之前我建议你在输入Common Name所输入的,所以并不用刻意去记,而且这个栏目名在后面还有用。
  
  现在,你可以删除你刚导入的证书了,工具-设置-安全性设置-证书管理。删除后你之前复制的CACerts.dat文件还是会在C:\PRIVATE\101f72a6下,但是删除前和删除后CACerts.dat文件的大小会产生变化,所以这里一定要按步骤来,我也不知道会不会有影响,但是只要按步骤来就一定不会错。
  
  在电脑上用十六进制编辑器打开CACerts.dat,搜索导入证书时的"栏目"名,一直搜索到最后一个,然后你就能看到这样的数值了:
  XX 00 00 00 00 52 XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX
  XX表示任意数值。
  
  在这里出问题的最多了,我就在这里花了不少时间,Ttuukk的教程上要你记录52后的20组数值,也就是所谓的散列值。但是我建议把这总共26组数值都记下来。后面就会用到的。
  
  再用十六进制文件编辑器另打开swicertstore.dat文件,直接定位到文件尾部,在这里你能看到字串符:SymbianA,SymbianB等,代表栏目为SymbianA的证书,以此类推。
  
  我们要做的就是替换SymbianA这个栏目。
  
  首先,直接修改SymbianA这8个字串符,不要超过它的长度,为了能够达到统一,所以我一开始就建议你把栏目名设置成了8个字符。
  
  然后,在你所改的栏目名后面会有这样的数值:
  00 00 00 00 00 52 XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX
  我们将之前记下来的散列值来覆盖它。
  
  看清楚了,之前的和现在的区别就是第一组数值,它不是XX而是00,千万要记得把它改成XX。
  
  接下来,替换根证书,由于栏目"SymbianA"是地一个出现的栏目,所以对应第一个根证书存储。
  
  der证书格式是以30 82 03 XX 30 82开头的,所以我们回到顶步找到第一个出现30 82 03 XX 30 82的位置和第二个出现30 82 03 XX 30 82的位置。将它们之间的内容(包括第一个30 82 03 XX 30 82,不包括第二个30 82 03 XX 30 82)选中,查看大小,der文件对应的大小为这里所查看的大好多小-2字节。(PS:我做了次都是914字节,也就是der文件不能超过912字节,这也就是我为什么在一开始就说明了cer文件中的字节大小不能超过912的原因)
  
  再用十六进制编辑器打开selfsigned.der,将其全部字节复制,然后覆盖上一步我们选来查看大小的那部分。这里一定要弄对了,只要你的selfsigned.der文件字节不超过912字节那就拿去覆盖那914字节的内容。
  
  OK了,根证书的制作就到这里了,另存文件为你喜欢的名字然后保存到哪里也不用我说了,还有什么存为只读,XX了权限的朋友都知道的。
  
  当证书制作成功的时候我明白了,其实并不是Ttuukk的教程写得太简洁,而是我在这方面根本就是个白痴所以无法理解。
  
  我花了一天一夜时间才能把证书做出来就错在散列值的替换,因为Ttuukk的教程上并没有说要替换XX 00 00 00 00 52中的XX,所以这里再强调一次。
  
  最后再次感谢Ttuukk为我们提供的方法!本来我也准备做个傻瓜化的图片教程的,但是处于某些因素没做!不过这个纯文字版的傻瓜教程应该够用了。
  
  我不反对转贴,只是希望能够标明来自OPDA,来自Ttuukk的教程和本人的傻瓜化,呵呵!
  
  制作过程中所需要用到的东西我也传上来!


andy借一下位,其实可以更简单快捷,把bat.rar解压到 x:\openssl\bin  双击1.bat完成第一步,2.bat完成第二步。。。。在这[attach]2114515[/attach]

[img]http://www.***/images/attachicons/rar.gif[/img] [url=http://www.***/attachment.php?aid=90455][b][color=#800080]bat.rar[/color][/b][/url] (355 Bytes)
下载次数: 198
2008-4-8 10:28

  刚才有一个机友不能导入证书,结果是他同时让2个根证书在手机中,导致他自己生成的根证书在证书管理中看不到,所以在你拥有了自己的根证书后就把以前的那个删掉吧,删了就能显示你自己的了,两个根证书是不可能同时存在的!
感谢[url=http://bbs.dospy.com/space-uid-2643549.html]coolnight85[/url]机油的提醒,补充说明:不适用FP1的机型
FP1的机型散列值要用模拟器上生成的swicertstore.dat提取的(或者借助非FP1机器提取)

[[i] 本帖最后由 woshiboy 于 2008-4-22 08:21 编辑 [/i]]

2008-4-20 10:35 kevinli08
很不错!!!

2008-4-20 10:43 havefu
很详尽的教程[s:27]

2008-4-20 10:46 ldg
来点图就更加完美了![s:26]

2008-4-20 11:03 coolnight85
写得好麻烦的说。。。

其实直接用批处理就好了。。。

现在已经不用麻烦提取散列值了。。。

还有,LZ应该说明[b][color=#ff0000]不适用FP1的机型[/color][/b]
[color=#ff0000][/color]
[color=#ff0000][b]FP1的机型散列值要用模拟器上生成的[color=red]swicertstore.dat[/color]提取的(或者借助非FP1机器提取)[/b][/color]
[b][color=#ff0000][/color][/b]
以上非常关键

2008-4-20 11:10 dianbo008
顶啊!!!!沙发我坐了

2008-4-20 11:25 夜靡
我是初级菜鸟,请问根证书和证书的是什么意思?为什么要证书,请LZ赐教

2008-4-20 11:59 小张、
[yct06] [yct06]
其实...根证书有啥用?!

2008-4-20 12:34 6382336
现在新版本的3rd已经安全性比以前不一样了用这个不行
lz没说

2008-4-20 13:29 nancy251
不错 感谢分享了

2008-4-20 15:45 wanghero123
高人呀!太厉害了1!佩服呀!

2008-4-20 21:23 ld888
一个字:呆!
摸风不到

2008-4-29 22:45 hhy1975
我是菜的所以还是看不懂啊[s:27]

2008-4-29 22:59 zheng_gq
[quote]原帖由 [i]woshiboy[/i] 于 2008-4-20 10:24 发表 [url=http://bbs.dospy.com/redirect.php?goto=findpost&pid=18138539&ptid=1438769][img]http://bbs.dospy.com/images/common/back.gif[/img][/url]
首先要感谢Ttuukk的教程[/quote]

這個貼子和Ttuukk的教程有什麽兩樣嗎?這樣傻瓜的話Ttuukk的教程也就一樣傻瓜教程了。

只是比Ttuukk的教程多說一些要注意的,但多說的就是正確的了?多說的更有可能是錯誤的。

2008-7-21 18:47 李逍遥大侠
先顶  再看看

2008-7-21 22:18 philipcz
好麻烦啊,有什么用啊

2008-7-21 22:25 1tlove
感觉看起又难又累。。下次上图吧。。。

页: [1]


Powered by Discuz! Archiver 5.5.0  © 2001-2006 Comsenz Inc.