如何:生成高强度的密码

From Nxt Wiki
Jump to: navigation, search
This page is a translated version of the page How-To:GenerateStrongPassword and the translation is 100% complete.

Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎italiano • ‎português do Brasil • ‎русский • ‎українська • ‎中文(简体)‎

1 我应该用多长的密码才安全?

理论上应该混合使用大小写字母、数字和特殊符号,长度在30个字符以上。甚至可以使用非英文字符。

越长越安全更多样的字符组合,更不易读懂同样使密码更安全。越没有规律的密码越安全。

2 30个字符??!? 真的要那么长吗?

对于其它的应用,也许的确太长了。但是Nxt的工作方式不一样。

对于大部分其它应用,攻击者只能每次尝试侵入一个账户。聪明的攻击者不会随机尝试密码,他们使用准备好写有密码和哈希值的的表(这种表叫彩虹表),如果账户的密码在这张表里,就会被侵入。

随着技术的发展和处理器速度的提高,攻击者可以准备越来越长的彩虹表。创建安全密码的关键是要走在处理器速度增长曲线前面,避免密码过于简单被包括在彩虹表里就可以躲避这类攻击。

很多应多都是这样,攻击者只能同时攻击一个账户。比如银行、e-mail、网上商城的账户。对于这样的应用,15个不同种类字符,并且不可识别的密码目前就很安全了,超出了攻击者可能收入进彩虹表的长度。

Nxt的工作方式不同。Nxt登录不需要用户名或钱包文件,只使用一个密码,这就允许攻击者在同一时间尝试所有的账户,增加成功的可能性。每个账户的余额组成巨额的奖池,攻击者有足够的动机使用大量资源扩展彩虹表。创建一个新账户,或者登录时输错了密码的行为也像“攻击”一样。

但是攻击者做这些需要很多时间,所以15个多变化的字符仍是安全的。但技术、攻击者数量和Nxt用户的数量都会不断增长,长远来看15个字符不足以保证安全。另一个原因是密码不能改,如果你不想经常创建更强密码的新账户,并将资金转过去的话,强烈推荐30个字符以上的密码。

3 如何做我才能得到一个非常强的密码?

很简单,下载Google's Awesome Password Generator :http://code.google.com/p/awesome-password-generator/ 。对于NXT来说,选择一个50字符长度的密码。认真地写下来,5个字符一组共10组,手动输入。不要使用剪贴板或复制和粘贴。

对于NXT,最大的敌人是键盘记录病毒。如果你拥有大量NXT,不要相信杀毒软件。如果可能的话,在一台多余的旧电脑上安装全新的操作系统,并用他来操作和查看Nxt客户端界面,不要用它去浏览网页。

4 如何得到一个强壮但又好记的密码?

不可读的密码太不方便了!但是我们用长度换取可读性,依旧保持密码的强度。我们可以用个人经历和知识创建让自己理解密码,但对于入侵的人不行。

这里举例说明如何创建一个强壮的密码。我们将分为几步。

我用我女儿的生日聚会相关的东西作为密码,就是

Tammy'sbirthdayparty

一个像样的开始,有大写字母和一个特殊字符。但是主要由英文单词组成,并且不够长。我们来加强它

Tammy's18thbirthdayBIGparty

现在有了更多的变化。我们需要更长一些,聚会上有什么难忘的事情吗?

Tammy's18thbirthdayBIGpartyDroppedpresentinpool

47个字符,是一个好密码。也是可读的,我们以增加长度作为了补偿。

如果我想要额外的安全性,我尝试想一些聚会以外的事情

Tammy's18thbirthdayBIGpartyDroppedpresentinpoolCollegesoon:(3yearsislong

或者把常见的单词用只有自己知道的独特事情替换

Tammy's18thbirthdayBIGpartyDroppedknittedshibesweaterinpool

你不应该仅依靠记忆。记忆方便但有可能出错。把密码写下来存到只有你能找到的安全的地方,是个不错的主意。

5 其它方法

以上只是个例子,还有很多其它方式生成强壮而可读的密码。在安全性和好记亿好输入之间做好平衡很重要。

  • Diceware - 用掷骰子生成密码!没有计算机程序参与,所以你不用担心黑客程序偷走你的密码。

6 快速提示

6.1 可以做的

  • 使用多种语言是个提高密码强度的好方法。Nxt的密码允许包含任何unicode字符。
  • Nxt支持密码中有空格,利用这点增强密码的可读性。

6.2 不要做的

  • 避免使用你在别处看见的东西作为密码,像"going to the moon"。建立彩虹表的人写程序在互联网上寻找这样的短语,所以无论多长,这样的密码没有比单个词更强。
这里有个例子为什么你不应该这么做
  • 避免看起来随机但事实上有规律的密码。比如,qazwsxedcrfvtgb并不随机。如果你在使用常见的QWERTY键盘,输入上面密码时看一眼按键就明白了。如果你使用有简单规律的密码,你应该可以想到别人也会尝试这些想法去入侵。

7 使用密码管理器

密码管理器存储你的登录信息,在需要的时候帮你自动登录。对于不同站点,生成随机且唯一的密码,所以不用担心在两个站点用相同的密码。使用一个主密码加密存储密码的数据库,你唯一要记住的就是主密码。这里有几个推荐:

  • KeePass Password Safe 免费流行的密码管理器,但没有自动备份选项。确保手动备份加密数据库,并在有变化时更新备份。
  • Lastpass. 可在 Firefox/Chrome/IE 中使用的密码管理插件。所以变更(包括历史变更)被备份在lastpass服务器。这第一眼看上去有点危险,但是所有的加密过程在本地完成。lastpass服务器只能看见一堆加密过的东西。在使用很强的主密码之外,还可以启用双重认证(2 factor authentication)。

LastPass explained by Steve Gibson

8 不好!我的密码太弱了!我应该怎么做?

第一件事是“不要慌张”!如果你还没有丢失任何nxt,在你创建新密码的几分钟内也不会有危险。考虑你要创建一个什么样的密码,是要好记但很长的,还是要超高安全但输入复杂的。在以上两类选择其一。

Nxt不允许变更密码,所以你需要新建一个账户,然后把你的nxt转过去。首先,使用新密码登录。它会自动创建一个新账户。写下你的新账号,复制到某个地方。

在转移你的nxt之前,你需要完全地确认你得到的是正确的账号。所以用新密码重新登录,看和你刚才写下的是不是一个账号。现在你有把握了,可以安全地把nxt转到新账户。

9 高级的考虑

为了明白什么样的短语有可能包含在彩虹表里,我们需要知道构造彩虹表时攻击者是怎么想的。

(这部分属于技术讨论并要用到数学公式。或许这部分没必要写在这里?)