Template:User committed identity/sandbox
这是Template:User committed identity(差异)的沙盒。 |
模板参数
无描述。
参数 | 描述 | 类型 | 状态 | |
---|---|---|---|---|
散列数值 | 1 | 无描述 | 未知 | 必需 |
散列函数 | 2 | 无描述
| 未知 | 推荐 |
背景颜色 | background | 无描述
| 未知 | 可选 |
边框颜色 | border | 无描述 | 未知 | 可选 |
邊框闊度 | border-width | 无描述
| 未知 | 可选 |
额外CSS样式 | extra-style | 无描述 | 未知 | 可选 |
冠词 | article | 无描述 | 未知 | 可选 |
模板說明
{{User committed identity |散列值 <!-- 必填。可以使用汉字、英文字母、数字或英文标点符号等 --> |散列函数 <!-- 選用。預設為SHA-512 --> |background= <!-- 選用。背景HTML色彩 --> |border= <!-- 選用。邊框HTML色彩 --> |article= <!-- 選用。用其他冠词取代“一份”--> |border-width= <!-- 選用。框闊度預設為1--> }}
範例如下:
{{User committed identity|cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e|SHA-512|background=#E0E8FF|border=#aaa|article=一个|border-width=5}}
说明
此模板可用于证明您的身份,例如证明账号的相关操作是您本人所为,或者在账号被盗后证明账户的所有权。填入散列值即可使用。
為何需要?
本模板的預期作用是用來幫助帳號遭竊取的人,但願這種事情不會發生。
如果您用自己的帳號公开了真实身份,而如果帳號被盗您的身份就可以用来和您的朋友重新建立联系。需要记住的是,这种情况下您并不能通过自己的帳号和朋友建立联系,因为帳號可能被他人控制了。但是,一些维基百科的用户并没有透露自己的真实身份或只透露了一点点,这就很难重新证明自己的身份。
除了拥有一个強力密碼或为您的帳號注册电子邮箱地址外,并没有什么可替代的方法。您仍应尽自己所能来防止帳號被利用,包括使用強力密碼及使用公共电脑时记得退出帳號。如果您能做到的话,公开自己的PGP公钥也是有一定用处的。但是即使您做得再好,帳號仍然有可能被盗,如通过特洛伊木马或对您的密码进行暴力破解。使用这个模板就可以为您留下最后一线希望。
如何使用
本模版主要的概念是使用密碼雜湊技術。您需要先選擇一個只有本人知道的密碼字串,再經由單向的密碼雜湊功能編譯這個密碼字串以得到一組亂碼,最後使用此模板公開此編譯好的密碼字串。由於密碼雜湊技術保證沒有一個人會輕易地將亂碼解譯回自設的密碼字串,因此,未來當遇到帳號被洩漏等不幸事件時,如果您可以提供原先的密碼字串,且此密碼字串經過相同密碼雜湊算法處理後與您之前提供的雜湊值相等,即可十分有力地證明您是此雜湊字串的提供者。
選擇合適字串
- 您所使用的字串应该不容易被猜测。如果您并没有公开自己的真实身份,那么任何和您真实身份有关的字串都会是好的字串。如果您曾经公开过自己是谁,您就需要用更多不容易被猜到的信息。如果您使用的字串容易被猜到,那么别人也可能会知道您的字串是什么。
- 您的字串应该和您的身份有一定关系。如果这个字串被人知道,您也可以明白地证明您和这个身份的关系。例如,您的字串可以包括您能拿到的电话号码和邮箱地址。
- 不要选择很快就不能证明您身份的字符。例如,当您可能要换电话号码时将现有的号码作为字串就是一个不好的选择。
- 如果您想更换字串,那就换吧。但您应该追溯自己作为密码使用过的老字串。如果您想进一步证实自己的身份,最好把它们全部公开。这就可以证明您是从这个身份一公开就使用自己账号的同一个人。
- 您的字符不应该太短:至少要有15个字符。一个精心的攻击者会使用暴力破解来尝试所有字符,直到他们猜到您用的字串为止。但如果您的字串足够长,攻击也要花费更长的时间。如果您的字串达到15个字符,同样长度的字串会有1027个,也就是1千秭(这还只计算了只带空格和字母的字串)。
- 对于类 UNIX 系统用户,可以使用 /dev/urandom 之类的随机文件并用 dd 工具截取一部分内容 (例如:
dd if=/dev/urandom of=目标文件 bs=4096 count=1
) 并保存妥当。考虑到内容的杂乱性,这样的字串最好 base64 后发送给验证者让验证者解密再验证或者干脆直接以文件形式发送。dd
在经过Root的Android中安装的Busybox里一般也可以找到,将命令中dd
替换为busybox dd
即可使用,亦可通过安装Termux来使用dd
,此方法无需root。 - 如果您有一套 PGP 系统,例如 GnuPG,您也可以使用公钥指纹,并将公钥放在用户页的子页面处,按照#使用PGP的方法进行验证。
取得雜湊
使用Fastily的浏览器工具或计算机上的软件,如GNU核心工具组中提供的sha512sum
。不建议使用其他在线哈希生成器,因为它们不在维基百科的控制范围内,不应将您的秘密字符串交给它们。
使用
如果要向别人提交自己的身份并证明自己就是最初开始使用这个账号的人,把最早用来计算的准确密码串交给一个可靠的用户。他们可以用相同的字串计算得到适当的hash值,并证明您就是自己宣称的那个人。
一旦您证明了自己的身份并建立了新的账号或获得原始账号的控制权,您可能要重新创建一个hash值,并将密码串告诉某个人(可能很多人信任他且您曾经告诉过他密码串)。
使用PGP
对于一个 PGP 密钥,需要证明您能够使用所提供公钥对应的私钥,且需要一定时效性保证。PGP 程序的使用方法请参考GPG。
声明所有权
PGP 可以对一个消息进行有时间戳的签名,因此可以有效证明身份。
对于类UNIX系统用户,可以使用以下命令生成签名(将 ${USERNAME}
换成用户名,${DATE}
换为出现异常行为的日期):
echo "此处我(依照 PGP uid 所示的用户)在此声明账号${USERNAME}为我所有,且于${DATE}开始被盗用。" | gpg --clearsign
PGP 的签名中会带有时间戳,因此并不一定需要指定时间($(date)
)。
如果您使用Windows,可以创建一个类似内容的文本文件,或者通过Cygwin等环境处理。
接下来可以将生成的信息通过电子邮件发送。
验证消息
如果您之前并没有交换过公钥,可使用 gpg --import
或类似命令导入,但请务必检查这个公钥与被盗用日之前所提供的公钥指纹匹配。
接下来您可以使用 gpg --verify
或类似功能进行校验。请务必确认签名时间正常。除此之外,您也可以每次都额外要求声明者签名您所指定的随机字符串给您,来保证安全性。