CN107104787A - 一种对抗密码破解的密码设置方法 - Google Patents

一种对抗密码破解的密码设置方法 Download PDF

Info

Publication number
CN107104787A
CN107104787A CN201710281996.1A CN201710281996A CN107104787A CN 107104787 A CN107104787 A CN 107104787A CN 201710281996 A CN201710281996 A CN 201710281996A CN 107104787 A CN107104787 A CN 107104787A
Authority
CN
China
Prior art keywords
password
hash
key
user
user name
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.)
Pending
Application number
CN201710281996.1A
Other languages
English (en)
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.)
Shandong Pioneer Cloud Software Co Ltd
Original Assignee
Shandong Pioneer Cloud Software 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 Shandong Pioneer Cloud Software Co Ltd filed Critical Shandong Pioneer Cloud Software Co Ltd
Priority to CN201710281996.1A priority Critical patent/CN107104787A/zh
Publication of CN107104787A publication Critical patent/CN107104787A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/002Countermeasures against attacks on cryptographic mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0643Hash functions, e.g. MD5, SHA, HMAC or f9 MAC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Power Engineering (AREA)
  • Storage Device Security (AREA)

Abstract

一种对抗密码破解的密码设置方法,将用户提交的用户名存储在服务器的资料表中,将用户提交的用户名和密码合在一起组成一个词组,对该词组进行hash,得到一个key值,将该key值存储在key‑set表中。本发明采用上述结构,将用户名和密码分别存放在不同的表中,避免了用户名和密码直观上的一一对应,即使服务器的信息被泄露,攻击者也无法直接通过用户名得知与该用户名相对应的密码信息,消除了现有密码设置方式的漏洞,避免了用户的使用风险。

Description

一种对抗密码破解的密码设置方法
技术领域:
本发明涉及一种对抗密码破解的密码设置方法。
背景技术:
目前,人们所设置的用户名和密码均存储在同一个表中,在这个表中用户名和密码是一一对应的,如果服务器的信息被泄露,攻击者即可通过用户名轻松的得知与该用户名所对应的密码,尽管目前密码大都经过hash,无法直接得到具体的密码信息,单攻击者依然能够通过破解hash值得知该用户的密码,因此目前的密码设置方式存在很大的漏洞,给用户的使用带来风险,尤其是在一些涉及到资金信息的情况下,一旦密码被破解,用户将遭受巨大的经济损失。
发明内容:
本发明提供了一种对抗密码破解的密码设置方法,该方法设计合理,将用户名和密码分别存放在不同的表中,避免了用户名和密码直观上的一一对应,即使服务器的信息被泄露,攻击者也无法直接通过用户名得知与该用户名相对应的密码信息,消除了现有密码设置方式的漏洞,避免了用户的使用风险,解决了现有技术中存在的问题。
本发明为解决上述技术问题所采用的技术方案是:
一种对抗密码破解的密码设置方法,将用户提交的用户名存储在服务器的资料表中,将用户提交的用户名和密码合在一起组成一个词组,对该词组进行hash,得到一个key值,将该key值存储在key-set表中。
所述用户词组为用户名、密码和盐。
对所述词组进行hash的方法为分别对用户名和密码进行hash,然后将用户名的hash值和密码的hash值合并在一起,再对该合并值进行hash。
对所述词组进行hash的方法为分别对用户名、密码和盐进行hash,然后将用户名的hash值和密码的hash值合并在一起,再对该合并值进行hash。
在进行密码修改时,将新密码和用户名合在一起组成一个词组,对该词组进行hash,得到一个新的key值,将该key值存储在key-set表中。
在所述服务器上建立独立的数据库存放key-set表。
将key-set表存放在单独的服务器上。
在key-set表中填充入无用的数据。
本发明采用上述结构,将用户名和密码分别存放在不同的表中,避免了用户名和密码直观上的一一对应,即使服务器的信息被泄露,攻击者也无法直接通过用户名得知与该用户名相对应的密码信息,消除了现有密码设置方式的漏洞,避免了用户的使用风险。
具体实施方式:
为能清楚说明本方案的技术特点,下面通过具体实施方式,对本发明进行详细阐述。
由于用户提交的用户名均存储在服务器的资料表中,当用户在进行用户名注册时,首先在资料表中查询该用户名是否已经存在,从而保证用户名是唯一的,然后进行密码的设置,服务器将用户提交的用户名和密码合在一起组成一个词组,对该词组进行hash,得到一个key值,将该key值存储在key-set表中。
在进行认证时,用户输入用户名和密码,服务器对用户名和密码所组成的 词组进行hash后,与key-set中的key进行比对,如果能匹配到数据库中的key,则认证通过,用户名或密码有一项不符都不会通过认证。
如果在进行密码设置时需要加盐,则所述用户词组为用户名、密码和盐,对含有盐的词组进行hash。为了尽可能保持key的唯一性,建议盐值足够长,比如128位。
对所述词组进行hash的方法为分别对用户名和密码进行hash,然后将用户名的hash值和密码的hash值合并在一起,再对该合并值进行hash。比如用户A的用户名如果为Jack,密码为123456,用户B的用户名为Jack1,密码为23456,则如果先进行合并然后在进行hash,则用户A和用户B的key值是相同的,今儿引起混淆,因此对于用户A需要先分别对用户名Jack和密码123456进行hash,然后将两hash值合并在一起,再对合并在一次的值进行hash,至此才得到最终的key值,由此得到的用户A和用户B的key值必然不相同。
对所述词组进行hash的方法为分别对用户名、密码和盐进行hash,然后将用户名的hash值和密码的hash值合并在一起,再对该合并值进行hash。用户在进行注册时,服务器随机生成一个随即长串值作为盐,将盐加入到词组中然后对该词组进行hash,即可将盐融入到key里面了,加了盐的用户名和密码更进一步增强了其抗破解的能力。
在进行密码修改时,将新密码和用户名合在一起组成一个词组,对该词组进行hash,得到一个新的key值,将该key值存储在key-set表中,不需要将旧密码所对应的key值进行删除。
为了进一步对key-set表进行保护,可以在所述服务器上建立独立的数据库存放key-set表,或者将key-set表存放在单独的服务器上。
在实际应用中,采用上述密码设置方式还是有极小的存在被攻击者破解的 风险,破解者可以通过得到用户名后,通过猜想密码的方式到key-set表中进行比对,但采取这种方式破解密码锁花费的时间和成本都较大,为了进一步增大破解的难度,增加破解者的成本,在key-set表中填充入无用的数据,将key-set表故意撑大,攻击者并不知道在key-set中哪些是有用数据哪些是无用数据,即可进一步增加破解的成本和难度,从而进一步降低了破解的风险。
当用户遇到忘记密码的情况时,可以通过短信、邮箱等方式来证明该账号的所有权,当通过认证后,账号的所有者即可进行新密码的设置了,在设置新密码时通常采用加盐设置的方式,目的是为了避免用户今后重新想起旧密码后,出现新旧密码能够同时认证通过的情况。在进行加盐设置后,由于盐为随机产生的数据串,因此新密码所对应的key与旧密码所对应的key必然不同。
上述具体实施方式不能作为对本发明保护范围的限制,对于本技术领域的技术人员来说,对本发明实施方式所做出的任何替代改进或变换均落在本发明的保护范围内。
本发明未详述之处,均为本技术领域技术人员的公知技术。

Claims (8)

1.一种对抗密码破解的密码设置方法,其特征在于:将用户提交的用户名存储在服务器的资料表中,将用户提交的用户名和密码合在一起组成一个词组,对该词组进行hash,得到一个key值,将该key值存储在key-set表中。
2.根据权利要求1所述的一种对抗密码破解的密码设置方法,其特征在于:所述用户词组为用户名、密码和盐。
3.根据权利要求1所述的一种对抗密码破解的密码设置方法,其特征在于:对所述词组进行hash的方法为分别对用户名和密码进行hash,然后将用户名的hash值和密码的hash值合并在一起,再对该合并值进行hash。
4.根据权利要求2所述的一种对抗密码破解的密码设置方法,其特征在于:对所述词组进行hash的方法为分别对用户名、密码和盐进行hash,然后将用户名的hash值和密码的hash值合并在一起,再对该合并值进行hash。
5.根据权利要求1或2所述的一种对抗密码破解的密码设置方法,其特征在于:在进行密码修改时,将新密码和用户名合在一起组成一个词组,对该词组进行hash,得到一个新的key值,将该key值存储在key-set表中。
6.根据权利要求1或2所述的一种对抗密码破解的密码设置方法,其特征在于:在所述服务器上建立独立的数据库存放key-set表。
7.根据权利要求1或2所述的一种对抗密码破解的密码设置方法,其特征在于:将key-set表存放在单独的服务器上。
8.根据权利要求1或2所述的一种对抗密码破解的密码设置方法,其特征在于:在key-set表中填充入无用的数据。
CN201710281996.1A 2017-04-26 2017-04-26 一种对抗密码破解的密码设置方法 Pending CN107104787A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710281996.1A CN107104787A (zh) 2017-04-26 2017-04-26 一种对抗密码破解的密码设置方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710281996.1A CN107104787A (zh) 2017-04-26 2017-04-26 一种对抗密码破解的密码设置方法

Publications (1)

Publication Number Publication Date
CN107104787A true CN107104787A (zh) 2017-08-29

Family

ID=59657654

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710281996.1A Pending CN107104787A (zh) 2017-04-26 2017-04-26 一种对抗密码破解的密码设置方法

Country Status (1)

Country Link
CN (1) CN107104787A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107948152A (zh) * 2017-11-23 2018-04-20 腾讯科技(深圳)有限公司 信息存储方法、获取方法、装置及设备
CN108650210A (zh) * 2018-03-14 2018-10-12 深圳市中易通安全芯科技有限公司 一种认证系统和方法
CN109391474A (zh) * 2018-12-25 2019-02-26 武汉思普崚技术有限公司 一种非加密链路的安全认证方法及系统
CN110990809A (zh) * 2019-11-26 2020-04-10 卓尔购信息科技(武汉)有限公司 一种基于工作量的密码加盐验证方法及系统
CN111917535A (zh) * 2020-06-30 2020-11-10 山东信通电子股份有限公司 一种数据加密存储方法、装置及服务器

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101459516A (zh) * 2009-02-20 2009-06-17 浙江工业大学 一种动态口令安全登录方法
CN102222188A (zh) * 2011-06-09 2011-10-19 昆明有色冶金设计研究院股份公司 一种信息系统用户密码的生成方法
CN103139136A (zh) * 2011-11-22 2013-06-05 阿里巴巴集团控股有限公司 一种密码的管理方法和设备
CN103973651A (zh) * 2013-02-01 2014-08-06 腾讯科技(深圳)有限公司 基于加盐密码库的账户密码标识设置、查询方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101459516A (zh) * 2009-02-20 2009-06-17 浙江工业大学 一种动态口令安全登录方法
CN102222188A (zh) * 2011-06-09 2011-10-19 昆明有色冶金设计研究院股份公司 一种信息系统用户密码的生成方法
CN103139136A (zh) * 2011-11-22 2013-06-05 阿里巴巴集团控股有限公司 一种密码的管理方法和设备
CN103973651A (zh) * 2013-02-01 2014-08-06 腾讯科技(深圳)有限公司 基于加盐密码库的账户密码标识设置、查询方法及装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107948152A (zh) * 2017-11-23 2018-04-20 腾讯科技(深圳)有限公司 信息存储方法、获取方法、装置及设备
CN107948152B (zh) * 2017-11-23 2021-05-14 腾讯科技(深圳)有限公司 信息存储方法、获取方法、装置及设备
CN108650210A (zh) * 2018-03-14 2018-10-12 深圳市中易通安全芯科技有限公司 一种认证系统和方法
CN109391474A (zh) * 2018-12-25 2019-02-26 武汉思普崚技术有限公司 一种非加密链路的安全认证方法及系统
CN110990809A (zh) * 2019-11-26 2020-04-10 卓尔购信息科技(武汉)有限公司 一种基于工作量的密码加盐验证方法及系统
CN111917535A (zh) * 2020-06-30 2020-11-10 山东信通电子股份有限公司 一种数据加密存储方法、装置及服务器

Similar Documents

Publication Publication Date Title
CN107104787A (zh) 一种对抗密码破解的密码设置方法
US8955076B1 (en) Controlling access to a protected resource using multiple user devices
CN104065652B (zh) 一种身份验证方法、装置、系统及相关设备
US20170085561A1 (en) Key storage device and method for using same
CN103517273A (zh) 认证方法、管理平台和物联网设备
CN103684758B (zh) 一种用户密码混合加密的方法及系统
CN111163107B (zh) 一种zigbee的安全通信方法及系统
US20080155669A1 (en) Multiple account authentication
CN110933053B (zh) 一种基于can通信加密的授权方法
CN105515781B (zh) 一种应用平台登录系统及其登录方法
JP6230728B2 (ja) ネットワーク情報セキュリティの確保用システムアーキテクチャ及び方法
CN106453321A (zh) 一种认证服务器、系统和方法及待认证终端
CN112272095B (zh) 一种实时通信的分布式密钥分发方法及系统
CN105743860A (zh) 一种字符转换的方法和设备
CN103501223B (zh) 一种电子产品码的访问控制系统及其访问控制方法
CN105721560B (zh) 统一会员中心用户登录密码安全存储系统及方法
Bo et al. Usable security mechanisms in smart building
CN104298905B (zh) 一种基于两级转换的口令输入方法及系统
CN106600788A (zh) 一种用于密码锁的实现时间数据安全交互的方法
CN104125241A (zh) 一种验证密码的方法
CN109412754A (zh) 一种编码云的数据存储、分发以及访问方法
CN113055973A (zh) 一种电子设备热点共享的方法
JP2013097661A (ja) 認証装置及び認証方法
JP6080282B1 (ja) 認証処理システム、認証補助サーバ及びウェブ表示プログラム
CN110570546A (zh) 一种电子锁的加密方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20170829