考虑一个年幼(小学年龄)的孩子,他开始收集在线服务的密码。父母(或同等学历)如何帮助他们管理密码?

一个使情况更清楚的示例:我的女儿可能想从多个位置登录http://scratch.mit.edu/向家人展示她的项目的设备。她也有几个电子邮件地址,她可能很快就会在监视下使用自己的一个电子邮件地址。虽然她自己的设备将被登录,但是她可能需要其他人的访问。

到目前为止,我已经为她做好了这件事:我知道她的密码和(假名)用户ID,并将其存储在我的设备中KeePass。在这个阶段这是适当的,但是如果她在没有我的情况下需要他们,也无济于事(例如,以明文形式将登录详细信息发送给祖父母)。从坚持将您的登录详细信息保密的一般规则的角度来看,还应该有一种不需要我拥有这些详细信息的解决方案。记住一个非常强的主密码可能要问很多,而且她很可能会浪费任何物理存储空间。

我喜欢提前计划,因此向前迈进:对于年轻人来说,最好的方法是什么,相当聪明的孩子,可以确保登录名的安全并在更重要的帐户之前训练好习惯?

评论

总体上,我们在密码管理方面存在很多问题,但我认为我们没有处理针对儿童的特定方面:培训和他们是儿童的事实。

好问题!您在考虑哪种年龄范围?

@Anders我们的编辑越过了,但我添加了一个故意含糊的“主要年龄”。就我而言,它的前半部分-她有点年轻,但是开始喜欢它

@ChrisH“小学年龄”在不同国家可能表示不同的意思。如果您可以指定年龄范围(以年为单位),那就太好了。

@ChrisHayes的初等教育总是指入学后的头几年。定义各不相同,但5-10年的范围是具有代表性的,并且我想成为具体范围

#1 楼

也许给孩子们的课应该少讲一些如何使用工具来管理密码,而更多的是了解为什么要管理密码很重要?尝试设计一种迷惑方法,以防笔记本丢失。教他们有关备份的知识-将副本保存在安全的地方。根据我的经验,在密码(误)管理方面,孩子和老人非常相似。

直到他们足够熟练地管理自己的密码数据库,我还将孩子的登录信息保存在“家庭KeePass”。家庭成员年龄较大的人就是这样-因为人们会死亡,有时您需要为否则无法承受的人们找回东西。家庭群体中的信任/风险计算与工作或社交圈子中的不同。共享密码访问权限和共享密码之间也有区别。

真想早点考虑。祝你好运!

评论


我不知道为什么这会被否决...可能是因为建议写下密码。虽然不是很好的建议,但这也不是最坏的建议,并且比重用密码好几个数量级。尤其是在密码被混淆的情况下。 (希望孩子不是州级演员的目标。;-)

– Ghedipunk
19年8月1日在15:52



@Ghedipunk的混淆可能会有些乐观,孩子们很容易丢东西(并试图解决朋友笔记本中的难题,以防不明智的恶作剧)。但是,对一点的怀疑并没有对我造成负面影响(实际上为+1)

–克里斯H
19年8月1日在16:32

只要有安全保护,通常存储硬拷贝是个好主意。这是现实世界的缓解。像后门一样,每个人都反对它,但是意识到它的必要性。没有密码,没有“英里”。

–mckenzm
19年8月2日,0:14

@mckenzm完全不同于后门。从定义上说,后门几乎是坏的。您可能正在考虑将钥匙交给朋友的前门之类的方法。通常,在评论中提出不相关的主题也很不好,因为那样的话,我这样的人会感到需要不同意(而不是仅仅批评您的观点,写下密码在某些情况下是个好主意)。

–没人
19年8月2日在10:47

与XKCD有关的写下密码。

– Draco18s不再信任SE
19年8月2日在16:56

#2 楼


要记住一个非常强大的主密码可能要问很多


我不同意!我有一个女儿,大约7岁时,她可以使用Diceware方法快速记住一个非常强壮的密码,以便在密码管理器中使用。此方法从词典中(通常)从7776个单词组成的单词中选取几个随机单词。 log2(77769)≈116位仅为9个字。

如果您使用通过PBKDF2之类的算法支持密码加强功能的密码管理器,则可以进一步减少密码长度。使用262,144(218)个哈希迭代,可以将6个字符的密码的安全性提高到log2(77766)+ 18≈96位。密码示例:

octopus handrail chasing hull shy ambition


不难记住!它确实需要一些练习,而且不如只用一个或两个单词或一个宠物的名字来记住一个弱密码那样简单,但这是一个孩子,甚至是幼儿都能做到的事情。一些密码管理器支持多个等效的主密码,使您可以保留备用密码,直到您确定女儿不会忘记她的密码为止。然后,您可以撤消自己的密码,这样就不必不必要地访问她的密码。
如果您不想同步密码数据库,则可以使用无状态密码管理器。这是一个密码管理器,它结合使用您要登录的服务的标识符和单个强主密码。无状态密码管理器通过散列主密码和服务标识符的串联来工作。但是,它也有一些缺点:


您不能在不更改标识符或主密码的情况下更改站点密码。
如果您的主密码曾经被泄露,那么也是如此。您所有的站点密码。
主密码必须足够强大以抵抗自身的攻击。<​​br />
如果仅仅依靠存储设备保存密码数据库是不可接受的,那么无状态密码管理器绝对是正确的选择。如果使用正确,它们将非常安全。

评论


对于幼儿而言,最难的部分是始终拼写比词典所用词汇量更大的词汇。

– jpaugh
19年8月2日在19:04

尽管如此,讲授概念可能比确保其安全性更重要-类似于牙医在与儿童打交道时所采取的策略。

– jpaugh
19年8月2日,19:07



@jpaugh使用单词代替符号而不是字符的好处是,如果他们忘记了如何拼写,他们总是可以使用拼写检查或字典。如果您忘记了使用哪个特殊字符或该字符在哪个位置,那么将其与“传统”密码进行比较会很不幸。

–森林
19年8月3日在7:23

这是正确的答案。马,电池和钉书钉同意

–Machavity
19年8月3日在14:52

您可能希望从EFF中寻找比传统骰子词更适合儿童使用的词表,或者从“基础英语”或早期教育词表中构建自己的词表。好消息是,孩子们可能没有很多高价值账户。您可以使用比成人时用于更多高价值帐户的单词列表更短的单词列表来教授适当的技术等。

–本
19年8月6日在16:33

#3 楼

如果您不拥有“从多个设备登录”,则出于一般安全性的考虑,必须停止这种习惯。

一旦拥有了该场景中的所有设备,我发现对年轻人有用的一种方法是完全避免使用密码:使用“忘记密码”过程。

如果设备归设备所有,并且可以通过设备访问电子邮件,则只需请求密码重置链接并使用该链接即可。没什么可记住的。

另一种方法是使用在线家庭密码管理器(例如,LastPass具有此功能)。此功能是专门为解决此问题而设计的,但是它需要一定的成本,并且您可能不喜欢云存储和多设备同步。但是拥有它并为您的孩子进行管理可能是值得的。

您还可以教一个强密码模式。是的,模式有一个固有的明显漏洞,但这是您进行个人风险评估时可以考虑的一种方法。

我自己是“密码重置”过程的粉丝。

评论


多种设备-即使我们仅限于直系亲属(即那些管理她的设备的人)也是如此。我将向可信任的(由我和她)成年人完全开放使用她的设备(例如祖父母)的成年人开放。将其限制在此范围之外是毫无意义的妄想症,并且与有关儿童人身安全的建议不一致。您的一揽子声明仍然是不切实际的理想-“您必须在不超过24小时才能打印的设备上办理登机手续”的日子以及类似的愚蠢流程并未完全消失。

–克里斯H
19年8月1日在16:26

实际上,我的孩子登录祖父母的设备时遇到了一个大问题。仅仅因为他们完全控制了我孩子的设备,并不能使祖父母的设备受信任,安全或安全。

– schroeder♦
19年8月1日在16:51

@schroeder我认为这是“您的威胁模型是什么?”问题。您担心的途径是“祖父母的设备受到损害->儿童的帐户受到损害->某种形式的损害”吗?显然,这对您来说是一个问题,这很好,但并不是每个人都关心,尤其是考虑到可能将密码泄露给孩子的Scratch帐户而造成伤害的风险很小。而且必须根据价值(与家人分享她的项目的乐趣)和替代风险(带给她使用的设备可能会损坏或丢失)来衡量这种威胁。

–扎克·利普顿(Zach Lipton)
19年8月2日在2:44

不要依靠被遗忘的“密码处理”。在我采取行动之前,我总是忘记了一个特定电子商务网站的信息,并且在重设了几次密码后,由于我看起来像是安全隐患,他们威胁要禁止我。我变聪明了,开始使用keePass。

– Neil_UK
19年8月2日在7:12

@schroeder如果学校禁止使用移动设备,并且孩子在回家之前开始新的一天,然后再去找祖父母,则他们无法带上自己的平板电脑。这很常见,在照看孩子时物理硬件的丢失/被盗/损坏也很常见。您是否声称从不使用雇主提供的机器(“您不拥有的设备”的典型示例)登录任何个人帐户?那是一个极端的立场,距离我对风险的界限还很远。我可能会在单个高价值硬件上冒险一些低价值帐户

–克里斯H
19年8月2日在7:41



#4 楼

现在我不确定我是否正确,但是我认为向孩子们教授基本的记忆法对我来说似乎是一个绝妙的主意。这项技能将帮助她终生,也有助于避免写下任何密码和低熵密码。考虑一个10位数的乱码,例如1kej@!lej2。如果您只是使用密码字符编造了一个故事,则可以很容易地记住这一点。老实说,施罗德的建议似乎也不错。您也可以及时地教她“如何生成具有足够熵的密码”并使用密码管理器。在此之前,助记符应适合孩子。他们有生动的想象力。

编辑:我写的答案是错误的。助记符部分是正确的,但我选择的密码不够长或难以记忆。这个问题将详细讨论数学和可用性问题。一个更好的方法是森林在他的回答中所写的方法。

评论


这是一个不错的主意,并且可以使用一些密码,但是我记得不多。鉴于人们获得了多少密码,期望这种方法能够持续很长时间似乎是乐观的。

–克里斯H
19年8月1日在16:34

“记住一个非常强的主密码可能要问很多。”实际上我对此评论很多。但是您正确地记住了30-35个难忘的密码,即使使用助记符也是很难/不可能的。

–yeah_well
19年8月1日在16:36

我强烈建议不要使用难以记住的弱密码,特别是对于孩子来说,而要使用diceware方法。

– RedBorg
19年8月2日在16:03

@forest的答案更明智/适合年龄

–乔治M恢复莫妮卡
19年8月2日在16:59

那个乱码让我想起了xkcd.com/936

– multithr3at3d
19年8月3日在16:43

#5 楼

伟大的问题/话题,并且如果密码“管理”的定义在此还包括“密码生成”,我将提供一个Python程序或类似程序,该程序只需几行代码即可生成各种长度的密码安全密码,并向其显示如何在需要强密码的时候轻松地运行该程序。 (因为我认为这是比每次都考虑使用强密码更好的习惯)。

这是我构建的一个基本示例,该示例使用Python中的secrets模块和64个字符的库进行加密安全:https://github.com/hatgit/hatnotation/blob/master/Hatnotation- Password-Generator.py

但是,这类“安全”密码看起来像一串机器可读的代码,因此很难轻易记住,除非将基础二进制代码转换为助记词,以便轻松写下来。

我还构建了一个编码器/解码器(称为Hatnotation的符号系统),并使用以上兼容的密码生成器进行教学,可以将基础二进制代码粘贴到助记码转换器中,如下所示:

使用Hatnotation密码生成器,从64个字符的范围(其中64 ^ 22 == 2 ^ 132)的安全性/熵位生成随机的22个字符的密码:}FT}:+3'Z;:BB,LY^>EOPF

表示这些22个字符的基础132位二进制文​​件(非ASCII,这些是Hatnotation编码的字符:) 010111000100111100011011111011011001000010110100010100010011111001011111111100010101110000010111101011100110101100011100100001011101

根据BIP39英文单词表将132位转换为助记符(不包括校验和,并且可以替代@Forest提供的Diceware选项),使用可独立运行的脱机助记符转换器:

shaft mistake rent bird eye very wisdom return kit culture improve ritual

另一种方法是教他们如何使用命令行或代码编译器生成二进制或十六进制格式的熵(这比翻转硬币快),以及如何根据所使用的单词表将此类二进制粘贴到他们选择的助记符转换器(即使这是他们自己的自定义单词表)。在Python中,使用内置的secretsuuid4()os.urandom模块有几种安全的方法。

P.S.在存储/密码托管检索方面,如果密码保存在浏览器的本机管理器中,并且存在从公共或其他可能不安全的位置登录浏览器(即Google Chrome)会话以访问密码的担忧。登录到Scratch.Mit.edu网站等服务,我认为添加2FA应用(例如Google Authenticator)(假设年轻人拥有手机或兼容设备,即使它处于离线状态)也可以降低使用这些密码的风险如果登录信息遭到破坏,则被对手访问。

评论


-1关于儿童密码管理的问题不是推广自制密码生成器脚本的地方。 -1建议教孩子“使用命令行或代码编译器以二进制或十六进制格式生成熵”似乎没有任何意义。 -1“ Hatzakis Base 64”为什么要使base64成为另一个变体?!

–吕克
19年8月6日在13:25

你在哪里看到自制的?所有软件在某种程度上都是受信任的,我提到Python中的secrets模块是加密安全的。我注意到的记号系统是出于教育目的,我列出了替代方法。我们可以同意不同意,我想我的回答增加了一些好主意,也许有些不适用于所有情况。这也是意见和风格的问题。教孩子使用命令行或编译器生成熵对您来说没有什么意义?成人甚至应该做的事情。

–史蒂芬·哈扎基斯(Steven Hatzakis)
19年8月6日在13:49

同样,问题的结尾指出:“对于一个年轻而聪明的孩子,最好的方法是在更重要的帐户之前保持登录安全并培训良好做法,这是什么?”因此,我认为我添加的内容并不太遥不可及,尤其是随着孩子们变得越来越精通计算机。

–史蒂芬·哈扎基斯(Steven Hatzakis)
19年8月6日在13:54

“为什么要使base64成为另一个变体”-打开hatgit / hatnotation#9来解决这个问题

–埃里克
19年8月19日在23:40