能力值:
( LV1,RANK:0 )
|
-
-
2 楼
欢迎讨论,此法能确定密码位数,使用较长的密码。
|
能力值:
( LV3,RANK:20 )
|
-
-
3 楼
可惜有点短啊,没看够。
|
能力值:
( LV4,RANK:40 )
|
-
-
4 楼
道理就是一点点,实际就是强制使用超长位用户密码而已。
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
长密码,可以设置。但是,怎么保存?人为记忆可能性不大。只能靠第三方软件来保存了。那么这些密码统统在一起,安全性怎么保证?除非你使用密码字典。一个非常庞大的字典。
|
能力值:
( LV4,RANK:40 )
|
-
-
6 楼
不要误会,默认的长密码是程序设定的,用户输入的数据只是很少的字符,也好记忆,程序在收到用户输入后,利用这少量的数据,去改造默认的长密码,并将改造后的数组作为用户密码用于加密。这样就实现了少量输入字符而使用大量数据作为密码的目的。
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
嗯。这个思路不错。
|
能力值:
(RANK:190 )
|
-
-
8 楼
LZ的意思大概是:拿用户输入的口令(哪怕很简单),用一个确定性算法,算出一个看似较长较乱的结果,然后拿这个结果当做密钥,继续后面的操作 是吗? 如果是这样的话,攻击者会觉得这个结果是难猜的; 但是如果中间这个“确定性算法”是公开的,那么攻击者就可以直接攻击用户输入的口令即可
而且,如果口令的验证过程是攻击者可以反复高效使用的,那么不论这个确定性算法有多么复杂,攻击者对用户输入口令的尝试难度是不变的
|
能力值:
( LV4,RANK:40 )
|
-
-
9 楼
不存在 【口令的验证过程是攻击者可以反复高效使用的】,程序不做口令正误的判断,如果尝试口令覆盖了真正的口令,你也需要自己将其找出。 举例说明: 例如定义:从用户口令算出一个rand()种子,然后用rand()后面的100字节作为用户密码,程序用这100个字节衍生出密钥数组加密信息,解密也是一样 。所有操作离不开这100字节,若穷举攻击可以用它们的组合试试和用口令是等效的。
|
能力值:
( LV4,RANK:40 )
|
-
-
10 楼
确实有单一入口被动的问题。可以设几个默认的候选加长密码,有单选按钮控制,这样就主动多了,穷举攻击成功的可能性将趋于零。
|
能力值:
( LV5,RANK:78 )
|
-
-
11 楼
主要 实际应用环境中 除保密单位需要 不然 没人会这样 太麻烦...不如找个简单的办法记住长密码..比如我的..百度一下.你就知道 Bdyx.Njzd.zdnm13 - -
感觉这个思路 就和 我在数据库中储存用户MD5,用户使用简单密码 中间存在算法.但是,不影响我碰撞...如果,此方案用在网页后端..那么不影响我post猜解..如果此方法 用在前端..不影响我直接扒JS... 应用在软件中 也是同理...不太知道应用环境..望举例.
最后于 2019-10-9 11:55
被bambooqj编辑
,原因:
|
能力值:
( LV4,RANK:40 )
|
-
-
12 楼
上面说的不影响这个不影响那个是没有用好。方法的本质是使用少量输入数据,去控制大量的数据,就是用少量的数据实现对大量数据的非线性变换,例如受控的随机排序等,变换后的数据可以有多种用途,这里是作为代替用户输入大量密码。
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
我想了想,这个想法不切实际。 首先你有一个常量A,然后通过各种算法得到口令X,再用X做其它的操作。那么,从你的常量A开始就全完蛋了。因为这个A是非常简的,如果使用暴力破解,我们就不关心你的算法是什么,只需要专心破解A就可以了。
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
所以,回到问题点,那么生成的口令X,然后验证X的过程,是否可以使用Auth2来做呢?即使使用Auth2,也避不开第一口令的存在
|
能力值:
( LV2,RANK:10 )
|
-
-
15 楼
感觉除了使用密码矩阵之外没什么好办法了存储A了
|
能力值:
( LV4,RANK:40 )
|
-
-
16 楼
默认密码部分你可以认为它是一个相当规模的数组,它可以是多个备用,这个是程序设定的,也就是公开对破解者来说是公开的,当有用户输入了少量的密码后程序将根据密码的内容,从几个默认密码数组中选择一个,并对这个数组进行彻底的改造,生成新的数组直至生成密钥数组完成加密或解密。
|
能力值:
( LV3,RANK:20 )
|
-
-
17 楼
假如我需要加密一个文件,我就喜欢12345这个密码 于是我输入12345,你给我rand()成了100字节的符号去加密 那么问题来了 我需要解密的时候用什么密码? 解密需要的密码谁来告诉我?
|
能力值:
( LV4,RANK:40 )
|
-
-
18 楼
也许程序有几个默认密码供你单选,例如你选择了其中一个,程序将使用你的输入12345对这个默认的100字节密码进行改造形成新的数组,并以新数组为用户密码进行加密。 解密时你的密码仍然是12345,加上你的默认密码选择。
|
能力值:
( LV2,RANK:10 )
|
-
-
19 楼
这不就是我输入123,程序md5存起来了么。。。
|
|
|