1、写了一个WEB服务器,因为对权限要求比较严格,牵涉到资金归集,现在想系统访问,最好能像我们使用银行UKEY一样,我给系统使用的管理员一个UKEY,他的账号登录必须要有UKEY,才能登录成功,这个一般怎么做?有没有哪个公司有做现成的UKEY可以直接和我项目结合的?
解答这个问题50分2、在做数据库设计的时候,因为担心后期的数据库更改给维护带来太大工作量,于是有两种方式:
A:动态数据库表方式,即行生成列的方式,但是这种方式对编程要求、系统性能要求都比较高
B:预留字段方式,但是这种方式,字段名及类型又不好预先定义上面这个问题,大家是怎么解决的,就是数据库设计的扩展性和灵活性问题
解答这个给50分

解决方案 »

  1.   

    UKEY登录方式可以这样做
    给页面编写一个activex控件,用户插入ukey后,
    输入用户名和密码,再点击登录的时候activex控件获取ukey的硬件编号(这个编号在后端与该用户名为一组),
    然后把密码和ukey编号,通过不可逆加密生成token然后向服务器提交 用户名+token服务器端获得用户名和token后,通过用户名查询其对应的密码和ukey串号,也通过加密生成token2再比较token 和 token2 是否一致大概思路,我觉得是这样,网银一般都用数字证书(没人都不一样)和ukey硬件信息来加密
      

  2.   

    说错了,网银是用ukey存放数字证书,每个ukey的证书都不一样--以下摘自网络,我表达能力有限,
    当你尝试进行网上交易时,银行会向你发送由时间字串,地址字串,交易信息字串,防重放攻击字串组合在一起进行加密后得到的字串A,再用ukey的数字证书对字串A进行不可逆运算得到字串B,并将字串B发送给银行,银行端也同时进行该不可逆运算,如果银行运算结果和你的运算结果一致便认为你合法,交易便可以完成,如果不一致便认为你不合法,交易便会失败。(理论上,不同的字串A不会得出相同的字串B,即一个字串A对应一个唯一的字串B;但是字串B和字串A无法得出你的数字证书,而且U盾具有不可读取性,所以任何人都无法获行你的数字证书。
      

  3.   

    原来现在的ukey已经不是简单的文件证书存储了,而变成一个加密器,时代在进步摘自网络-----建行前两年发行的UKEY,是可以自己将文件证书导入的,MS现在使用文件证书已经无法在网银进行支付了,必须使用移动证书了。所谓的UKEY,其实就是一个带硬件加密的类似单片机的东东,证书在读写前要经过UKEY上的CPU加解密计算的。所以,仅仅把文件证书放在U盘上,与放在计算机上的文件证书无异。
      

  4.   

    这种UKEY有专业的公司定做吗?
      

  5.   


    肯定有啊,有钱还不好办吗? 我的两个建行的ukey都不是同一家厂商生产的