Giter Site home page Giter Site logo

cfbao / chinese-diceware Goto Github PK

View Code? Open in Web Editor NEW
38.0 5.0 14.0 555 KB

Diceware word lists in Chinese

License: GNU General Public License v3.0

Go 47.14% QMake 0.15% C++ 52.70%
diceware passphrase password passphrase-generator chinese password-generator

chinese-diceware's Introduction

Diceware 中文词表

Diceware 五笔词表拼音词表,取词自《现代汉语常用词表》,分别使用五笔与拼音来编码汉字词语,可用于生成高强度、易记忆的 Diceware 密码。

Read this in English.

Diceware 简介

Diceware 是一种由 Arnold Reinhold 创造的生成密码短语的方法。使用 Diceware 需要一份词表和至少一个骰子。词表由7776 (=65) 个不同的单词构成,每个单词对应一个5位“骰子序号”(如 "46134"),每掷5个/次骰子便可选中一个随机的单词。掷30个/次骰子就能生成一个高强度的6词密码短语。由于每个单词有明确的意思,这样的密码短语通常比相同强度的由随机字符组成的密码更容易记忆。

最初的 Diceware 词表 是英文的,且生僻词较多,不易于中文母语者使用。之后多种其他版本/语言的 Diceware 词表陆续出现,但至2017年6月尚未在网上发现完整的中文词表,我便动手自制了这两份。

中文词表详情

  • Diceware 中文词表由三列构成,依次为 骰子序号 - 五笔/拼音编码 - 汉字单词,每列之间由 tab 隔开,相比拼音文字的Diceware词表要多一列。
  • 使用 Diceware 中文词表时,用 五笔/拼音 编码组成密码,中文汉字用于记忆。
  • 五笔词表完全由双字词语构成,对应的五笔编码全部为4个字符。
  • 拼音词表中的词语编码全部在3-6字符之间,平均编码长度5.54字符。
  • 两个词表的编码都构成 前缀码 (prefix code),因而在使用时无须在单词中另加空格或特殊字符。
  • 中文词表文件全部使用 UTF-8 编码。

8k词表 与 密码生成器

高敏感度的重要密码应当用实物骰子生成,但普通用户的普通密码在安全的计算机上用合适的程序生成也无大碍。不过,为确保计算机随机选词的均匀性,词表长度最好改为2的幂。五笔8k词表拼音8k词表 就是为这个目的而制作的。

基于这两个8k词表,我用 C++, Qtlibsodium 写了个跨平台、图形界面的中文密码生成器。选词的随机性由 libsodium 的随机数生成器 提供。
Windows 版的可执行文件可以在 release 页面下载。

文本来源

许可协议

所有词表(*.wordlist 文件)均内容按照 知识共享 署名 4.0 许可协议 发行。密码生成器的程序源码按照 GNU通用公共许可协议 发行。

chinese-diceware's People

Contributors

cfbao avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

chinese-diceware's Issues

提供一个人肉处理的拼音码表

前几日看到有人提码表错误的问题,我自己就做了一个。
历时5天,大约工作20个小时,目前共14449行,全部人肉确认。
希望被能接受。

处理后的文本.zip

另外:希望开发者提供64位和命令行版程序,并缩小体积。
特别是64位版刚需呀。

码表的介绍

未处理的码表出处为开源项目:小小输入法平台。
该码表持续使用和改进超过10年,可靠性因该很高了。

码表规范

  • 拼音字母长度限制为3~6,无重复
  • 全部为双汉字词
  • 一组字母对一个词
  • 无生僻字

删除字词的标准

  • 数字词
  • 人名
  • 非汉字
  • “打了”,”还得“之类的半截词和组合词
  • 带“你“我”“他”之类的词
  • 有歧义或难以理解的词

一音多词的取舍

  • 名词优先
  • 中性词优先
  • 识别简易的优先
  • 规范和书面词优先

多音字处理不当

pinyin.wordlist 第 2251 行:25341 haidai 还贷

“还” 做动词表示 “把借来的钱或物归回原主” 时,应读作 huán 而不是 hái。再结合下文的 “haidao”、“haidi”、“haigui” 和 “haijun” 等词组,此条的词组改为 海带 比较恰当。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.