网络上的客户端通过一个叫用户Hash码的数值识别其它的客户端. 这个用户hash值存放在preferences.dat 文件中, 用来配合和其它用户往来的信用信息的保存.
电骡使用一种非对称加密方法防止用户Hash值之间的混淆和干扰. 这种方法采用一个私人密码连同一个公共密码来保护用户的hash值,同时也确保其它用户可以正确识别.
在 选项 -> 安全中可以启动用户身份安全识别功能. 推荐打开它.
用户身份安全识别是怎样进行的:
客户端A希望它的信用信息是安全的,这有他才能使用这个信息. 他生成了一个384位的私人RSA 密码,并将它保存到 cryptkey.dat文件中.
这个私人密码是在密码信息第一次被使用时创建的. 如果丢失这个密码,那么客户端A将丢失他的所有信用信息,因为他再也没办法证明他是这些信用信息的所有人.
当两个支持加密的客户端第一次交换数据时,他们同时向对方传送一个带有随机数的公共密码. 两个客户端都会把对方传递过来的密码保存到自已这边的clients.met 文件中. 他们只保存密码, 那个随机数在每次重新连接时再次产生.
在以后,如果客户端A想在在客户端B上证实自己的身份,他会创建一个数码指纹,并把它发送到客户端B. 这个指纹是从他自己的私人密码,加上公共密码,再加上B传送的随机数中产生的. 只要客户端A不改变他的IP地址,或客房端B不关闭他的电骡,这个指纹就保持有效.
接到A的指纹后,客户端B查验它是否符合自己的公共密码和那个随机数. 如果它还同时符合客户端A的公共密码,那对方就被确认是客户端A了.
注意: |
> |
如果cryptkey.dat 文件丢失或被删除,一定要同时删除
preferences.dat 文件,否则之前交换过数据的客户端在以后不会保存你的新信用信息. |
> |
如果切换到用户身份安全识别功能,所有之前的, "非安全"信用信息将丢失. 因为安全因素,目前没有办法将之前的信用信息转换为安全信用信息. |
适用版本: .29b +
Last update on: 2003-06-20 by Monk 翻译: 大学视频教程网 卯时下雨
18.03.2004 13:44
|