背景技术
口令的使用,在我们生活中无处不在,特别是进入数字化时代的今天,则变得更为普遍,我们每天都需要重复地进行着这些操作,比如我们需要输入口令才能打开手机、需要输入口令才能登录到电脑、需要输入口令才能登录到公司的网络、需要输入口令才能登录到MSN或QQ或飞信或旺旺聊天等、需要输入口令才能收发邮件、需要输入口令才能登录游戏网站玩游戏、需要输入口令才能进入办公室、需要输入口令才能上网、网上支付、刷卡购物,在ATM机上也必需输入口令才能登录到用户的帐户进行操作。口令对于我们每个人来说实在是太重要了,它可以保护我们的隐私,可以保护我们的重要资料(如用于加密的密钥、帐户信息等)不被他人所窃取,可以保护我们的人身财产的人身安全。
现在大多数的场合下都是采用静态口令的方式,静态口令基本上采用固定的数字、字母组合,主要是用于用户的帐户口令、查询口令等。采用这些静态口令在使用过程中通常存在着以下一些安全隐患:
其一,为了方便记忆,很多用户采用了包括自己(或者家人、好朋友)的手机号码、固定电话号码、生日日期、姓名的拼音、学好、工号、公司或团体名称等等和自己有关并能猜测到的字符作为口令,这些就为他人通过机器人程序不断尝试、穷举,很容易被破译;
其二,很多人喜欢把一个口令使用在多种应用系统上,甚至是所有的系统都是采用同一个口令。如果被他人截取并破获后,他可能会用这个口令来尝试登录你的其它系统,这样导致的问题就是当你某个应用的口令被破解之后,其它应用也就跟着沦陷了。
其三,他人常常利用窥视、诱骗等手段获得用户的口令。
其四,内部工作人员在特定情况下也可能通过合法授权取得用户的口令而非法使用;
由于静态口令在某一特定的时间段内没有变化且可以反复多次使用,如果不慎被泄露,就可能被他人所用,安全性较低。故,静态口令根本上不能确定用户的身份,其结果是,在特定的情况下,个人可以轻松地伪造一个假身份或者盗用一个已有使用者的身份,给企业和个人造成巨大的经济和声誉损失。
在我们的现实生活中,当你去ATM机上取钱、或者在POS机上刷卡消费时,往往会有一个习惯性的动作,用手将键盘遮挡,然后再输入密码,目的就是为了防止他人在边上偷窥。一旦被他人获取了密码后,则会造成财产的损失。此外,对于那些在网上购物的人来说,最担心的是碰到了钓鱼网站(仿冒真的银行网上银行界面),诱使用户输入帐号和密码,从而使他人不当获取了你的帐号和密码。
为了解决静态口令的弊端,现在也有采用动态口令的技术。动态口令是根据专门的算法每隔60秒生成一个与时间相关的、不可预测的随机数字组合,每个口令只能使用一次,每天可以产生43200个密码。它采用一种名为动态令牌的专用硬件,内置电源、密码生成芯片和显示屏。认证服务器采用相同的算法计算当前的有效密码。用户使用时只需要将动态令牌上显示的当前密码输入客户端电脑,即可实现身份认证。由于每次使用的密码必须由动态令牌来产生,只有合法用户才持有该硬件,所以只要通过密码验证就可以认为该用户的身份是可靠的。而且用户每次使用的密码都不相同,即使黑客截获了一次密码,也无法利用这个密码来仿冒合法用户的身份。
但是,当前这项技术并没有在大面积的密码系统中使用动态口令也是有原因的,主要是这种动态口令也有一些缺点:
首先,用户需要拥有动态令牌进行认证;其次,动态口令需要一台额外的服务器接受来自认证服务器中继的请求;再次,在大型网络中OTP(一次性口令)价格不菲;再次,动态令牌一旦落入他人手中,则会被人冒用身份进行登录,造成不必要的损失;最后,在胁迫状态下,这些措施均无技可施。
在一些特定的应用中,现有技术中的登录装置或方法也存在缺陷:
例如,在我们日常生活中,手机和电脑是我们必备的工具,为了不让别人使用我的手机和电脑,往往需要在开机的时候输入口令;另外,我们的手机和电脑中还保存了一些私人的重要资料,如手机电子钥匙,在这个应用程序中,我们将身边所有的电子钥匙都存放在里面,如果轻易登录进去,等于拿到了开门的钥匙,其安全性就受到了影响,故,需要用口令才能登录进去。此外,电脑中的某些文件夹也存放了比较重要的资料,需要用加以保护,在正确的登录后才能查看。诸如此类的情况,就需要用到口令以及登录。
例如,对于网上银行、网上支付等牵涉到用户资金安全的应用,则要求登录的口令、支付口令等必需是安全、可靠的,甚至口令是随机变化的。
目前,为了保护用户的帐户,一般采取下列几种方法:一种是为了防止木马程序检测用户键盘,则采用了软键盘的形式,且软键盘的排列一直在变化;另一种采用数字证书的方式来识别用户,根据存放地的不同,分为固定数字证书和移动数字证书;第三种采用动态令牌的方式,除了静态口令之外,再增加一个随机数;最后一种为采用发送验证码到手机的方式,需同时输入静态口令和接收到的验证码;上述这些方法,比起单纯使用静态口令要安全得多,能解决一些问题。但是,在被胁迫状态下,或者动态令牌、数字证书、手机被他人窃取时,这些方法就显得十分苍白,很容易被人攻破,直接影响到使用人的资金和人身安全。
在银行安全方面,现在银行的ATM、POS机都是采用6位静态口令,采用这种口令是非常不安全的,很容易被别人偷窥到、或检测到。同时,在被胁迫状态下,也无法报警。
此外,在一些大型的企业、公司、机关,每天都会产生大量的产品设计文档、重要文件等,具有重要的价值。随着业界竞争的加剧,这些重要数据、文件被泄密的风险越来越大,必须采用相应的安全保密技术手段,结合企业保密管理制度,对企业数字知识产权实现有效的保护。文件管控系统是以软件为基础,是一门管理所有与产品相关信息(包括电子文档、数字化文件、数据库记录等)的技术,其作用是管理开发和利用企业产品的信息资源。
作为文件管控系统中重要的一环就是使用者身份的识别,目前采用的身份识别无非有这样几种:用户名/口令、智能卡认证、动态令牌、生物特征认证和USBkey认证。
用户名/口令,是最简单也是最常用的身份认证方法,由于密码是静态的数据,很容易被偷窥到、或被计算机内存中的木马程序或网络中的监听设备截获。因此是一种极不安全的身份认证方式。
智能卡认证是一种内置集成电路的芯片,存有与用户身份相关的数据,有专门的厂商通过专门的设备生产,是不可复制的硬件。但是由于每次从智能卡中读取的数据是静态的,通过内存扫描或网络监听等技术还是很容易截取到用户的身份验证信息,还是存在安全隐患。
动态口令是根据专门的算法每隔60秒生成一个与时间相关的、不可预测的随机数字组合,每个口令只能使用一次。动态口令技术采用一次一密的方法,有效保证了用户身份的安全。但是如果客户端与服务器的时间或次数不能保持良好的同步,就可能发生合法用户无法登录的问题。此外,一旦动态令牌落入他人之手或者使用人被胁迫,就会被他人仿冒登录。
生物特征认证是指采用每个人独一无二的生物特征来验证用户身份的技术,常有的是指纹、虹膜识别等。该技术虽然是最可靠的身份认证方式,但由于受到该技术成熟度的影响,采用生物特征的认证技术具有较大的局限性。比如用户身体受到伤病影响,导致无法正常识别;认证系统成本较高等。同样也无法解决使用人在被胁迫的情况下被伪认的情况。
USBkey身份认证方式是近几年发展起来的一种方便、安全的身份认证技术,它采用软硬件相结合、一次一密的强双因子认证模式,现在被广泛的应用到文档管控系统中。但是,目前在使用的USBkey采用的PIN码还是静态的,同样存在着被偷窥的风险,以上所例举的缺陷均一一存在。
发明内容
本发明的目的在于克服现有技术中的不足之处,提供一种安全可靠、简单易行、价廉的方法获得自主的动态口令的方法和装置,用以有效地保护使用人帐户的安全。在提出的方法和装置的改进方案中,用户可以设置至少一个登录口令,除了可以设置至少一个正常的登录口令外,还可以根据实际需求来设置至少一个报警(胁迫)口令。
为实现上述目的,本发明的一个方面指向了一种基于用户自主产生的口令对系统登录的方法,其中该系统至少存储有至少一个用户预先设置的登录规则,该登录规则包括至少一个被控制元素以及对该至少一个被控制元素进行控制的至少一个控制元素;其包括以下步骤:生成与该被控制元素数量对应的随机信息,将该随机信息提供给用户,同时基于该随机信息利用存储的登录规则生成一登录基准口令;获取用户输入的动态口令;对该动态口令以及该登录基准口令进行匹配,如两者匹配,则允许登录,如两者不匹配则拒绝登录。
优选的是,其中,对至少一个用户预先设置的登录规则进行存储包括获取被控制元素的数量和位置;获取控制元素的数量和位置;将该被控制元素和控制元素进行合并形成登录规则;以及对该登录规则进行存储。
优选的是,在对该登录规则进行存储时进行加密,加密密钥由系统保管、或由用户控制产生。
优选的是,除了获取用户身份信息,还获取该加密密钥以便利用该用户身份信息以及加密密钥调用存储的对应该用户的登录规则。
优选的是,所述将随机信息提供给用户是通过图像、声音等形式提供给用户。
优选的是,所述被控制元素是数字、字母、字符、各国的文字、音乐符号、色谱、化学元素符号、图片等一切可利用的被数字化的信息;所述控制元素是排列组合、数学运算符、逻辑运算符、移位操作符。
优选的是,所述获取控制元素和被控制元素是通过提供控制元素输入及或选择界面以及被控制元素输入及或选择界面实现的。
进一步的是,还包括对各用户预先设置的报警规则进行存储,该报警规则包括至少一个被控制元素以及对该至少一个被控制元素进行控制的至少一个控制元素,将该随机信息提供给用户,同时基于该随机信息利用存储的报警规则生成一报警基准口令;对该动态口令以及该报警基准口令进行匹配,如两者匹配,则报警。
本发明的另一方面指向另一种基于用户自主产生的口令对系统登录的方法,其中该系统存储有多个用户预先设置的登录规则,该登录规则包括至少一个被控制元素以及对该至少一个被控制元素进行控制的至少一个控制元素;其包括以下步骤:生成与该被控制元素数量对应的随机信息,将该随机信息提供给用户;获取用户身份信息以及用户输入的动态口令;利用该获取的用户身份信息调用存储的对应该用户的登录规则并基于该随机信息生成一基准口令;以及对该动态口令以及该基准口令进行匹配,如两者匹配,则允许登录,如两者不匹配则拒绝登录。
优选的是,对各用户预先设置的登录规则进行存储包括获取被控制元素的数量和位置;获取控制元素的数量和位置;将该被控制元素和控制元素进行合并形成登录规则;对该登录规则进行存储。
优选的是,在对该登录规则进行存储时进行加密,加密密钥由系统保管、或由用户控制产生。
优选的是,除了获取用户身份信息,还获取该加密密钥以便利用该用户身份信息以及加密密钥调用存储的对应用户的登录规则。
优选的是,所述将该随机信息提供给用户是通过有线、无线方式将随机信息以图像及或声音的形式提供至用户的终端设备上。
本发明的此方面还包括针对该方法的装置。
本发明的第三个方面指向一种基于用户自主产生的口令对系统登录的方法,其中该系统存储有多个用户预先设置的登录规则,该登录规则包括至少一个被控制元素以及对该至少一个被控制元素进行控制的至少一个控制元素;其包括以下步骤:获取用户的身份信息;根据获取的身份信息调用存储的对应该用户的登录规则;生成与该被控制元素数量对应的随机信息,将该随机信息提供给用户;同时基于该用户的登录规则以及该随机信息生成一登录基准口令;以及对该动态口令以及该登录基准口令进行匹配,如两者匹配,则允许登录,如两者不匹配则拒绝登录。
优选的是,对各用户预先设置的登录规则进行存储包括获取被控制元素的数量和位置;获取控制元素的数量和位置;将该被控制元素和控制元素进行合并形成登录规则;以及对该登录规则进行存储。
优选的是,在对该登录规则进行存储时进行加密,加密密钥由系统保管、或由用户控制产生。
优选的是,除了获取用户身份信息,还获取该加密密钥以便利用该用户身份信息以及加密密钥调用存储的对应用户的登录规则。
优选的是,所述将该随机信息提供给用户是通过有线、无线方式将随机信息以图像及或声音的形式提供至用户的终端设备上。
本发明的第四方面指向一种基于用户自主产生的口令对系统登录的方法,其中该系统存储有至少一个用户预先设置的登录规则,该登录规则包括至少一个被控制元素以及对该至少一个被控制元素进行控制的至少一个控制元素;其包括以下步骤:感知用户终端的存在;获取用户的身份信息;根据获取的身份信息调用存储的对应该用户的登录规则;生成与该被控制元素数量对应的随机信息,将该随机信息通过近距离无线通信方式提供给用户终端;同时基于该用户的登录规则以及该随机信息生成一登录基准口令;接收用户终端发出的一动态口令;以及对该动态口令以及该登录基准口令进行匹配,如两者匹配,则允许登录,如两者不匹配则拒绝登录。
优选的是,对各用户预先设置的登录规则进行存储包括获取被控制元素的数量和位置;获取控制元素的数量和位置;将该被控制元素和控制元素进行合并形成登录规则;对该登录规则进行存储。
优选的是,在对该登录规则进行存储时进行加密,加密密钥由系统保管、或由用户控制产生。
优选的是,除了获取用户身份信息,还获取该加密密钥以便利用该用户身份信息以及加密密钥调用存储的对应用户的登录规则。
优选的是,所述将该随机信息提供给用户是通过有线、无线方式将随机信息以图像及或声音的形式提供至用户的终端设备上。
本发明的各方面还包括对应所述各方法的装置,该装置包括:随机信息生成单元,用于生成与该被控制元素数量对应的随机信息,随机信息传送单元,用于将该随机信息提供给用户,登录基准口令生成单元,用于基于该随机信息利用存储的登录规则生成一登录基准口令;获取单元,至少用于获取用户输入的动态口令;以及匹配单元,对该动态口令以及该登录基准口令进行匹配,如两者匹配,则允许登录,如两者不匹配则拒绝登录。
进一步的,还包括一规则设置单元用于允许该至少一个用户至少对其登录规则进行设置并存储,其包括获取被控制元素的数量和位置的单元;获取控制元素的数量和位置的单元;将该被控制元素和控制元素进行合并形成登录规则的单元;对该登录规则进行存储的单元。
进一步的,还包括在对该登录规则进行存储时进行加密的加密单元,加密密钥由系统保管、或由用户控制产生。
其中,该获取单元除了获取用户身份信息,还获取该加密密钥以便利用该用户身份信息以及加密密钥调用存储的对应该用户的登录规则。
其中,所述将随机信息提供给用户是通过图像提供给被登录装置的显示设备、或通过声音提供给被登录装置的扩音设备,从而提供给用户。
其中,所述被控制元素是数字、字母、字符、各国的文字、音乐符号、色谱、化学元素符号、图片等等信息;所述控制元素是排列组合、数学运算符、逻辑运算符、移位操作符。
其中,所述获取单元获取控制元素和被控制元素是通过提供控制元素输入及或选择界面以及被控制元素输入及或选择界面实现的。
进一步的是,该存储单元还对该至少一个用户预先设置的报警规则进行存储,该报警规则包括至少一个被控制元素以及对该至少一个被控制元素进行控制的至少一个控制元素,还包括一报警基准口令生成单元,用于基于该随机信息利用存储的报警规则生成一报警基准口令;以及一报警匹配单元,对该动态口令以及该报警基准口令进行匹配,如两者匹配,则报警。
在优选的实施例中,前述用户定义的转换规则及/或算法中,也可以包括或关联一些动态的变化信息,如时间及或日期等信息。这样就会使得转换规则和算法会随着时间的变化而变化。
前述加密步骤,在该步骤中采用加密算法对记录后的用户定义的转换规则、或算法、或者是规则加算法进行加密,以避免该定义的转换规则、或算法、或者是规则加算法被轻易窃取。
采用本发明中的各方法的采用随机信息产生的的动态口令,可以弥补静态口令的弊端,由于是根据动态的随机信息转换、计算而得到的结果,因而每次得到的结果是不一样的,别人无法通过窥视来得到口令,即使在传输过程中被他人所截取,因为其随机特性,所以也无法得到正确的口令,再次被使用是无效的。
用户对规则及/或算法一旦设置完成后,需要记住自己所设置的转换规则和算法、所用的固定参数和选取的位置。以后在应用过程中也可以随时进行修改设置。
相比较现在的动态令牌而言,采用本发明中的方法的动态口令,没有专门的动态令牌这一硬件,无硬件成本,所有运算都是在用户终端设备及/或远程服务器上完成,也不存在动态令牌被盗和冒用的问题。用户唯一需要记忆的是事先设置的算法及规则,而这个算法及规则完全是由用户自己定义、并保存在用户头脑中,是无法被他人所盗取的。
对于目前一些假冒银行网站用来套取用户银行帐号和密码的行为,采用本发明的方法,则使得这些人无从得手,永远也无法得到用户的密码,可以切实有效的保护用户资金的安全。
具体实施方式
下面将结合附图对本发明的各种具体实施方式进行说明,应当理解的是,下面的描述仅意在解释而并非意在限制本发明的可能的应用范围,因此,任何实施方案以及应用都不能理解为对本发明的保护范围的限制。
在本发明的可选的实施例中,提供了多种对各种系统的进行登录的方法以及与该方法对应的装置,该方法以及其对应的装置可以应用于用户需要登录的诸如本地用户终端,例如手机,便携电脑,以及网络服务器,网络聊天工具等系统中。
在常用的设置中,首先,通过该登录方法,用户在需要登录的系统中,例如是自己的终端设备,如用户的手机、电脑等,也可以公共的服务器,服务器可以是远程的也可以是本地的,事先保存一个登录规则,该登录规则例如可以是转换规则、或者是计算公式,或者是规则及计算公式的组合,该登录规则至少包括至少一个诸如数值、字母、字符、各国文字、当前时间等被控制元素;还包括对该至少一个被控制元素的至少部分进行控制的控制元素,该控制元素可以是诸如加、减、乘、除、平方、开方等运算符、也可以是与、或、等逻辑运算符、或者是左移、右移某个位数操作的等操作符。当登录规则定义完成后,该定义规则由被登录装置存储,在可选的实施例中,该登录规则被加密保存。
当用户需要对系统进行登录时,可控制被登录装置产生与前述被控制元素数量相对应的,例如数量相同的随机产生的信息,这些随机产生的信息例如可以是:数字、字母、字符;各国的文字(如中文、日文等);音乐;色谱;化学元素;图片等等信息。例如可以是一随机数发生器产生的一组随机数。并且通过诸如被登录装置的本地显示设备及或服务器连接的终端的屏幕显示及或扩音设备等以图像、声音等方式提供给用户;该被登录装置需要调用事先保存的针对该用户的转换规则、为该一定数量的随机信息产生一登录基准口令;在用户方面,根据该随机产生并提供的一定数量的信息,用户可根据头脑中记忆的转换规则,得到一口令,并通过诸如终端设备或与服务器连接的终端提供的输入设备输入该被登录的终端设备或服务器内,该被登录的终端设备或服务器在接收到该动态口令后对该动态口令与该基准口令进行匹配,如匹配成功,则允许用户登录该终端设备或服务器,如匹配不成功,则拒绝用户的登录。
前述需要保存的用户定义的登录规则优选是通过本实施例中的方法提供的一规则产生步骤得到的,在该步骤中,首先为用户提供一规则输入界面,该规则输入界面包括前述至少一个被控制元素的输入区域用于获取被控制元素的数量和位置,还可以包括对该至少一个被控制元素进行计算、逻辑判断、移位等操作的控制元素的区域用于获取控制元素的数量和位置;用户对被控制元素的输入区域及或控制元素输入区域填写完毕后,将两者进行合并即生成用户定义的组合,即该登录规则;随即对该用户定义的登录规则进行保存,保存时可添加或关联对应该用户的身份识别标识;如有必要,可对该保存的用户定义的转换规则、或者是计算公式,或者是规则及计算公式的组合进行加密保存,加密密钥由用户设置的静态口令控制生成。
在前述方法的示例中,如匹配失败,而导致拒绝用户登录后,可以选择随机提供新的被控制元素,或再允许用户在给定时间内重新输入本次被控制元素对应的口令。
在优选的实施例中,动态口令的获取步骤可以包括为用户提供一口令输入界面,该口令输入界面可以包括显示随机被控制元素的区域用于为用户显示该一定数量的随机信息,还可以包括口令的输入区域用于获取用户的动态口令,输入的口令的显示可以采用明文也可以采用密文。在一些应用中,例如对公用而非私用设备或服务器的登录过程中,还可以提供包括用户身份标识的,例如用户ID的,输入区域以对用户身份或称用户ID进行采集;采集用户的身份标识的目的是可随后根据该标识调用存储的针对该用户的用户定义的登录规则。
在优选的是实施例中,还可以定义并存储另一种用户定义的转换规则、或者是计算公式,或者是规则及计算公式的组合,用于实现除登录以外的其他功能,。例如,该另一种用户定义的转换规则、或者是计算公式,或者是规则及计算公式的组合可以对应报警功能,即当动态口令的获得步骤获得的动态口令满足该另一种用户定义的转换规则、或者是计算公式,或者是规则及计算公式的组合时,即报警规则时,则跳转至一报警步骤,并向适当的报警接收装置发送告警信号。这在针对货币存取终端或网银服务器时尤其有用,即可在被胁迫时悄无声息的完成报警。
本发明申请提供了一个平台,由用户在一定范围内自行设计得到唯有用户自己知晓的口令算法。
根据本发明的具体应用场合,可以设计正常登录口令和报警(胁迫)登录口令。用户在初始设置的时候,除了可以设置正常的登录口令转换规则及算法,也可以同时设置报警(胁迫)登录口令的转换规则及算法,并保存。当用户输入动态口令时,终端设备会根据用户预先设置的转换规则、或者算法计算出一基准口令,并与用户输入的口令进行比对,从而判断用户是正常登录、还是报警(胁迫)登录。但应注意的是,用户在设置正常登录口令规则和函数与报警(胁迫)登录口令规则和函数时应避免两者产生相同的值
在本发明申请中:
用户定义的转换规则、或者是计算公式,或者是规则及计算公式的组合,简称登录规则,可以指将随机信息按一定的规则转换成数字、字母或文字等。例如,显示的是中文文字,可以将中文文字转换成笔画数、或四角号码;将一段音乐转换成乐谱等。
登录规则还可以指的是将一组字符按约定的规则转换成另一组规则。例如,将一组字母加5转换成另一组字母,如a转换成f,b转换成g,y转换成d等等;或者将一组字符按约定重新排列,如abcd转换成badc等等。
据此,登录规则中涉及的随机被控制元素指系统可随机产生的信息,例如可以是:数字、字母、字符;各国的文字(如中文、日文等);音乐;色谱;化学元素;图片等等信息。
而登录规则中的静态控制元素,例如可以是,数学运算符、逻辑运算符、移位操作符等。
用户的对随机信息的接收方式例如可以通过视觉、听觉接收来自被登录装置传出的随机图像、音频等信息。
被登录装置中的终端设备包括但不限于台式电脑、笔记本电脑、手机、平板电脑、门禁设备、货币存取终端等。
被登录装置中的服务器可以指本地或远程网银登录服务器、即时通信登录服务器、软件登录服务器等。
手机的开机登录、电脑的开机登录等应用
以电脑开机为例:
参照图2a至2c在依照本发明的一种实施例的方法中,用户可以在首次登录时设置一种登录规则以便日后使用,这可通过登录装置的一规则设置单元101完成;如图2b所示,该规则设置单元101包括为用户提供一显示区域S211,并在该显示区上区分被控制元素设置区域和静态控制元素设置区域;当接收到用户通过输入或选择等方式完成对被控制元素的设置以及静态控制元素的设置S212并确认后S213,则该单元认为登录规则设置完成,则该单元会将设置完成的登录规则连同用户的ID标识在一存储单元中进行存储供日后调用S214,存储可采用加密的方式。由于电脑一般为多用户系统,因此需要将登录规则与用户的ID标识关联存储,在针对诸如手机等单用户终端系统的实施例中的登录装置可以省略该与用户ID进行关联的步骤,直接对登录规则进行存储。
此后的每次用户开机时,登录装置会运行到用户登录界面,通过一用户身份获取单元105接收用户输入的身份信息,例如一ID,并针对该ID由被控制元素生成单元103生成例如6位随机数组作为被控制元素S203,并将该6位随机数通过发送单元104发送显示在电脑显示设备上S204:
其中,a、b、c、d、e、f分别代表六个不同的数字或字母,例如可以是134356。同时,登录装置通过其中的基准口令生成单元106从存储单元102中调取事先保存的针对该用户ID标识的登录规则S206,并按照该获取的规则生成对应该组6位随机数的一基准口令。该生成的基准口令继而被发送至一登录装置中的匹配单元107进行后续的匹配。
另一方面,用户从电脑显示设备观察到这些随机数后,即可根据头脑中记忆的登录规则,选取上述数字或字母重新排列或计算后,得到一口令并作为动态口令登录装置的采集单元105提供的登录界面的相应位置。如,用户仅仅采用逆向排列的方式作为口令
即653431。登录装置接收到该动态口令后S205,将其发送至匹配单元107,与基准口令进行匹配S207,如符合则认为匹配成功,并允许登录装置,登录装置停止运行。如不匹配则认为匹配不成功,则可选择由随机信息生成单元生成一组新的随机信息,给予用户针对当前的随机信息组再次输入动态口令的机会。
本实施例中,可设置为用户身份获取单元与用户动态口令获取单元同时获取信息,从而基准口令生成单元可以继而生成针对某客户的基准口令。或者,可设置为用户身份获取单元可在用户动态口令获取单元之前获取用户ID并在获得该ID后,即用户动态口令获取单元等待用户输入其动态口令的过程中生成基准口令。
因为每次登录时,产生的随机数或字母都是在变化的,故组成的口令也是一直在变化的。这使得上述登录装置能够避免静态密码等登录手段常会碰到的密码遭到窃取,或被偷窥等问题,也同时避免了携带USBKEY等设备的麻烦。
采用上述规则变化属于比较简单的应用,如果是6个随机数或字母,组合成6位的口令,其变化有720种。如果随机数或字母,以及输入的口令都能被窥视、或截取到,则可以很方便的推导出其组合规律。所以,采用这种变化规则作为口令,一般用在手机的开机口令,或者用于在家庭使用的个人电脑上。
为了避免入侵者的恶意攻击、不断试口令,可以采用连续输入一定次数的错误口令即关闭当天的登录,或者需要等待数小时方可登录。
图2d示出了登录规则的具体设置的流程,其中,规则设置流程一般由用户选择口令设置而触发。登录方法首先进入规则函数编辑器,进入规则函数编辑器:显示六位随机数对应字母、编辑规则函数。显示验证界面,含:显示六位随机数、动态口令输入窗口,接收用户输入的:动态口令(DPW),根据新设置的规则函数、随机数,计算出口令值DPW’,比较DPW和DPW’是否一致,如一致,则加密保存规则函数。如不一致,则返回进入规则函数编辑器:显示六位随机数对应字母、已编辑的规则函数。
用户需要对手机等设备进行登录,登录程序可在手机开机时自动运行或者由用户的选择触发。登录进程启动后,装置调用随机数发生器,产生六位随机数;显示登录界面,含:显示六位随机数、动态口令输入窗口;接收用户输入的:动态口令DPW;找到存放的规则函数并解码,根据随机数计算出动态口令值DPW’;比较DPW和DPW’是否一致,如一致则允许登录,如不一致,则可选择判断当天累计错误超过5次,如超过5次,则结束当天登录操作,如未超过5次,则调用随机数发生器,重新产生六位随机数。可选的是,比较DPW和DPW’是否一致,如不一致,则直接重新调用随机数发生器,产生六位随机数图2e示出了以上具体的登录流程。
已经设置好的规则可能需要修改,规则修改具体流程可以为,如图2f所示:用户选择【修改口令】,调用随机数发生器,产生六位随机数,验证原口令,含:显示六位随机数、动态口令输入窗口,接收用户输入:动态口令DPW(原先的),找到存放的规则函数并解码,根据随机数计算出动态口令值DPW’,比较DPW和DPW’是否一致,如一致则进入规则函数编辑器:显示六位随机数对应字母、编辑规则函数,如不一致则判断当天累计错误超过5次?并根据判断结果确定无法修改密码,并退出登录,或者调用随机数发生器,产生六位随机数。进入规则函数编辑器:显示六位随机数对应字母、编辑规则函数。完成后,显示验证界面,含:显示六位随机数、动态口令输入窗口,显示验证界面,含:显示六个个位随机数、口令输入窗口,接收用户输入:动态口令NDPW(新的),根据新设置的规则函数、随机数,计算出动态口令值NDPW’,比较NDPW和NDPW’是否一致?如一致则加密保存规则函数,随后完成口令的修改,如不一致,则查看新的规则函数,可修改,并确认,确认后,重新显示验证界面,含:显示六位随机数、动态口令输入窗口。
实施例2,网络聊天工具的登录装置应用
参照图3a至3c,在依照本发明的另一种实施例的方法中,与前一实施例类似,用户可以在首次应用系统时设置一种登录规则以便日后使用,这可通过登录装置的一规则设置单元101完成;如图3b所示,该规则设置单元101的运行流程包括为用户在用户的终端上提供一显示区域,并在该显示区域上区分被控制元素设置区域和静态控制元素设置区域S311;当采集到用户通过输入或选择等方式完成对被控制元素的设置以及静态控制元素的设置S312并确认后S313,则该单元认为登录规则设置完成,则该单元会将设置完成的登录规则连同用户的ID标识在一存储单元中进行存储供日后调用S302,存储可采用加密的方式。由于网络聊天工具一般为多用户系统,因此需要将登录规则与用户的ID标识关联存储。
此后的每次用户登录网络聊天工具时,如图3a所示,登录装置会运行到用户登录界面,通过一用户身份获取单元105接收用户输入的身份信息,例如一用户ID,并针对该ID由被控制元素生成单元103生成例如6位随机数组作为被控制元素S303,并将该6位随机数通过发送单元104经由网络传输到用户终端的显示设备上S304:
其中,a、b、c、d、e、f分别代表六个不同的数字或字母,例如可以是134356。同时,登录装置通过其中的基准口令生成单元106从存储单元102中调取事先保存的针对该用户ID标识的登录规则S306,并按照该获取的规则生成对应该组6位随机数的一基准指令。该生成的基准指令继而被发送至一登录装置中的匹配单元107进行后续的匹配。
另一方面,用户从其终端20的显示设备观察到这些随机数后,即可根据头脑中记忆的登录规则,选取上述数字或字母重新排列或计算后,得到一口令并作为动态口令登录装置提供的登录界面的相应位置。例如,用户仅仅采用逆向排列的方式作为口令即653431。登录装置的采集单元105获取到该动态口令后S306,将其发送至匹配单元107,与基准口令进行匹配S307,如符合则认为匹配成功,并允许登录装置S316,登录装置停止运行。如不匹配则认为匹配不成功,则可选择由随机信息生成单元生成一组新的随机信息,或给予用户针对当前的随机信息组再次输入动态口令的机会。
因为每次登录时,产生的随机数或字母都是在变化的,故组成的口令也是一直在变化的。这使得上述登录装置能够避免静态密码等登录手段常会碰到的密码遭到窃取,或被偷窥等问题,也同时避免了携带USBKEY等设备的麻烦。
本实施例中,可设置为用户身份获取单元与用户动态口令获取单元同时获取信息,从而基准口令生成单元可以继而生成针对某客户的基准口令。或者,可设置为用户身份获取单元可在用户动态口令获取单元之前获取用户ID并在获得该ID后,即用户动态口令获取单元等待用户输入其动态口令的过程中生成基准口令。
本实施例中的登录装置或登录方法,可以作为网络聊天工具的一部分集成在现有的网络聊天工具中。
对于一般的网络聊天工具,其特点在于必需通过网络与外接进行连接,故很容易受到木马程序的攻击,黑客可以监控到用户输入的口令,从而盗取用户的登录口令。所以,对于这类口令,运用的转换变化需要相对复杂一些,除了重新排列位置之外,还需要增加一些简单的加减运算。
具体使用如下:
当用户准备进入聊天软件时,在登录界面中,首先显示的是6个随机数或字母:
(注:a、b、c、d、e、f分别代表六个不同的数字或字母)
用户根据预先设置好的排列规则,选取上述数字或字母,先进行简单的加减(对于字母的加减即是往后/往前移动字母,如h加5即是m,h减5即是c),然后再重新排列,作为口令输入。
举个简单的例子,口令可以由下述规则来组成:
在登录时,随机显示6位数字或字母:5f4mu8,根据转换规则,可以得到一组口令为:kh13211n(注:当用减法产生负数时,取其正数部分)。
对于采用这种方式进行转换产生的口令,是很难找出其变化规则的,他人无法通过收集数据来推导口令组成的规则。
利用这种方式,还可以应用于类似于网络游戏、网上购物、旅游商务网、电子邮件、公司范围内的局域网等登录装置中。
图3d给出了设置流程:其中,用户选择【设置口令】,输入新用户名,判断是否有同名?如是,则提示重新输入,如否则提供六位随机数对应字母、编辑规则;则个人终端进入规则函数编辑器:显示六位随机数对应字母、编辑规则函数;规则函数编辑完成后:服务器端,调用随机数发生器,产生六位随机数,并发送到个人终端,个人终端用接收到的六位随机数产生临时密钥Dkey,用Dkey加密规则函数,并发送给服务器终端。在个人终端,显示验证界面,含:显示六位随机数、动态口令输入窗口,接收用户输入的:动态口令DPW;在服务器端,用六位随机数产生临时密钥,即Dkey,用Dkey解密规则函数,根据新设置的规则函数、随机数,计算出口令值DPW’;此后,由服务器端比较DPW和DPW’是否一致,如一致则加密保存规则函数,进而完成密码的修改;如不一致,则进入规则函数编辑器:显示六位随机数对应字母、已编辑的规则函数,重新调用随机数发生器,产生六位随机数并提供给个人终端和服务器。
规则设置好后,当需要登录服务器时,登录流程如下,如图3e所示:在个人终端用户选择【登录】,发出登录请求至服务器,服务器调用随机数发生器,产生六位随机数,产生的六位随机数被发送至个人终端由显示界面显示,显示登录界面,含:显示六位随机数、用户名、动态口令输入窗口;此后,在用户终端接收用户输入的:用户名UID、动态口令DPW,服务器采集到用户名UID、动态口令DPW后,判断是否有该用户?如没有,则判断当天累计错误是否超过5次,并在超过5此后结束登录操作,如没有超过5次,则要求用户重新登录;如果判断有该用户,则找出保存的该用户规则函数并解密,得到规则函数,随后计算出用户的动态口令DPW’,再比较DPW和DPW’是否一致,如一致,则允许登录,如不一致,则判断当天累计错误超过5次,并根据改进一步的判断结果结束登录或要求用户重新登录。
当用户需要对已经设置好的规则进行修改时,则运行以下修改流程,如图3f所示:用户选择【修改口令】,服务器接收到用户的修改请求后,调用随机数发生器,产生六位随机数发送给用户终端,同时找到存放的该用户规则函数并解码,根据随机数计算出动态口令值DPW’,在用户终端,提供验证原口令界面,含:显示六位随机数、动态口令输入窗口,获取用户输入的:动态口令DPW(原先的),随后判断比较DPW和DPW’是否一致?,如不一致,则判断当天累计错误超过5次?,并结束登录或重新调用随机数发生器,产生六位随机数;如一致,则进入修改规则函数界面;在客户端进入规则函数编辑器:显示该六位随机数对应字母、编辑规则函数区域供用户进行编辑;此后,用六位随机数产生临时密钥Dkey,在用户端用Dkey加密规则函数,并发送到服务器端,在服务器端同样用六位随机数产生临时密钥Dkey,并用Dkey解密规则函数;此后,在用户终端提供显示验证界面,含:显示六位随机数、动态口令输入窗口获取用户输入的口令NDPW发送给服务器,并在服务器端根据新设置的规则函数、随机数,计算出口令值NDPW’,并比较NDPW和NDPW’是否一致?如一致则加密保存口令,并完成修改,如不一致,则进入规则函数编辑器:显示六位随机数对应字母、已编辑的规则函数,重复上述过程。
实施例3,网上银行、网上支付、网上证券的应用
参照图4a至4c,在依照本发明的另一种实施例的方法中,与前述实施例类似,用户可以在首次登录时设置一种登录规则以便日后使用,这可通过登录装置的一规则设置101单元完成;该规则设置单元包括为用户在用户的终端20的显示设备上提供一显示区域,并在该显示区域上区分被控制元素设置区域和静态控制元素设置区域S411;当用户通过输入或选择等方式完成对被控制元素的设置以及静态控制元素的设置S412并验证确认后S413,则该单元认为登录规则设置完成,则该单元会将设置完成的登录规则连同用户的ID标识在一存储单元中进行存储供日后调用S402,存储可采用加密的方式。由于网上银行等为多用户系统,因此需要将登录规则与用户的ID标识关联存储。还可通过同样的流程设置一报警规则并同样存储于规则存储单元102。
在此种实施例中,由于各口令、规则等都需要通过网络传输,因此,最好对口令和规则可通过加密单元加密后再通过互联网传输,传输到服务器端的数据再通过加密单元解密后使用,例如,在用户侧软件设置加密单元对规则、口令进行加密,而在服务器侧软件设置解密单元用于对通过网络传输来的规则、口令等进行解密。
此后的每次用户登录网上银行时,例如通过网络浏览器登录网上银行时,网上银行服务器端的登录装置10提供一通过提供用户登录界面采集用户身份标识的获取单元105接收用户输入的身份信息S401,例如一用户ID,如用户存在,则针对该ID由被控制元素生成单元103生成例如6位随机数组作为被控制元素S403,并将该6位随机数通过网络传输到用户终端20的显示设备上S404:其中,a、b、c、d、e、f分别代表六个不同的数字或字母,例如可以是134356。同时,登录装置通过其中的基准口令生成单元106从存储单元102中调取事先保存的针对该用户ID标识的登录规则及或报警规则,并按照该获取的规则生成对应该组6位随机数的一登录基准指令及或一报警基准口令S406。该生成的登录及或报警基准指令继而被发送至登录装置中的匹配单元107进行后续的匹配S407。
另一方面,用户例如从其与服务器连接的终端
的显示设备观察到这些随机数后,即可根据头脑中记忆的登录规则,选取上述数字或字母重新排列或计算后,得到一口令并作为动态口令登录装置提供的登录界面的相应位置。如,用户仅仅采用逆向排列的方式作为口令
即653431。登录装置接收到该动态口令及一静态口令后S406,将其发送至匹配单元107,与登录基准口令进行匹配S407,如符合则认为匹配成功,并允许登录装置S416,登录装置停止运行。如不匹配则认为匹配不成功,继而与报警基准口令进行匹配,如匹配成功则允许登录并报警,如不成功,则可选择由随机信息生成单元生成一组新的随机信息,或给予用户针对当前的随机信息组再次输入动态口令的机会。
因为每次登录时,产生的随机数或字母都是在变化的,故组成的口令也是一直在变化的。这使得上述登录装置能够避免静态密码等登录手段常会碰到的密码遭到窃取,或被偷窥等问题,也同时避免了携带USBKEY等设备的麻烦。
本实施例中,可设置为用户身份获取单元与用户动态口令获取单元同时获取信息,从而基准口令生成单元可以继而生成针对某客户的基准口令。或者,可设置为用户身份获取单元可在用户动态口令获取单元之前获取用户ID并在获得该ID后,即用户动态口令获取单元等待用户输入其动态口令的过程中生成基准口令。
在针对本实施例的可选的实施方式中,可在获取用户的动态口令时,同时接受一用户输入的静态口令,其中,该静态口令是在保存规则时与该用户的规则关联的。获得该静态口令后,使用该静态口令在存储单元102提取存储的规则并计算登录基准口令,如该静态口令不准确,则无法正确解密存储单元102所保存的规则。
利用本发明的方法或装置,实现安全的登录就变得非常简单,因为我们输入的口令本身就是随机变化的,不用担心木马程序检测用户键盘输入,即使他人得到了用户这次输入的口令也无妨,下次是无法再次使用的。由于转换规则、或运算方式是记忆在用户头脑中的,故,能够根据随机数得出正确结果的一定是用户本人。这样,也就验证了是用户本人在进行操作。同时,用户还可以设置报警基准口令,当使用人的生命受到危险时,则可以输入报警口令,即可以稳住胁迫者,又可以在无声无息中向外部发出求援信号。
(注:a、b、c、d、e、f分别代表六个不同的数字)
用户在设置时,设置的动态口令由下面的几组方程组成:
则,动态口令由上述四组数据组合而成,即y1y2y3y4
比如,产生的随机数为:693856,则
y1=63+92+7=216+81+7=304
y1=93+32+7=729+9+7=745
y1=83+52+7=512+25+7=544
y1=53+62+7=125+36+7=168
因此,得到的动态口令为:304745544168。
采用这种运算方式得到的动态口令,由于用户所采用的运算方程式是多样的,每个运算式采用的变量也是不定的(可以用一个变量、或二个、或三个等等),运算式中的系数和常量也是不定的,动态口令的组成也是不定的(可以是两个算式、或三个算式、或四个算式等等)。故,很难通过已知的随机数及生成的口令来推导运算规则。
当然,用户如果觉得上述设定的运算无法记忆,则可以将这些运算和组合规则输入到手机中去,在实际使用中,只需根据显示的随机数手工输入相应的值,便可以得出相应的动态口令。如果,将手机和电脑之间建立起无线通讯(如红外、WiFi、蓝牙等),则可以将生成的动态口令直接通过无线的方式传给电脑。
具体的规则设置流程,如图4d所示:用户通过选择【设置口令】开始对登录规则或报警规则的设置,此后向服务器发送银行帐号,由服务器验证该帐号还是否存在,如存在该账号,则获取用户输入的帐号、姓名、证件号、取款密码等信息,并调用一随机数发生器,产生六位随机数,用该六位随机数产生临时密钥Dkey,用Dkey加密用户身份信息后传送回服务器端,在服务器端继而用Dkey解密用户身份信息,再与银行系统已存资料库核对用户信息是否一致?如不一致则重新获取用户身份信息并加密传送;如一致,则提供用户静态口令设置界面,获取设置静态口令,例如要求用户输入:新的静态口SPW、重复输入静态口令SPW,此后的流程与普通服务器设置流程一致,仅增加设置登录规则时可一并设置报警规则说明。
登录规则设置完成后,用户即可在任意时间通过任意用户终端对网银系统或网上支付系统进行登录。登录流程如下,如图4e所示:服务器接收到用户需要登录的请求后,调用随机数发生器,产生六位随机数,通过显示的登录界面,含:显示六位随机数、帐号、静态口令、动态口令输入窗口提供给用户终端,获取用户输入的身份信息,静态口令以及根据六位随机数计算的动态口令DPW,接收到前述信息后,判断是否有该用户帐号?如没有该账号,则判断当天累计错误超过5次,如果超过则结束登录流程,如未超过则显示用户帐号、口令错误,重新输入;如有该账号,则找出保存的该用户规则函数(正常DPW和报警ADPW)密文,用六位随机数产生临时密钥Dkey,用Dkey解密,得到静态口令SPW,用静态口令SPW产生解密密钥Skey,用Skey解密保存的规则函数密文,得到规则函数,计算出用户的正常和报警基准口令值DPW’、ADPW’,再比较DPW和DPW’是否一致,如一致,则允许登录,如不一致,则比较ADPW和ADPW’是否一致,如一致则允许登录,但发出报警信号,如不一致,则判断当天累计错误超过5次,并根据判断结果结束当天登录操作或显示用户帐号、口令错误,重新输入。
登录规则及或报警规则设置完成后,可通过修改流程对两者进行修改,具体流程如下,如图4f1、4f2所示:检测到用户对口令进行修改的请求后,调用随机数发生器,产生六个个位随机数,提供在显示修改口令界面,该界面可含:显示六个个位随机数、静态口令、动态口令输入窗口;接收用户输入的:静态口令SPW(原先的)、动态口令DPW(原先的),用六位随机数产生临时密钥Dkey,用Dkey加密静态口令SPW并将静态口令SPW传送至服务器,服务器端用六位随机数产生临时密钥Dkey,再用Dkey解密,得到静态口令SPW,此后用静态口令SPW产生解密密钥Skey,用Skey解密保存的规则函数密文,得到规则函数,计算出用户的正常和报警基准口令值DPW’、ADPW’,比较DPW和DPW’是否一致,如一致则选择修改静态口令、动态口令规则函数;如不一致,则比较DPW和ADPW’是否一致,如一致则选择修改静态口令、动态口令规则函数,同时报警;如不一致,则判断当天累计错误超过5次?如未超过则调用随机数发生器,重新产生六个个位随机数,如超过则终止流程。
选择修改静态口令、动态口令规则函数的具体流程如下:修改静态口令,输入新的静态口令NSPW、并重复输入,判断两次输入的口令是否一致?如一致则用Dkey加密静态口令NSPW,如不一致,则重新输入新的静态口令NSPW、并重复输入;用Dkey加密静态口令NSPW后,发送密文至服务器端,并进入动态口令规则函数的修改界面。在服务器端用Dkey解密,得到静态口令NSPW,再用静态口令NSPW产生新的加密密钥NSkey,令Skey=NSkey,Skey用于加密规则函数(含正常和报警)。在客户端进入规则函数编辑器:显示该六位随机数对应字母、编辑规则函数区域供用户进行编辑(在此可以编辑正常登录规则函数和报警登录规则函数);此后,用六位随机数产生临时密钥Dkey,在用户端用Dkey加密规则函数(含正常和报警),并发送到服务器端,在服务器端用Dkey解密规则函数(含正常和报警);此后,在用户终端提供显示验证界面,含:显示六位随机数、正常登录口令和报警登录口令输入窗口获取用户输入的正常登录口令NDPW和报警登录口令NADPW,并发送给服务器,在服务器端根据新设置的规则函数(含正常和报警)、随机数,计算出口令值NDPW’和NADPW’,并比较NDPW和NDPW’、NADPW和NADPW’是否一致?如一致则用Skey加密保存口令(含正常和报警),并完成口令修改;如不一致,则进入规则函数编辑器:显示六位随机数对应字母、已编辑的规则函数(含正常和报警),重复上述过程。
实施例4,对银行ATM、POS机的登录的应用
参照图5a至5c,在针对此种应用的实施例中,如图5a所示,与前一实施例类似,其包括登录步骤503、504、505、506、507等,用户一般使用诸如银行卡等工具实现身份验证,因此,本发明的登录装置和方法可不必提供用户输入用户ID的界面,而由用户ID获取单元105直接通过读取银行卡等工具来确定用户的ID,而后续的诸如随即信息的提供以及基准口令的生成、输入动态口令的获取,以及口令匹配等单元107的设置则可以如针对网络聊天工具等登录的方式,或者可以如针对网络银行的登录方式,这取决于ATM或POS机的布置方式。
登录规则的设置则可如图5b所示,通过在ATM机本地设置并传送给后台的服务器,或者通过网络银行等设置,银行的服务器端只要将设置好的登录规则与用户的银行卡等工具关联或绑定后存储即可。与前述实施例类似,其包括步骤511、512、513、502等。
对应的装置的逻辑原理框图如图5c所示,其与前一实施例类似,包括服务器端10,用户终端20,以及位于服务器端的各单元101至107
在这一领域,采用本发明的登录装置和登录方法,则可以很好地解决现有技术中存在的问题,保证使用人的人身安全和资金安全。对于一般的使用者(指资金量比较小),可以采用相对比较简单的运算方式组合,这样便于记忆,又不容易被他人所破解。如果是资金量特别巨大,需要比较复杂的运算公式组合,人脑无法记住这些复杂的公式,则可以采用前面所讲的办法,将所有的公式及其组合输入到手机中去,由手机来完成复杂的运算和组合,生成最终的动态口令。
实施例5,电子锁、电子钥匙的应用(含家用电子锁、门禁、汽车锁等)
参照图6a至6c,在进一步的实施例中,本发明的动态口令,同样可以运用到电子锁和电子钥匙中,将原来采用的静态口令改为我们的动态口令,同样可以防止被他人的偷窥。
根据电子门锁的使用场合和安全等级的不同,可以设计出各种具有登录装置或登录方法的电子锁。例如,对于安全等级较低的场合,如,商务大楼里的一般公司、小区的门禁等等,则可以直接在门禁设备,例如读卡器上嵌入本发明的登录装置和方法,门禁设备即可实现前述如网络聊天那样的登录规则设置以及用户进门的登录验证。
而对于安全级别较高的场所,如银行、监狱、国家行政机关等的锁具,则可以将电子钥匙做在手机上,即将原先设置的运算公式和组合输入到手机中去,当需要开门时,使用人可以根据电子锁上提示的随机信息(或者电子锁将随机数发到手机上,显示在手机的显示屏上),按约定在手机上输入相应的值,然后将所得到的结果发送给电子锁,以完成开锁的动作。同时,也可以设置报警基准口令,以便于在被胁迫的状态下使用具体的实施方案可以参考网上银行的实施流程,用手机取代用户电脑终端。
实施例6,文件管控的应用
本发明的一种实施例中的登录装置和登录方法可以以软件的形式附加于保存有数字文件的文件管控系统中。这样,当有用户需要对文件管控系统所管理的文件进行访问时,需要首先完成用户对该文件管控系统的登录或者对具体文件夹、文件的登录,登录成功后方可对文件或文件夹进行诸如查看等操作。
这样,附加于该文件管控系统的登录装置或登录方法就需要具有一登录规则存储单元,用于以加密或不加密的形式对系统的各用户预先设置的登录规则进行存储,其中该登录规则包括至少一个被控制元素以及对该至少一个随机信息进行控制的至少一个控制元素;还包括一随机信息产生单元,例如一随机数发生器,用于产生与该被操作元素数量对应的随机信息,并将该随机信息提供给用户;还包括一动态口令获取单元,用于接收用户通过大脑基于该随机信息计算得出的一动态口令;一基准口令生成单元,用户基于该随机信息调用存储的登录规则生成一基准口令;一对比单元,对该动态口令以及该基准口令进行匹配,如两者匹配,则允许登录,如两者不匹配则拒绝登录。
拒绝登录后,可选择等待另一针对当前随机信息的新的动态口令,并将该新的动态口令与基准口令进行比较,以判断是否允许登录;或者,也可生成并提供新的随机信息,并对应生成新的基准口令,以及通过动态口令获取单元等待用户的新的动态口令。
与前一实施例类似,如图6a所示,其登录步骤包括603、604、605、606、607等;与前述实施例类似,其规则设置基本步骤如图6b所示,包括步骤611、612、613、602等。对应的装置的逻辑原理框图如图5c所示,其与前一实施例类似,包括系统端10,用户终端20,以及位于服务器端的各单元101至107。
可以设置的规则具体举例:
以下介绍一些本发明具体实施的方案,可以用于安全等级不同的应用领域,但在实际用户设定时,并不仅限于下列这些方案,也不仅限于下列所定义的数组个数、数组长度和口令的长度,可以根据实际情况而由用户自己定义。
为了方便说明问题,以下举例均以6位随机数、字母为例。
对于手机等终端的登录应用:
方案一(纯排列规则)
定义:假设针对的随机被控制元素为一组六位编码
这里的编码可以是数字、或字母、或字符;而静态操作元素为将第二、四、六位的内容与一、三、五位的内容互换的换位操作符;则保存的用户预先设置的登录规则为
根据前面定义的登录规则,在用户登录时,终端中的随机被控制元素产生单元会在随机被控制元素步骤会产生一组六位随机码,例如是1、2、3、4、5和6,并显示在终端的屏幕上,用户根据显示的该组随机码,根据头脑中记忆的登录规则得到结果A=214365,并将结果作为口令输入;基准口令产生步骤最好在接到前述口令输入后调用保存的针对该用户的登录规则,并按照保存的登录规则得到基准口令A’=214365。此后匹配步骤再将将用户输入的口令A与基准口令计算步骤获得的基准口令A’进行比对,如果相等,即匹配,则认为是用户本人输入,允许用户登录,并允许后续的操作;如果错误,则拒绝登录以及后续的操作。
前述六位随机码的具体的应用还可以为例如,在终端设备,例如手机开机时,随机的在屏幕上显示“GUMWPA”,按照上述设置的规则,则正确的口令为“UGWMAP”,即只有在用户正确的输入了前述口令后,系统才能允许用户登录。
采用这种简单的重新排列及部分替换的方式,其优点在于规则的简单、方便记忆,在一些输入场合比较私密的情况下可以使用,比如用于手机的开机口令、用于登录电子钥匙的口令等。其缺点在于规则简单,容易推出其规则,如整个输入过程被人偷窥的话,通过几组、数十组随机码和动态口令的比对,即可以推导出它的规则。
方案二(纯计算公式):
定义:假设产生的随机被控制元素为一组六位静态操作元素为相乘、平方以及相加。则登录规则为y=5×c2+9
在登录时,终端后台会先产生该一组六位随机数a、b、c、d、e和f,例如,在手机开机时,在屏幕上会显示“795382”,然后基准口令生成步骤按保存的运算式计算得到y’=5×c2+9=134,并将134作为基准口令;用户根据该显示的一组随机数,按照头脑中记忆的运算式计算结果y=5×c2+9=134,并将134作为口令输入;此后匹配步骤再将用户输入的口令y与基准口令y’进行比对,如果相等,则认为是用户本人输入,允许后续的操作;如果错误,则拒绝后续的操作。
方案三(计算公式加补位、再排列):
在方案二中,有可能得到的计算结果为个位数、或两位数,为了加强其强度,避免被别人推导出计算公式,可以通过一定的规则,对于计算结果为个位数的,补足其十万位、万位、千位、百位和十位数,从而保证其六位口令均有数值。对于结果为两位数、三位数、四位数、五位数,都可以采用同样的方式来补足。
例如,按照方案三,我们可以定如下的规则,十万位采用第一位数字的平方后取其个位数,万位采用第二位数字的平方后取其个位数,千位采用第三位数字的平方后取其个位数,以此类推。以方案二的例子,随机数“795382”,根据现在的补位规则,正确的口令为“915134”。如果随机数为“470691”,则正确的口令为“690619”。
方案四(口令为任意位数)
上述方案中,我们设定的口令位数是固定的,如4位、6位或8位等,为了增加他人的破译难度,可以将口令设置为任意长度,而且是不定的。口令的组成可以是几个算法结果的组合。
口令为:y=y1y2y3y4
其中:y1=a2+3
y2=c2+5
y3=d2+7
y4=f2+9
例如,在登录时,终端后台会先产生1组随机数9、6、2、5、3、8,终端用户按照事先设置的算法算出:y1=84、y2=9、y3=32、y4=73,则口令组合为:8493273。
上述四种方案,都是在一组随机信息的前提下做的设置,在大部分的应用领域,其安区性已经比现有的方案有大幅度的提高,如用于手机开机口令、电脑开机口令、电子钥匙应用登录、QQ登录、MSN登录等等。在某些要求安全级别较高的领域,比如网上银行、网上交易、政府机关和部队的文件管控等方面,则需要进一步提高其安全性能,在使用本发明时,则可以适当的增加随机码(数)的组数,及增加动态口令的位数,从而增加破译者的难度,提高其安全性能。
方案五(多组随机码)
下面以4组4位随机码为例,仅仅作为说明的例子,在实际应用上可以根据具体的情况而做调整,并不局限于4组4位,口令也不局限于4位,可以设计成任意位数。
定义:假设产生的随机数(或字母)为4组,每组有4位数字(或字母)组成,数组如下:
口令由4位数字(或字母)组成;
采用重新排列组合方式
4位口令的产生(由用户自己定义,以下仅为举例说明):
注:采用重新排列组合的方式产生口令,则4组随机数和口令并不局限于数字,也可以是字母和字符。但是,由于这种方式还是比较简单,如果能够被别人偷窥到,通过得到一定数量的随机码(数)及相应的口令,能够推导出其规则。
采用重新排列组合方式,并且按相应位加(或减)一组事先预留的4位数种子
用户在设置口令计算方式时,可以再设定一组4位的种子数:
4位口令的产生(由用户自己定义,以下仅为举例说明):
当两数相加大于10时,取其个位数;当两数相减小于0时,取其正数。
例1,在电脑开机的时候,屏幕上会显示4组随机数“8362”“2396”“3058”“8924”,
用户在设置时预设了1组种子数“1234”,则按照上述规则,正确的口令为“9588”。
例2,在电脑开机的时候,屏幕上会显示4组随机字母“ofjt”“rUpC”“PTjk”“dRJZ”,用户在设置时预设了1组种子数“1234”,则按照上述规则,正确的口令为“pWmD”。
注:这个方案比起方案1来说,其安全性要高些,除了简单的重新排列外增加了计算的功能,破解的难度要高些,但由于是采用简单的对应位加减,当入侵者得到一定数量的随机数和口令值后,也可以推导出它的规则。
其它各种任意定义的计算公式
4位口令的产生(由用户自己定义,以下仅为举例说明):
可以将y值作为口令输入,前面不足部分可以空着;或者通过下列方式补足:
当y>=1000,直接作为口令输入
上述所有组合方式,均可以根据用户的设定而自由组合,从而得出千变万化的结果。
报警(胁迫)登录的计算公式也可以通过上述的方法来设置,为避免两个规则函数产生相同值,其计算公式可以与正常登录计算公式一样,仅仅再加上、或减去一个常数。
方案五(文字转换方式)
随机信息可以设计成中文汉字形式,将汉字的笔画、或者四角号码作为口令。例如,随机信息显示“人机同步动态口令”,用户事先约定的转换规则是选用第2、4、6、8个文字的笔画作为口令输入,则此口令为“6785”;当然,也可以采用文字的四角号码作为口令。
为了增加破译的难度,可以将转换的数字再进行简单的运算,将得到的结果作为口令输入。
方案六(音乐转换)
随机信息可以设计成音乐,将简谱作为口令。例如,电脑开机时随机播放一段音乐,用户将这段音乐的前几个音符的简谱作为口令的输入。也可以将转换的简谱再进行简单的运算,将得到的结果作为口令输入。
方案七(化学元素的转换)
随机信息可以设计成化学元素,将其原子序数作为一串口令。例如,电脑开机时显示几个化学元素,如显示“铝铁碳铜”,则可以将它们转换成一组数据“1326629”,把它作为口令输入。也可以将转换的原子序数再进行简单的运算,将得到的结果作为口令输入。
由于本发明的重要部分在于约定的登录规则,因而,它们的存放、保密工作同样重要。登录规则的保存,可以根据本发明的应用领域来具体设定,如果是用于手机以保护手机内的资料,则将登录规则保存在手机本地内即可;如果用本发明来登录电脑,则登录规则保存在需要登录的电脑内即可;对于那些要登录到服务器上的应用领域,如即时聊天工具、电子邮箱、门禁、货币存取设备(ATM)等等,则登录规则最好保存在相应的服务器上。按照现有的技术,登录规则的保存大致可以采用“明文”、“加密”两种方式,如采用加密方式,加密的密钥可以通过散列函数来产生,无需保存,可以避免被他人所破获。
至于用户一方的人脑的记忆,对于一般应用领域里,用户设置的登录规则不需要设置得十分复杂,选择一些方便记忆的转换,如选择、重新排列、移位和简单的运算。在一些特别重要的场合下,必需将运算设置得十分复杂,不让他人破解,但是这些运算是无法通过人脑来记忆的,在这种场合下,用户可以将运算方程式保存在另外一台智能终端(如智能手机、掌上电脑等)、或个人电脑上,当需要用到口令输入时,可以在另外一台智能手机、或个人电脑上输入相应的变量,由它来计算出口令的值。口令的输入,可以通过手工输入的方式输入,也可以通过无线的方式(红外、WiFi、蓝牙等)传输。
以上具体介绍的是本发明的可行的实施方案,可以用于安全等级不同的应用领域,但在实际用户设定时,并不仅限于下列这些方案,也不仅限于下列所定义的数组个数和口令的长度,可以根据实际情况而由用户自己定义。