Skip to content

重构方案 #79

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
11 tasks
bestony opened this issue Oct 14, 2018 · 4 comments
Open
11 tasks

重构方案 #79

bestony opened this issue Oct 14, 2018 · 4 comments

Comments

@bestony
Copy link
Member

bestony commented Oct 14, 2018

需求采集问卷:https://wj.qq.com/s/2895943/b94f/

重构方案说明

即将开启新的重构

新版功能设计

  • 基础的 TOTP 计算功能的实现

  • 借助新开放的文件管理的功能,实现备份文件的本地存储和写入。

  • 使用微信官方的小程序云开发进行服务端开发(评估)

  • 界面优化

  • 使用小程序自带的生物认证功能,接入指纹识别登录

  • 提供邮件备份

  • 提供 WebDav 备份(评估中)

  • 复制完成后,手机震动一下(评估中)

  • 进入到小程序后,屏幕亮度调整为 80% (评估中)

  • TOTP 码复制后,推送模板消息给用户

  • 小程序备份码生成不完整问题的修复

@Yinr
Copy link
Member

Yinr commented Oct 21, 2018

屏幕亮度不需要吧?最多就是显示二维码的时候调整。

@bestony
Copy link
Member Author

bestony commented Oct 21, 2018

@Yinr 对,只在局部提供,不是全局。

@bestony
Copy link
Member Author

bestony commented Nov 15, 2018

新版加密方案

  1. 由于数据存储在云端,目前考虑的加密方案:1. 每个用户使用 openid 登录后,对 openid 进行 sha1 运算得出的结果作为唯一的 ID 存储到数据库中,从而确保“我”无法反推每个用户都是谁。

  2. 大家的数据在本地存储,云端只存储 aes 加密后的结果。云端不直接提供数据的管理。

  3. 单独提供一个纯 JS 实现的数据解密页面,帮助大家完成云端存储数据的小程序外部的解密的实现。方便大家进行数据的解密。

@bestony
Copy link
Member Author

bestony commented Nov 15, 2018

这里还有一个主密码的机制。用户的 totp 数据都是在本地使用主密码 + AES 进行加密。云端只存储加密后的数据。主密码由用户自己保存。

openid 和 sha1 运算只是为了确保无法找到某一个备份的用户到底是谁。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants