关于数据同步提供内置密钥的讨论

本贴最后更新于 560 天前,其中的信息可能已经物是人非

提供内置密钥不是取代自定义密钥,而是两种密钥生成方式用户自己选择。

  • 内置密钥:通过不可变的用户账号信息(比如用户 ID 等)在云端自动生成并保存密钥
  • 自定义密钥:现有的密钥生成方式,在本地生成并保存密钥

内置密钥的优点:对于新用户友好,用户无需记住密钥,只要登录账号就可以使用内置密钥加解密数据快照

内置密钥的缺点:安全性没有自定义密钥高,技术上开发者是可以解密云端数据的

总得来说,内置密钥是降低一些安全性而提升便利性。

你是否赞同提供内置密钥?

单选 公开 已于 2023-05-18 17:45:00 结束 135 票
赞同
33% 45 票
反对
66% 90 票

如果你投了反对票,方便的话请在评论区描述一下反对的理由,也欢迎在评论区补充其他观点,谢谢。

  • 思源笔记

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

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

    22353 引用 • 89444 回帖
5 操作
88250 管理员在 2023-05-18 09:08:01 取消置顶了该帖
88250 管理员在 2023-05-11 22:29:16 置顶了该帖
88250 在 2023-05-11 19:09:06 更新了该帖
88250 在 2023-05-11 18:54:39 更新了该帖 88250 在 2023-05-11 17:57:25 置顶了该帖

相关帖子

优质回帖
  • 内置方案有悖思源隐私性的特点,主打的安全性将被破坏。托管客户的密钥也将置官方于不利境地,相当于是沦落为跟 Notion、FlowUs、Wolai 同流了。客户无法相信审查是不是就是下一步。

    思源作为一家非常注重云端数据隐私性的笔记厂商,建议借鉴 1Password 在密钥管理方面的经验。在生成密钥时生成“急救包”,告诫用户做好保存。

    SASHUZ63WOFBKF.png

  • bug320 5 赞同

    内置密钥会让人“敏感”起来。而且,忘记密码这种事情,本地都是明文加密,重置密钥上传即可。这个功能,我觉得还是不要加为好。如果要加,第一,不能设置成“默认”的密钥选项;第二,请务必保留自定义密钥功能。

    如果是对小白,可以考虑把这块的帮助说明写的详细点。

    像我这种把个人账号、日记啥的写到笔记软件的人,还是比较在意这块的。从“某来”软件迁出的原因,就是因为知乎上帖子,虽然无法对帖子真假性判断,但还是本着“万一是真的呢”的想法,开始比对市面主要的几款软件,最后选了 siyuan。我当时选择 siyuan,最开始还是冲着“完全本地 ”、“端到端加密”、“国内的软件”去的。

  • yawei 1 4 赞同

    我投了反对票。

    原因:对于我这样的普通用户,不要给我介绍太多技术细节,我需要的只是一个简单粗暴的结论。你就告诉我,如果使用自定义密钥,除了你自己谁也看不到你写的东西。哪怕你写了一些不正确的,不能见光的,ZZ 敏感的东西,只要你保管好自己的电脑,就不用担心这些文字被别人截获。如果是这样,哪怕我同时还在用 workflowy, remnote 等一堆云端笔记,我也不会抛弃思源。

    但如果你告诉我,你的云端数据是会被解谜的哦。哪怕可能性只有 0.00000001%,我打字的时候心里也会有些膈应...我从来没看过 WX,WB 这些 app 的隐私政策,但是有些话我绝对不会在上面说...

    与其说是个技术问题,不如说是个心理问题,或者刻板影响。

欢迎来到这里!

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

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

    个人认为对于 docker 版的用户内置密钥功能非常有用。如用户在未保存密钥的情况下,误操作删除了该容器,就会出现无法同步数据的情况。

  • 其他回帖
  • 安全性这个问题,在思源,其实是被创造出来的。

    我最开始用思源是因为他的功能,用自定义也只是因为没有其他选择。我笔记软件用了一堆,也只是老马事发以后才注意到安全性这个话题。但是老马这件事都老黄历了,新人真的在乎这个话题么?我存一个疑问。

    另外,我对论坛的人员构成也提出一个疑问,和思源庞大的用户量相比,论坛的活跃人数占几成?新人有几成?这些人能不能代表最广大的新人?

    我没有引战的意思,我们可以注意到,在这个帖子里发声的都是隐形大佬,光我认出的就不止一个。很多都属于思源金字塔结构顶端的人,我们这群人能不能代表 D 所说的小白用户呢?说实话能玩思源论坛的人本身就代表这一定的技术水平。因为很多人只是记个笔记,只有想要开发更多功能的人才会来论坛。

    如果思源的定位就是服务顶端,那么这个投票肯定没错。如果思源要敞开怀抱拥抱小白用户,就不能所有事情都关起门来讨论了。

    我想到了之前美国投票的话题,实际选票和预测选票差距很大。究其原因,是因为预测选票的选民是通过报纸统计的,而报纸本身就筛选了投票的阶层,而最广大的底层投票人民,根本不会看报纸。

  • zuoez02 1 评论

    你的数据上传到服务器的时候已经加密了,理论上从服务器那根本获取不到明文内容,除非你自己的密钥见光了。

    我能够想象的实际方案实现,无论那种情况,密钥会被作为一种“可还原”的数据存储在云端,要么明文,要么加密存储解密使用,其达不到常见的“hash(密码 + 盐)"的那种密码存储方式,就存在危险性,对用户对思源都不利,也就是说你的密钥是在云端“见光”的,算法上无法保证其安全性。或者如果有哪个技术方案可以满足云端不存储你的密钥的方法,也可以跟大家分享一下。

    跟 wolai,flowus 或者 notion 不同,思源没有云端,所有数据都在自己的手里。用户用云端产品和本地软件的感受是不一样的。默认上用户的感受就是没有人能够获取你的数据,这是思源非常重要的特性和与其他类似产品的本质区别。

    前面评论有误,我改一下:自定义密钥保存在本地就没啥问题,自动生成密钥保存在云端确实有被见光的风险。
    EberhardLin
  • yawei 1 2 赞同 1 评论

    我看到很多支持内置密钥的人不理解为什么有人要反对。毕竟是在保持原有自定义密钥不变的条件下,增加一个新的选择,你们想要的隐私性,安全性又不会被损害。内置密钥的危险性在哪里?

    我认为很多反对的人,其实并不是从自身利益出发,而是在给开发者出谋划策,站在思源的角度去讨论。在我看来可能的坏处有两点:

    1. 削弱思源的独特性
      从用户数量来看,思源还是一个小众软件。由于传播渠道有限,许多小白用户在知道思源,了解思源,试用思源,到将思源作为主力工具这一过程中,肯定也会对某来,Ob 等其他笔记软件有一些或多或少的了解,并和思源进行比较。经过几轮筛选,能被思源黏住的小白用户,大概都会有“其实 A,B,C 都能满足我的日常需求,但如果考虑到安全性,还是思源最合适”这种想法吧。增强“思源笔记”与“隐私”,“安全”等关键词的关联性,对思源推广很有利。
      如果增加了内置密钥选项,“思源笔记”本身与“隐私”,“安全”的关联性会被削弱和模糊,转而必须强调“自定义密钥”这一概念。如果是因为安全性而选择思源,记得一定要使用“自定义密钥”哦。如果选择了“内置密钥”,也就是选择了“虽然我知道开发者能看到我的笔记内容,但我相信他是一个正直的人,他绝对不会看的”。

    2. 增加由误解产生的争论
      在围绕安全性的争论中,以前只有两个大组:“我觉得思源安全”组和“我觉得思源不安全”组。现在又细分成了:

      1. “我觉得两种密钥都安全”组
      2. “我觉得两种密钥都不安全”组
      3. “我觉得自定义密钥安全,内置密钥不安全”组
      4. “我觉得内置密钥安全,自定义密钥不安全”组(说不定真有人这样认为,因为如果不记得自定义密钥会丢数据)

      所以之后再讨论时,大家嘴上说的都是思源怎样怎样,但在没有明确前提的条件下,有人心里默认的可能是使用自定义密钥下的思源,有人想的是内置密钥。这还是建立在所有人都能正确认识概念的前提下。增加一个新的概念,在某种意义上就将用户又分为了两组,正确认知组和错误认知组。可能还有人自以为搞清楚了(但实际上没有)就加入了讨论。这些都容易让用户之间产生误解,进而引发争论。

    但是这些反对的人只能看到内置带来的“坏处”,看不到他的优越性,哪怕看投票,将来也会有 36% 的思源用户会选择实用内置密码。
    LeonardoDiCaprio
  • 查看全部回帖

推荐标签 标签

  • Ant-Design

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

    17 引用 • 23 回帖
  • 数据库

    据说 99% 的性能瓶颈都在数据库。

    342 引用 • 708 回帖
  • GitBook

    GitBook 使您的团队可以轻松编写和维护高质量的文档。 分享知识,提高团队的工作效率,让用户满意。

    3 引用 • 8 回帖 • 4 关注
  • B3log

    B3log 是一个开源组织,名字来源于“Bulletin Board Blog”缩写,目标是将独立博客与论坛结合,形成一种新的网络社区体验,详细请看 B3log 构思。目前 B3log 已经开源了多款产品:SymSoloVditor思源笔记

    1063 引用 • 3453 回帖 • 203 关注
  • SVN

    SVN 是 Subversion 的简称,是一个开放源代码的版本控制系统,相较于 RCS、CVS,它采用了分支管理系统,它的设计目标就是取代 CVS。

    29 引用 • 98 回帖 • 680 关注
  • Openfire

    Openfire 是开源的、基于可拓展通讯和表示协议 (XMPP)、采用 Java 编程语言开发的实时协作服务器。Openfire 的效率很高,单台服务器可支持上万并发用户。

    6 引用 • 7 回帖 • 94 关注
  • SQLServer

    SQL Server 是由 [微软] 开发和推广的关系数据库管理系统(DBMS),它最初是由 微软、Sybase 和 Ashton-Tate 三家公司共同开发的,并于 1988 年推出了第一个 OS/2 版本。

    21 引用 • 31 回帖 • 1 关注
  • SQLite

    SQLite 是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 是全世界使用最为广泛的数据库引擎。

    5 引用 • 7 回帖
  • Quicker

    Quicker 您的指尖工具箱!操作更少,收获更多!

    32 引用 • 131 回帖 • 1 关注
  • Kotlin

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

    19 引用 • 33 回帖 • 64 关注
  • InfluxDB

    InfluxDB 是一个开源的没有外部依赖的时间序列数据库。适用于记录度量,事件及实时分析。

    2 引用 • 73 关注
  • FreeMarker

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

    23 引用 • 20 回帖 • 462 关注
  • Postman

    Postman 是一款简单好用的 HTTP API 调试工具。

    4 引用 • 3 回帖 • 4 关注
  • Redis

    Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API。从 2010 年 3 月 15 日起,Redis 的开发工作由 VMware 主持。从 2013 年 5 月开始,Redis 的开发由 Pivotal 赞助。

    286 引用 • 248 回帖 • 61 关注
  • 反馈

    Communication channel for makers and users.

    123 引用 • 911 回帖 • 245 关注
  • Chrome

    Chrome 又称 Google 浏览器,是一个由谷歌公司开发的网页浏览器。该浏览器是基于其他开源软件所编写,包括 WebKit,目标是提升稳定性、速度和安全性,并创造出简单且有效率的使用者界面。

    62 引用 • 289 回帖 • 1 关注
  • TextBundle

    TextBundle 文件格式旨在应用程序之间交换 Markdown 或 Fountain 之类的纯文本文件时,提供更无缝的用户体验。

    1 引用 • 2 回帖 • 49 关注
  • Log4j

    Log4j 是 Apache 开源的一款使用广泛的 Java 日志组件。

    20 引用 • 18 回帖 • 30 关注
  • GAE

    Google App Engine(GAE)是 Google 管理的数据中心中用于 WEB 应用程序的开发和托管的平台。2008 年 4 月 发布第一个测试版本。目前支持 Python、Java 和 Go 开发部署。全球已有数十万的开发者在其上开发了众多的应用。

    14 引用 • 42 回帖 • 764 关注
  • Thymeleaf

    Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。类似 Velocity、 FreeMarker 等,它也可以轻易的与 Spring 等 Web 框架进行集成作为 Web 应用的模板引擎。与其它模板引擎相比,Thymeleaf 最大的特点是能够直接在浏览器中打开并正确显示模板页面,而不需要启动整个 Web 应用。

    11 引用 • 19 回帖 • 355 关注
  • GraphQL

    GraphQL 是一个用于 API 的查询语言,是一个使用基于类型系统来执行查询的服务端运行时(类型系统由你的数据定义)。GraphQL 并没有和任何特定数据库或者存储引擎绑定,而是依靠你现有的代码和数据支撑。

    4 引用 • 3 回帖 • 9 关注
  • ZeroNet

    ZeroNet 是一个基于比特币加密技术和 BT 网络技术的去中心化的、开放开源的网络和交流系统。

    1 引用 • 21 回帖 • 638 关注
  • 持续集成

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

    15 引用 • 7 回帖 • 1 关注
  • 前端

    前端技术一般分为前端设计和前端开发,前端设计可以理解为网站的视觉设计,前端开发则是网站的前台代码实现,包括 HTML、CSS 以及 JavaScript 等。

    247 引用 • 1348 回帖
  • 星云链

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

    3 引用 • 16 回帖 • 1 关注
  • Kafka

    Kafka 是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是现代系统中许多功能的基础。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。

    36 引用 • 35 回帖 • 1 关注
  • V2EX

    V2EX 是创意工作者们的社区。这里目前汇聚了超过 400,000 名主要来自互联网行业、游戏行业和媒体行业的创意工作者。V2EX 希望能够成为创意工作者们的生活和事业的一部分。

    17 引用 • 236 回帖 • 328 关注