JBuilder 2005开发Applet游戏全接触 - 编程入门网
些著名的浏览器如IE和Navigator对进行数字签名的Applet都可以开放大部分的权限。要对Applet进行数据签名必须先将Applet类和资源打成一个JAR包。
JBuilder提供一个Applet的打包向导,在向导的最后一步可以指定一个数据证书对最终生成的JAR包进行签名。所以在这一节里,我们先介绍数字签名的技术,而后再讲解如何使用JBuilder的Applet打包向导。 1、数字签名技术 数字签名涉及到以下几个基本的概念: ·消息摘要 消息摘要是对原始数据按照一定算法进行计算得到的结果,它主要检测原始数据是否被修改过。消息摘要与加密不同,加密是对原始数据进行变换,可以从变换后的数据中获得原始数据,而消息摘要是从原始数据中获得一部分信息,它比原始数据少得多,因此消息摘要可以看作是原始数据的指纹。 ·消息验证码 当甲和乙通信时,甲将数据传给乙时,同时也将数据的消息摘要传给乙,乙收到后可以用该消息摘要验证甲传的消息是否正确。这时会产生问题,即若传递过程中别人修改了数据时,同时也修改了消息摘要。乙就无法确认数据是否正确。消息验证码可以解决这一问题。 使用消息验证码的前提是 甲和乙双方有一个共同的密钥,这样甲可以将数据计算出来的消息摘要加密后发给乙,以防止消息摘要被改。由于使用了共同的密钥,所以称为"验证码"。 ·数字签名 使用消息摘要和消息验证码两种技术可以保证数据没有经过改变,但接收者还无法确定数据是否确实是某个人发来的。尽管消息码可以确定数据是某个有同样密钥的人发来的,但这要求双方具有共享的密钥,若有一组用户共享,我们就无法确定数据的来源了。 数字签名即是被设计用来解决这个问题的技术。数字签名利用非对称加密技术,发送者使用私钥加密数据产生的消息摘要(签名),接收者使用发送者的公钥解密消息摘要以验证签名是否是某个人的。由于私钥只有加密者才有,因此如果接收者用某个公钥解密了某个消息摘要,就可以确定这段消息摘要必然是对应的私钥持有者发来的。 ·数字证书 使用数字签名的前提是接收数据者能够确信验证签名时(用发送者的私钥加密消息摘要)所用的公钥确实是发送者本人的,这需要通过数字证书来解决这个问题。 数字证书含有两部分数据:一部分是对应发送者(组织或个人)的信息,另一部分是这个发送者所对应的公钥。即数字证书保存了发送者和其公钥一一对应的关系。同样,数字证书也有可能被假造,有效的数字证书必须经过权威 CA的签名,即权威CA验证数字证书的内容的真实性,然后再在数字证书上使用权威CA自己的私钥签名,相当于在发送者的证书上盖章。 其实数字签名技术是现实生活在计算机领域的反映,我们不妨通过一个小故事将这此技术反向映射到生活中。 《永不消失的电波》是60年代一部著名的电影,讲述了1938年我党地下组织在国统区上海的电台被敌人破坏了,延安解放区我军电台政委李侠奉命前往的上海,加强秘密电台的工作,为了保证上海地下党组织能够正确接洽到真实的李侠而不被敌人蒙骗,我们不妨来设定这样的一个情节,李侠身上带一封介绍其身份的介绍信,这相当于消息摘要,还约定了接头暗号:地下党接头中说"山上杜鹃红艳艳",李侠则要接"山下溪水细潺潺",那么这个暗号就是"消息验证码"。而在李侠的介绍信上有延安电台台长的签名,这个就是"数字签名",签名之上还加盖了一个延安电台的公章,这个就是数字证书。还有一份证名电台公章的文件那就是CA证书了。当然实际情况可能只需要一个暗号,太多东西反而会在行动中暴露身份,但在计算机领域这些东西都是必要的。 2、数字证书的生成 在JBuilder的Applet打包向导中仅需要一个数字证书,向导会为最终的JAR包生成消息摘要 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |