关于实现笔记本地加密的再思考

本贴最后更新于 526 天前,其中的信息可能已经时移世易

之前在“关于使用软链接特性实现思源笔记本加密的一些思考 - 链滴 (ld246.com)“里面对思源笔记本加密的实现方式进行了一些思考,但因为会由于一些配置文件而造成笔记的泄漏,所以被否决了。

日常中,加密笔记对我是个非常必要的需求,而且会频繁的来回在加密笔记和非加密笔记之间切换记录,并相互参照,于是就使用不同工作空间来分别记录加密笔记和非加密笔记,但来回频繁切换空间实在是一项折磨人的体验,而且不能相互对照,所以我就又对思源实现加密的方式进行了思考,期望 D 大能考虑考虑。

之前讲的方案中既然只加密笔记本,可能会由于一些配置文件造成而造成泄漏,那就将加密的范围扩大到整个工作空间,但这就有个弊端,需要来回切换空间,所以期望思源能够支持同时加载多个工作空间,并且能够像笔记本那样做到无感切换。

目前,我能想到的若是思源能支持同时加载多个工作空间的好处:

  1. 实现笔记本地加密。若是思源有精力弄自带加密功能的话,则可以在现在的新建笔记本的基础上再提高一级,加入一个新建工作空间的按扭,并且给出选择:“新建非加密空间”、“新建加密空间”。若是没精力,可先支持多空间同时加载,用户使用第三方加密软件进行加密。
  2. 实现差异同步,减轻云端压力。实现多空间支持后,就可以进一步实现对哪些工作空间进行同步,哪些不同步,这样在阅读扫描 PDF 时,就不用担心云端空间不够用了,可以将 PDF 直接丢在非同步空间进行阅读。
  3. 方便引入更多具有特色功能的工作空间。未来“协作”这一块不知 D 大是如何构思的,我想可以通过引入“新建协作空间”来限制协作笔记内容的乱放,以保护私人笔记的干净。
  4. 可以作为一个会员功能进行收费。免费版 1 个或 2 个工作空间,已足够未付费用户进行使用体验了,付费深度使用用户则可以体验更多的空间功能。
  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    19055 引用 • 71527 回帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • LRJ

    思源笔记的锁屏加密功能,虽然加密了空间,但是只要人家能找到空间的 文件路径,就能复制出所有笔记本,新建文件夹,依然能无密码,全方位看所有笔记的内容,这种加密形同虚设,跟被裸奔了一样。

    我试验了一下加密。eg:

    1.我的工作空间 A,文件路径在 D 盘:A 文件夹,我对其加密后,确实,在一起启动思源笔需要密码。

    2.我在 D 盘:A 文件夹路径下,找到 data 文件夹,复制里面的笔记,然后存放到 C 盘:B 文件夹,用思源笔记设置“C 盘:B 文件夹”为工作空间 B,不用密码,就能读取工作空间 A 的所有笔记本。

    建议,设置一个可以独立加密整个笔记本,而非单个笔记的加密方式,并且支持 3 种加密方式:① 整个笔记本支持端到端加密;② 整个笔记本支持本地加密 ③ 导出真个笔记本,用 U 盘复制到别的电脑也需要密码。这能满足用户在办公室电脑的高加密需求。

  • 其他回帖
  • 非常期待,这样的话就不用来回的手动切换了。不知道大概啥时候能上线呢?

  • @LRJ 我正在收集大家的意向,你可以在下面这个帖子回帖并投票:

    是否提供文档级“加密”以保护隐私?(含投票)

  • 经过一系列改进 Issue #6336 · siyuan-note/siyuan Issue #6337 · siyuan-note/siyuan Issue #6343 · siyuan-note/siyuan Issue #4952 · siyuan-note/siyuan 目前已经基本具备多开工作空间的基础,还有一些细节问题需要解决:

    • 判断重复打开相同工作空间处理
    • siyuan:// 协议拉起时处理

    请关注 Issue #4567 · siyuan-note/siyuan

    2 回复
  • 查看全部回帖

推荐标签 标签

  • Hibernate

    Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了非常轻量级的对象封装,使得 Java 程序员可以随心所欲的使用对象编程思维来操纵数据库。

    39 引用 • 103 回帖 • 686 关注
  • FreeMarker

    FreeMarker 是一款好用且功能强大的 Java 模版引擎。

    23 引用 • 20 回帖 • 425 关注
  • DevOps

    DevOps(Development 和 Operations 的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。

    40 引用 • 24 回帖 • 2 关注
  • Typecho

    Typecho 是一款博客程序,它在 GPLv2 许可证下发行,基于 PHP 构建,可以运行在各种平台上,支持多种数据库(MySQL、PostgreSQL、SQLite)。

    12 引用 • 60 回帖 • 464 关注
  • 书籍

    宋真宗赵恒曾经说过:“书中自有黄金屋,书中自有颜如玉。”

    76 引用 • 390 回帖 • 1 关注
  • H2

    H2 是一个开源的嵌入式数据库引擎,采用 Java 语言编写,不受平台的限制,同时 H2 提供了一个十分方便的 web 控制台用于操作和管理数据库内容。H2 还提供兼容模式,可以兼容一些主流的数据库,因此采用 H2 作为开发期的数据库非常方便。

    11 引用 • 54 回帖 • 640 关注
  • 30Seconds

    📙 前端知识精选集,包含 HTML、CSS、JavaScript、React、Node、安全等方面,每天仅需 30 秒。

    • 精选常见面试题,帮助您准备下一次面试
    • 精选常见交互,帮助您拥有简洁酷炫的站点
    • 精选有用的 React 片段,帮助你获取最佳实践
    • 精选常见代码集,帮助您提高打码效率
    • 整理前端界的最新资讯,邀您一同探索新世界
    488 引用 • 383 回帖 • 3 关注
  • Webswing

    Webswing 是一个能将任何 Swing 应用通过纯 HTML5 运行在浏览器中的 Web 服务器,详细介绍请看 将 Java Swing 应用变成 Web 应用

    1 引用 • 15 回帖 • 632 关注
  • 星云链

    星云链是一个开源公链,业内简单的将其称为区块链上的谷歌。其实它不仅仅是区块链搜索引擎,一个公链的所有功能,它基本都有,比如你可以用它来开发部署你的去中心化的 APP,你可以在上面编写智能合约,发送交易等等。3 分钟快速接入星云链 (NAS) 测试网

    3 引用 • 16 回帖 • 3 关注
  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    918 引用 • 931 回帖
  • 链滴

    链滴是一个记录生活的地方。

    记录生活,连接点滴

    133 引用 • 3655 回帖 • 1 关注
  • Kotlin

    Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,由 JetBrains 设计开发并开源。Kotlin 可以编译成 Java 字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。在 Google I/O 2017 中,Google 宣布 Kotlin 成为 Android 官方开发语言。

    19 引用 • 33 回帖 • 29 关注
  • React

    React 是 Facebook 开源的一个用于构建 UI 的 JavaScript 库。

    192 引用 • 291 回帖 • 440 关注
  • App

    App(应用程序,Application 的缩写)一般指手机软件。

    90 引用 • 383 回帖 • 2 关注
  • iOS

    iOS 是由苹果公司开发的移动操作系统,最早于 2007 年 1 月 9 日的 Macworld 大会上公布这个系统,最初是设计给 iPhone 使用的,后来陆续套用到 iPod touch、iPad 以及 Apple TV 等产品上。iOS 与苹果的 Mac OS X 操作系统一样,属于类 Unix 的商业操作系统。

    84 引用 • 139 回帖
  • 知乎

    知乎是网络问答社区,连接各行各业的用户。用户分享着彼此的知识、经验和见解,为中文互联网源源不断地提供多种多样的信息。

    10 引用 • 66 回帖
  • V2Ray
    1 引用 • 15 回帖
  • Shell

    Shell 脚本与 Windows/Dos 下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比 Windows 下的批处理更强大,比用其他编程程序编辑的程序效率更高,因为它使用了 Linux/Unix 下的命令。

    122 引用 • 73 回帖 • 1 关注
  • 笔记

    好记性不如烂笔头。

    305 引用 • 780 回帖
  • 持续集成

    持续集成(Continuous Integration)是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。

    14 引用 • 7 回帖
  • 创业

    你比 99% 的人都优秀么?

    82 引用 • 1398 回帖
  • CSS

    CSS(Cascading Style Sheet)“层叠样式表”是用于控制网页样式并允许将样式信息与网页内容分离的一种标记性语言。

    181 引用 • 448 回帖 • 1 关注
  • BookxNote

    BookxNote 是一款全新的电子书学习工具,助力您的学习与思考,让您的大脑更高效的记忆。

    笔记整理交给我,一心只读圣贤书。

    1 引用 • 1 回帖 • 5 关注
  • ActiveMQ

    ActiveMQ 是 Apache 旗下的一款开源消息总线系统,它完整实现了 JMS 规范,是一个企业级的消息中间件。

    19 引用 • 13 回帖 • 631 关注
  • 房星科技

    房星网,我们不和没有钱的程序员谈理想,我们要让程序员又有理想又有钱。我们有雄厚的房地产行业线下资源,遍布昆明全城的 100 家门店、四千地产经纪人是我们坚实的后盾。

    6 引用 • 141 回帖 • 561 关注
  • Ant-Design

    Ant Design 是服务于企业级产品的设计体系,基于确定和自然的设计价值观上的模块化解决方案,让设计者和开发者专注于更好的用户体验。

    17 引用 • 23 回帖 • 2 关注
  • abitmean

    有点意思就行了

    24 关注