CN100444184C - 软件身份认证的方法和系统 - Google Patents

软件身份认证的方法和系统 Download PDF

Info

Publication number
CN100444184C
CN100444184C CNB2006101142359A CN200610114235A CN100444184C CN 100444184 C CN100444184 C CN 100444184C CN B2006101142359 A CNB2006101142359 A CN B2006101142359A CN 200610114235 A CN200610114235 A CN 200610114235A CN 100444184 C CN100444184 C CN 100444184C
Authority
CN
China
Prior art keywords
password
intelligent key
key apparatus
software
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CNB2006101142359A
Other languages
English (en)
Other versions
CN1949241A (zh
Inventor
陆舟
于华章
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Feitian Technologies Co Ltd
Original Assignee
Beijing Feitian Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Feitian Technologies Co Ltd filed Critical Beijing Feitian Technologies Co Ltd
Priority to CNB2006101142359A priority Critical patent/CN100444184C/zh
Publication of CN1949241A publication Critical patent/CN1949241A/zh
Application granted granted Critical
Publication of CN100444184C publication Critical patent/CN100444184C/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明提供了一种软件身份认证的方法和系统,属于身份认证领域。为了解决现有技术中用户直接输入用户名和密码进行软件身份认证时安全性不高、使用不够方便的问题,本发明提供了一种软件身份认证的方法,包括获取原始用户名和密码并存入智能密钥装置中的步骤,将智能密钥装置与计算机相连的步骤,从智能密钥装置中读出用户名和密码并与软件数据库中的用户名和密码进行比对验证的步骤;本发明还提供了一种软件身份认证的系统,包括获取模块、存储模块、读取模块和比对模块。本发明减少了用户需要记忆的内容,而且智能密钥装置可以存放多组用户名和密码,为用户的使用提供了很大的便利,简单易行,同时对现有系统的改动也是最小的。

Description

软件身份认证的方法和系统
技术领域
本发明涉及身份认证领域,特别涉及一种软件身份认证的方法和系统。
背景技术
目前,随着计算机技术的发展,信息安全越来越受到人们的关注,其中身份认证技术是信息安全的一个重要组成部分。软件身份认证是指计算机及网络系统确认软件操作者身份的过程。计算机系统和计算机网络是一个虚拟的数字世界。在这个数字世界中,一切信息包括用户的身份信息都是用一组特定的数据来表示的,计算机只能识别用户的数字身份,所有对用户的授权也是针对用户数字身份的授权。
目前被广泛采用的软件身份认证方式为“用户名和密码”认证方式,即需要进行身份认证的软件单纯利用用户输入的用户名/密码来完成身份验证的方法。
每个用户的密码是由这个用户自己设定的,只有他自己才知道,因此只要能够正确输入密码,计算机就认为他就是这个用户。然而实际上,该种方法在安全性和使用上还存在着很多缺点:
1、由于许多用户为了防止忘记密码,把密码写在一个自己认为安全的地方,极易造成密码泄露;
2、由于用户在使用不同的软件时,有可能会使用不同的用户名和密码,所以在用户名和密码的记忆和使用方面也不够方便;
3、由于此种“用户名/密码”的身份认证方法使用的是单因子认证方法(仅通过一个条件的符合来证明一个人的身份称为单因子认证),仅使用一个条件判断用户的身份容易被仿冒,极不安全;
4、一些恶意分子经常盗取合法用户的用户名、密码等身份识别信息,然后自己非法通过这些信息使用软件,或将其转售给他人,从中牟取不义之财,给合法用户造成很大损失。
基于智能密钥装置的身份认证方式是近几年发展起来的一种方便、安全的身份认证技术。智能密钥装置是一种带有处理器和存储器的小型硬件装置,可通过计算机的数据通讯接口与计算机连接,一般通过USB接口与计算机相连,通常被称为USB KEY或USB Token。智能密钥装置采用PIN(个人身份识别)码或生物特征(如指纹或虹膜等)验证用户身份的合法性,在进行身份认证时将智能密钥装置与计算机相连,用户在计算机上输入PIN码或生物特征,智能密钥装置会自动校验该PIN码或生物特征的正确性,只有当用户输入的PIN码或生物特征正确时,才允许用户使用智能密钥装置。智能密钥装置具有物理抗攻击的特性,安全性极高。
发明内容
为了解决现有技术中软件身份认证时直接输入用户名和密码安全性不高、使用不够方便的问题,本发明提供了一种软件身份认证的方法,首先获取用户名和密码,并将所述用户名和密码写入智能密钥装置中,然后执行以下步骤:
步骤A:将所述智能密钥装置与计算机连接,申请软件身份验证;
步骤B:所述智能密钥装置验证用户的身份是否合法,如果合法则执行步骤C,否则结束;
步骤C:从所述智能密钥装置中读出用户名和密码;
步骤D:将所述读出的用户名和密码与软件数据库中的用户名和密码进行比对,如果一致,则验证通过;如果不一致,则提示出错信息,拒绝所述用户登录。
所述智能密钥装置通过USB接口或串行ATA(Advanced Technology Attachment,高级技术配件)接口与计算机连接。
所述步骤B中所述智能密钥装置验证用户的身份是否合法的步骤具体为验证用户输入的PIN码或验证用户的生物特征。
所述智能密钥装置中内置有加密算法和解密算法,将所述用户名和密码写入所述智能密钥装置的步骤还包括利用所述加密算法对写入的用户名和密码进行加密的步骤,从所述智能密钥装置中读出用户名和密码的步骤还包括利用所述解密算法对所述读出的用户名和密码进行解密的步骤。
所述智能密钥装置中至少存储一组用户名和密码。
本发明还提供了一种软件身份认证的系统,所述系统包括:
(1)获取模块,用于获取用户名和密码;
(2)存储模块,用于将所述获取模块获取的用户名和密码写入智能密钥装置中;
(3)读取模块,用于在所述智能密钥装置验证用户的身份为合法之后,从所述智能密钥装置中读出用户名和密码;
(4)比对模块,用于将所述读取模块读出的用户名和密码与软件数据库中的用户名和密码进行比对,并返回验证成功或失败的结果。
首先获取用户名和密码,对所述密码进行变换处理,并将所述用户名和变换处理后的密码写入智能密钥装置中,然后执行以下步骤:
步骤A’:将所述智能密钥装置与计算机连接,申请软件身份验证;
步骤B’:所述智能密钥装置验证用户的身份是否合法,如果合法则执行步骤C’,否则结束;
步骤C’:从所述智能密钥装置中读出用户名和密码;
步骤D’:将所述用户名和密码与软件数据库中的用户名和密码进行比对,如果一致,则验证通过;如果不一致,则提示出错信息,拒绝所述用户登录。
所述变换处理为可逆变换;所述步骤C’之后还包括对所述读出的密码进行所述可逆变换的反变换的步骤。
所述可逆变换为采用固定数结合DES、3DES、AES或XOR算法对所述密码进行运算。
所述变换处理为可逆变换或不可逆变换,或者是重新建立一个与所述密码无关的新密码;所述步骤A’之前还包括将软件数据库中的密码改写为所述变换处理后的密码的步骤。
所述方法在完成软件身份认证之后还包括:
对从所述智能密钥装置中读出的密码进行再次变换处理,并将所述智能密钥装置和软件数据库中的密码均改写为再次变换处理后的密码。
所述再次变换处理为对所述读出的密码进行可逆变换或不可逆变换,或者是重新建立一个与所述读出的密码无关的新密码。
所述可逆变换为采用固定数结合DES、3DES、AES或XOR算法对所述读出的密码进行运算。
所述不可逆变换为采用SHA1、MD5或SHA256算法对所述读出的密码进行运算,或者是采用随机数结合DES、3DES、AES或XOR算法对所述读出的密码进行运算。
所述智能密钥装置通过USB接口或串行ATA接口与计算机连接。
所述智能密钥装置验证用户的身份是否合法的步骤具体为验证用户输入的PIN码或验证用户的生物特征。
所述智能密钥装置中内置有加密算法和解密算法,将所述用户名和密码写入所述智能密钥装置的步骤还包括利用所述加密算法对写入的密码进行加密的步骤,从所述智能密钥装置中读出用户名和密码的步骤还包括利用所述解密算法对所述读出的密码进行解密的步骤。
所述智能密钥装置中至少存储一组用户名和密码。
本发明还提供了一种软件身份认证的系统,所述系统包括:
(1)获取模块,用于获取用户名和密码;
(2)变换模块,用于对所述获取模块获取的密码进行变换处理;
(3)存储模块,用于将所述获取模块获取的用户名和所述变换模块变换处理后得到的密码写入智能密钥装置中;
(4)读取模块,用于在所述智能密钥装置验证用户的身份为合法之后,从所述智能密钥装置中读出用户名和密码;
(5)比对模块,用于将所述读取模块读出的用户名和密码与软件数据库中的用户名和密码进行比对,并返回验证成功或失败的结果。
所述变换处理具体为可逆变换;所述比对模块具体为:
反变换比对模块,用于先对所述读取模块读出的密码进行所述可逆变换的反变换,再将所述读取模块读出的用户名和所述反变换后得到的密码与软件数据库中的用户名和密码进行比对,并返回验证成功或失败的结果。
所述变换处理具体为可逆变换或不可逆变换,或者是重新建立一个与所述密码无关的新密码;
所述系统还包括:
数据库更新模块,用于将软件数据库中的密码改写为所述变换处理后的密码。
所述系统还包括:
密码重建模块,用于对所述读取模块读出的密码进行再次变换处理,并将所述智能密钥装置和软件数据库中的密码均改写为再次变换处理后的密码。
所述再次变换处理为可逆变换或不可逆变换,或者是重新建立一个与所述读取模块读出的密码无关的新密码。
本发明的有益效果是:
1、用户将用户名和密码存放在智能密钥装置中,有效地防止了密码泄露;
2、将经过变换的密码保存在智能密钥装置中,极大地提高了用户名和密码的安全性;
3、用户不需记住用户名和密码,只需记忆智能密钥装置的PIN码或提供个人生物特征即可,从而减少了用户需要记忆的内容;
4、采用了软硬件相结合的强双因子认证模式,即通过智能密钥装置和“用户名/密码”相结合的方式来验证,相对目前用户直接输入用户名和密码方式进行软件认证的方式更安全可靠,而且很好地解决了安全性与易用性之间的矛盾;
5、智能密钥装置可以存放多组用户名和密码,为用户的使用提供了很大的便利;
6、针对目前广泛采用的单纯“用户名/密码”方式的身份验证方法而言,需要做的改动非常小,简单易行。
附图说明
图1是本发明软件身份认证的方法实施例一的流程图;
图2是本发明软件身份认证的方法实施例二的流程图;
图3是本发明软件身份认证的方法实施例三的流程图;
图4是本发明软件身份认证的方法实施例四的流程图;
图5是本发明软件身份认证的系统实施例五的结构图;
图6是本发明软件身份认证的系统实施例六的结构图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,但不作为对本发明的限定。
本发明中的软件均指需要进行身份认证的软件。
实施例一
参见图1,本发明提供了一种软件身份认证的方法,首先在智能密钥装置中写入用户名和密码,即执行以下步骤:
步骤101:获取原始用户名和密码PW;
获取原始用户名和密码的方法可以是通过用户输入的方法获取,也可以通过查询软件数据库的方法获取;
步骤102:用户将获取的原始用户名和密码PW写入智能密钥装置中;
当智能密钥装置中内置有加密和解密算法时,智能密钥装置会利用加密算法对写入其中的密码PW进行加密处理,生成PW’后以密文形式存储在智能密钥装置中;
当需要进行软件身份认证时,执行以下步骤:
步骤103:将智能密钥装置与计算机连接;
步骤104:用户输入PIN码用来验证其是否为该智能密钥装置的合法持有者;
步骤105:智能密钥装置验证用户输入的PIN是否正确,如果不正确,说明用户不是智能密钥装置的合法持有者,则执行步骤106,否则说明用户是智能密钥装置的合法持有者,则执行步骤107;
步骤106:智能密钥装置提示出错信息,拒绝用户使用智能密钥装置,并做异常处理,然后结束;
步骤107:用户启动软件,申请进行软件身份验证;
步骤108:软件从智能密钥装置中读出用户名和密码;
如果智能密钥装置中没有内置加密和解密算法,则读出的密码就是原始密码PW,如果智能密钥装置中内置有加密和解密算法,则读出密码时智能密钥装置会自动利用解密算法解密密文PW’得到PW,因此读出的密码也是原始密码PW;
步骤109:软件比对从智能密钥装置中读出的用户名和密码与软件数据库中的用户名和密码,如果一致,说明用户的用户名和密码有效,通过验证,则用户可以使用软件;如果不一致,说明用户名和密码无效,用户不能通过验证,则软件提示出错信息,拒绝用户登录。
实施例二
为了提高软件身份认证的安全性,在将用户名和密码存入智能密钥装置之前,还可以对密码进行可逆变换。与实施例一不同的是,本实施例对从软件数据库中获取的原始密码先进行可逆变换,然后再存入智能密钥装置中;软件身份验证时,对从智能密钥装置中读出的密码先进行可逆变换的反变换,然后再验证。
参见图2所示,本发明还提供了一种软件身份认证的方法,首先执行在智能密钥装置中写入用户名和密码的步骤:
步骤201:获取原始用户名和密码PW;
获取原始用户名和密码的方法可以是通过用户输入的方法获取,也可以通过查询软件数据库的方法获取;
步骤202:用户对获取的原始密码PW进行可逆变换,如采用固定数结合DES、3DES、AES或XOR等算法对原始密码进行可逆变换,得到新的密码PW’;
步骤203:用户将用户名和变换后的密码PW’写入智能密钥装置中;
当智能密钥装置中内置有加密和解密算法时,智能密钥装置会利用加密算法对写入其中的密码PW’进行加密处理,生成PW”后以密文形式存储在智能密钥装置中;
当需要进行软件身份认证时,执行以下步骤:
步骤204:将智能密钥装置与计算机连接;
步骤205:用户输入PIN码用来验证其是否为该智能密钥装置的合法持有者;
步骤206:智能密钥装置验证用户输入的PIN是否正确,如果不正确,说明用户不是智能密钥装置的合法持有者,则执行步骤207,否则说明用户是智能密钥装置的合法持有者,则执行步骤208;
步骤207:智能密钥装置提示出错信息,拒绝用户使用智能密钥装置,并做异常处理,然后结束;
步骤208:用户启动软件,申请进行软件身份验证;
步骤209:软件从智能密钥装置中读出用户名和密码;
如果智能密钥装置中没有内置加密和解密算法,则读出的密码为PW’即经过变换后的密码;如果智能密钥装置中内置有加密和解密算法,则读出密码时智能密钥装置会自动利用解密算法解密密文PW”得到PW’,因此读出的密码也是密码PW’;
步骤210:软件对读出的密码PW’进行上述可逆变换的反变换,得到原始密码PW;
步骤211:软件对从智能密钥装置中读出的用户名和反变换得到的密码与软件数据库中的用户名和密码进行比对,如果一致,说明用户的用户名和密码有效,通过验证,则用户可以使用软件;如果不一致,说明用户名和密码无效,用户不能通过验证,则软件提示出错信息,拒绝用户登录。
实施例三
与实施例二不同的是,本实施例对从软件数据库中获取的原始密码进行变换后,不仅存入智能密钥装置中,也存入软件数据库中,即将软件数据库中的密码改写为变换后的密码;软件身份验证时,从智能密钥装置中读出的密码即变换后的密码,用它来进行验证。本实施例中的变换可以是可逆变换或不可逆变换,还可以是抛弃原密码重新创建一个新密码,使密码的安全性更高。
参见图3,本发明还提供了一种软件身份认证的方法,首先在智能密钥装置中写入用户名和密码,即执行以下步骤:
步骤301:获取原始用户名和密码PW;
获取原始用户名和密码的方法可以是通过用户输入的方法获取,也可以通过查询软件数据库的方法获取;
步骤302:用户利用变换模块对原始密码PW进行变换;
对原始密码进行的变换可以是可逆变换,如采用固定数结合DES、3DES、AES或XOR等算法实现;还可以是不可逆变换,如用SHA1、MD5或SHA256等算法实现,或者采用随机数结合DES、3DES、AES或XOR等算法实现;还可以抛弃原始密码,重新建立一个密码,新建的密码与原始密码没有任何关系;变换后得到的密码为PW’;
步骤303:用户利用软件自带的修改密码功能将软件数据库中的密码PW改写为变换后的密码PW’;
步骤304:用户将用户名和变换后的密码PW’写入智能密钥装置中;
当智能密钥装置中内置有加密和解密算法时,智能密钥装置会利用加密算法对写入其中的密码PW’进行加密处理,生成PW”后以密文形式存储在智能密钥装置中;
当需要进行软件身份认证时,执行以下步骤:
步骤305:将智能密钥装置与计算机连接;
步骤306:用户输入PIN码用来验证其是否为该智能密钥装置的合法持有者;
步骤307:智能密钥装置验证用户输入的PIN是否正确,如果不正确,说明用户不是智能密钥装置的合法持有者,则执行步骤308,否则说明用户是智能密钥装置的合法持有者,则执行步骤309;
步骤308:智能密钥装置提示出错信息,拒绝用户使用智能密钥装置,并做异常处理,然后结束;
步骤309:用户启动软件,申请进行软件身份验证;
步骤310:软件从智能密钥装置中读出用户名和密码;
如果智能密钥装置中没有内置加密和解密算法,则读出的密码为PW’即经过变换后的密码;如果智能密钥装置中内置有加密和解密算法,则读出密码时智能密钥装置会自动利用解密算法解密密文PW”得到PW’,因此读出的密码也是密码PW’;
步骤311:软件比对读出的用户名和密码与软件数据库中的用户名和密码,如果一致,说明用户的用户名和密码有效,通过验证,则用户可以使用软件;如果不一致,说明用户名和密码无效,用户不能通过验证,则软件提示出错信息,拒绝用户登录。
实施例四
与上述所有实施例不同的是,上述所有实施例中的密码都可以重复使用,而本实施例中变换后的密码只能使用一次,即一次一密模式,更提高了密码使用的安全性;本实施例中在完成软件身份认证后,需要重新生成新的密码,并存放在软件数据库和智能密钥装置中,以备以后使用。
参见图4,本发明还提供了一种软件身份认证的方法,首先在智能密钥装置中写入用户名和密码,即执行以下步骤:
步骤401:获取原始用户名和密码PW;
获取原始用户名和密码的方法可以是通过用户输入的方法获取,也可以通过查询软件数据库的方法获取;
步骤402:用户利用变换模块对原始密码PW进行变换;
对原始密码进行的变换可以是可逆变换,如采用固定数结合DES、3DES、AES或XOR等算法实现;还可以是不可逆变换,如用SHA1、MD5或SHA256等算法实现,或者采用随机数结合DES、3DES、AES或XOR等算法实现;还可以抛弃原始密码,重新建立一个密码,新建的密码与原始密码没有任何关系;变换后得到的密码为PW’;
步骤403:用户利用软件自带的修改密码功能将软件数据库中的密码PW改写为变换后的密码PW’;
步骤404:用户将用户名和变换后的密码PW’写入智能密钥装置中;
当智能密钥装置中内置有加密和解密算法时,智能密钥装置会利用加密算法对写入其中的密码PW’进行加密处理,生成PW”后以密文形式存储在智能密钥装置中;
当需要进行软件身份认证时,执行以下步骤:
步骤405:将智能密钥装置与计算机连接;
步骤406:用户输入PIN码用来验证其是否为该智能密钥装置的合法持有者;
步骤407:智能密钥装置验证用户输入的PIN是否正确,如果不正确,说明用户不是智能密钥装置的合法持有者,则执行步骤408,否则说明用户是智能密钥装置的合法持有者,则执行步骤409;
步骤408:智能密钥装置提示出错信息,拒绝用户使用智能密钥装置,并做异常处理,然后结束;
步骤409:用户启动软件,申请进行软件身份验证;
步骤410:软件从智能密钥装置中读出用户名和密码;
如果智能密钥装置中没有内置加密和解密算法,则读出的密码为PW’即经过变换后的密码;如果智能密钥装置中内置有加密和解密算法,则读出密码时智能密钥装置会自动利用解密算法解密密文PW”得到PW’,因此读出的密码也是密码PW’;
步骤411:软件比对读出的用户名和密码与软件数据库中的用户名和密码,如果一致,说明用户的用户名和密码有效,通过验证,则用户可以使用软件;如果不一致,说明用户名和密码无效,用户不能通过验证,则软件提示出错信息,拒绝用户登录;
完成软件身份认证后,由于密码已经失效,需要重新生成一个密码以备以后使用,因此本实施例还要执行以下步骤:
步骤412:利用变换模块对从智能密钥装置中读出的密码PW’进行再次变换;
再次变换可以是可逆变换,如采用固定数结合DES、3DES、AES或XOR等算法实现;还可以是不可逆变换,如利用SHA1、MD5或SHA256等算法实现,或者采用随机数结合DES、3DES、AES或XOR等算法实现;还可以抛弃现在的密码PW’,重新建立一个密码,新建的密码与抛弃的密码没有任何关系;经过再次变换后得到的密码为PW1;
步骤413:用户将新生成的密码PW1写入智能密钥装置中;
当智能密钥装置中内置有加密和解密算法时,智能密钥装置会利用加密算法对写入其中的密码PW1进行加密处理,生成PW1’后以密文形式存储在智能密钥装置中,以备下次使用;
步骤414:用户利用软件自带的修改密码功能将软件数据库中的密码PW’改写为新生成的密码PW1,以备下次使用。
上述所有实施例中的智能密钥装置可以存储一组或多组用户名和密码,对应一个或多个软件,当存储有多组用户名和密码时,可以完成对多个软件的身份认证。
上述所有实施例中用户输入PIN码,智能密钥装置验证该PIN码是否正确的步骤均可以由用户输入生物特征,智能密钥装置验证该生物特征是否正确的步骤替换。
实施例五
参见图5,本发明还提供了一种软件身份认证的系统,包括:
(1)获取模块,用于获取用户名和密码;
(2)存储模块,用于将获取模块获取的用户名和密码写入智能密钥装置中;
(3)读取模块,用于在智能密钥装置验证用户的身份为合法之后,从智能密钥装置中读出用户名和密码;
(4)比对模块,用于将读取模块读出的用户名和密码与软件数据库中的用户名和密码进行比对,并返回验证成功或失败的结果。
智能密钥装置验证用户的身份是指验证用户输入的PIN码或验证用户的生物特征,当验证用户的身份不合法时,则智能密钥装置提示错误信息并进行异常处理。
本实施例中的智能密钥装置可以存储一组或多组用户名和密码,对应一个或多个软件,当存储有多组用户名和密码时,可以完成对多个软件的身份认证。
实施例六
参见图6,本发明还提供了一种软件身份认证的系统,包括:
(1)获取模块,用于获取用户名和密码;
(2)变换模块,用于对获取模块获取的密码进行变换处理;
(3)存储模块,用于将获取模块获取的用户名和变换模块变换处理后得到的密码写入智能密钥装置中;
(4)读取模块,用于在智能密钥装置验证用户的身份为合法之后,从智能密钥装置中读出用户名和密码;
(5)比对模块,用于将读取模块读出的用户名和密码与软件数据库中的用户名和密码进行比对,并返回验证成功或失败的结果。
当变换处理具体为可逆变换时,比对模块具体为:
反变换比对模块,用于先对读取模块读出的密码进行可逆变换的反变换,再将读取模块读出的用户名和反变换后得到的密码与软件数据库中的用户名和密码进行比对,并返回验证成功或失败的结果。
当变换处理具体为可逆变换或不可逆变换,或者是重新建立一个与密码无关的新密码时;系统还包括:
数据库更新模块,用于将软件数据库中的密码改写为变换处理后的密码。
上述情况智能密钥装置和软件数据库中的密码均可以重复使用,即可以多次使用。在对系统安全性要求较高的情况下,需要一次一密,即密码使用过后就失效,不能重复使用,因此需要重建密码,以备后续使用,因此需要在系统中增加:
密码重建模块,用于对读取模块读出的密码进行再次变换处理,并将智能密钥装置和软件数据库中的密码均改写为再次变换处理后的密码。
再次变换处理为可逆变换或不可逆变换,或者是重新建立一个与读取模块读出的密码无关的新密码。
在本实施例中,所有可逆变换均指采用固定数结合DES、3DES、AES或XOR算法对密码进行运算;所有不可逆变换均指采用SHA1、MD5或SHA256算法对密码进行运算,或者是采用随机数结合DES、3DES、AES或XOR算法对密码进行运算。
智能密钥装置验证用户的身份是指验证用户输入的PIN码或验证用户的生物特征,当验证用户的身份不合法时,则智能密钥装置提示错误信息并进行异常处理。
本实施例中的智能密钥装置可以存储一组或多组用户名和密码,对应一个或多个软件,当存储有多组用户名和密码时,可以完成对多个软件的身份认证。
实施例一至实施例六中的智能密钥装置通过USB接口或串行ATA接口与计算机连接。
以上所述的实施例,只是本发明较优选的具体实施方式的几种,本领域的技术人员在本发明技术方案范围内进行的通常变化和替换都应包含在本发明的保护范围内。

Claims (8)

1.一种软件身份认证的方法,其特征在于,首先获取用户名和密码,对所述密码进行变换,将所述用户名和变换处理后的密码写入智能密钥装置中,并利用软件自带的修改密码功能将软件数据库中的密码改写为所述变换处理后的密码,所述变换为可逆变换或不可逆变换、或者是重新建立一个与所述密码无关的密码,所述方法包括以下步骤:
步骤A:将所述智能密钥装置与计算机连接,申请软件身份验证;
步骤B:所述智能密钥装置验证用户的身份是否合法,如果合法则执行步骤C,否则结束;
步骤C:从所述智能密钥装置中读出所述用户名和变换处理后的密码;
步骤D:将所述用户名和变换处理后的密码与所述软件数据库中的用户名和被改写后的密码进行比对,如果一致,则验证通过,然后执行步骤E;如果不一致,则提示出错信息,拒绝所述用户登录,结束;
步骤E:对从所述智能密钥装置中读出的密码再次进行可逆变换或不可逆变换、或者是重新建立一个与所述读出的密码无关的密码,并将所述智能密钥装置和软件数据库中的密码均改写为所述再次变换处理后的密码,结束。
2.根据权利要求1所述的软件身份认证的方法,其特征在于,所述可逆变换为采用固定数结合DES、3DES、AES或XOR算法对密码进行运算。
3.根据权利要求1所述的软件身份认证的方法,其特征在于,所述不可逆变换为采用SHA1、MD5或SHA256算法对密码进行运算,或者是采用随机数结合DES、3DES、AES或XOR算法对密码进行运算。
4.根据权利要求1所述的软件身份认证的方法,其特征在于,所述智能密钥装置通过USB接口或串行ATA接口与计算机连接。
5.根据权利要求1所述的软件身份认证的方法,其特征在于,所述智能密钥装置验证用户的身份是否合法的步骤具体为验证用户输入的PIN码或验证用户的生物特征。
6.根据权利要求1所述的软件身份认证的方法,其特征在于,所述智能密钥装置中内置有加密算法和解密算法,将所述用户名和变换处理后的密码写入所述智能密钥装置的步骤还包括利用所述加密算法对写入的密码进行加密的步骤,从所述智能密钥装置中读出所述用户名和变换处理后的密码的步骤还包括利用所述解密算法对所述读出的密码进行解密的步骤。
7.根据权利要求1所述的软件身份认证的方法,其特征在于,所述智能密钥装置中至少存储一组用户名和密码。
8.一种软件身份认证的系统,其特征在于,所述系统包括:
(1)获取模块,用于获取用户名和密码;
(2)变换模块,用于对所述获取模块获取的密码进行变换,所述变换为可逆变换或不可逆变换、或者是重新建立一个与所述密码无关的密码;
(3)存储模块,用于将所述获取模块获取的用户名和所述变换模块变换处理后得到的密码写入智能密钥装置中;
(4)数据库更新模块,用于利用软件自带的修改密码功能将软件数据库中的密码改写为所述变换模块变换处理后的密码;
(5)读取模块,用于在所述智能密钥装置验证用户的身份为合法之后,从所述智能密钥装置中读出所述用户名和变换处理后的密码;
(6)比对模块,用于将所述读取模块读出的用户名和密码与所述软件数据库中的用户名和密码进行比对,并返回验证成功或失败的结果;
(7)密码重建模块,用于当所述比对模块返回验证成功的结果后,对所述读取模块读出的密码再次进行可逆变换或不可逆变换、或者是重新建立一个与所述读出的密码无关的密码,并将所述智能密钥装置和软件数据库中的密码均改写为所述再次变换处理后的密码。
CNB2006101142359A 2006-11-02 2006-11-02 软件身份认证的方法和系统 Active CN100444184C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2006101142359A CN100444184C (zh) 2006-11-02 2006-11-02 软件身份认证的方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2006101142359A CN100444184C (zh) 2006-11-02 2006-11-02 软件身份认证的方法和系统

Publications (2)

Publication Number Publication Date
CN1949241A CN1949241A (zh) 2007-04-18
CN100444184C true CN100444184C (zh) 2008-12-17

Family

ID=38018755

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006101142359A Active CN100444184C (zh) 2006-11-02 2006-11-02 软件身份认证的方法和系统

Country Status (1)

Country Link
CN (1) CN100444184C (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101266638B (zh) * 2008-04-16 2010-04-21 北京飞天诚信科技有限公司 软件保护的方法和系统
CN101286846B (zh) * 2008-05-19 2014-04-16 郑宽永 交互式身份认证方法
CN102222200B (zh) * 2011-06-24 2015-07-22 宇龙计算机通信科技(深圳)有限公司 一种应用程序登录方法及登录管理系统
CN103678964A (zh) * 2012-09-13 2014-03-26 上海斐讯数据通信技术有限公司 移动终端、密码输入方法及系统
US9942750B2 (en) * 2013-01-23 2018-04-10 Qualcomm Incorporated Providing an encrypted account credential from a first device to a second device
CN104182677A (zh) * 2014-07-14 2014-12-03 联想(北京)有限公司 一种信息处理方法及电子设备
CN107395344A (zh) * 2017-07-18 2017-11-24 北京深思数盾科技股份有限公司 用户信息保护方法及装置
CN112905202B (zh) * 2021-02-07 2024-01-02 广州众诺微电子有限公司 一种芯片升级方法、烧录设备和芯片升级系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6298135B1 (en) * 1999-04-29 2001-10-02 Motorola, Inc. Method of preventing power analysis attacks on microelectronic assemblies
CN1434598A (zh) * 2003-03-06 2003-08-06 上海交通大学 用智能卡实现的安全一卡通系统
CN1758288A (zh) * 2004-10-08 2006-04-12 富士通株式会社 个人认证方法、个人认证设备,及其程序

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6298135B1 (en) * 1999-04-29 2001-10-02 Motorola, Inc. Method of preventing power analysis attacks on microelectronic assemblies
CN1434598A (zh) * 2003-03-06 2003-08-06 上海交通大学 用智能卡实现的安全一卡通系统
CN1758288A (zh) * 2004-10-08 2006-04-12 富士通株式会社 个人认证方法、个人认证设备,及其程序

Also Published As

Publication number Publication date
CN1949241A (zh) 2007-04-18

Similar Documents

Publication Publication Date Title
CN100444184C (zh) 软件身份认证的方法和系统
US9740849B2 (en) Registration and authentication of computing devices using a digital skeleton key
CN105429761B (zh) 一种密钥生成方法及装置
CN101176103B (zh) 计算机安全系统
US20080216172A1 (en) Systems, methods, and apparatus for secure transactions in trusted systems
CN101296241B (zh) 基于口令卡提高身份认证安全性的方法
CN101140605A (zh) 数据安全读取方法及其安全存储装置
CN102510378A (zh) 一种通过移动设备登陆网络游戏的方法
CZ2015473A3 (cs) Způsob zabezpečení autentizace při elektronické komunikaci
CN111768522A (zh) 一种基于ctid的智能门锁开锁方法及系统
CN106161442A (zh) 一种系统控制用户登录方法
CN110071813B (zh) 一种账户权限更改方法系统、账户平台和用户终端
CN106790243B (zh) 一种安全u盘的密码重置方法
CN111768523B (zh) 一种基于ctid的nfc智能门锁开锁方法、系统、设备及介质
CN102456102A (zh) 用Usb key技术对信息系统特殊操作进行身份再认证的方法
CN105868610A (zh) 使用生物特征信息实现用户认证的方法和系统
US20230208637A1 (en) Key management method and apparatus
JP2001344212A (ja) バイオメトリクス情報によるコンピュータファイルの利用制限方法、コンピュータシステムへのログイン方法および記録媒体
CN109977039A (zh) 硬盘加密密钥存储方法、装置、设备及可读存储介质
CN109886662A (zh) 区块链钱包应用方法及系统、终端和计算机可读存储介质
CN101552671A (zh) 基于u盘和动态差异密码的网络身份认证方法及系统
CN101304315B (zh) 基于口令卡提高身份认证安全性的方法
WO2017092507A1 (zh) 应用加密方法、装置和应用访问方法、装置
US20160055339A1 (en) Encryption Processing Method and Device for Application, and Terminal
CN101655893A (zh) 一种智能博客锁的制作、博客访问控制的方法及其系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee

Owner name: FEITIAN CHENGXIN TECHNOLOGIES CO., LTD.

Free format text: FORMER NAME: BEIJING FEITIAN CHENGXIN SCIENCE + TECHNOLOGY CO. LTD.

CP03 Change of name, title or address

Address after: 100085 Beijing city Haidian District Xueqing Road No. 9 Ebizal building B block 17 layer

Patentee after: Feitian Technologies Co., Ltd.

Address before: 100083, Haidian District, Xueyuan Road, No. 40 research, 7 floor, 5 floor, Beijing

Patentee before: Beijing Feitian Chengxin Science & Technology Co., Ltd.