跳转到内容
View in the app

A better way to browse. Learn more.

彼岸论坛

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
欢迎抵达彼岸 彼岸花开 此处谁在 -彼岸论坛

[分享发现] 客户端加密和 server 端加密

发表于

https://www.v2ex.com/t/1073207

帖子里说“原来阿里云盘在服务端是不加密的”然后一堆人附和,说加密就不能秒传。看来大家对加密的概念还很生疏。

对阿里云不熟,就拿 aws 的 s3 来说吧。s3 默认对于每个文件都是服务端加密的,而且是每个文件一个密码。但即使是这样,也不影响设计秒传,不影响一个用户看到他人的文件。

所谓 server 端加密,是指[文件不会明文写到磁盘上]。在上传时用随机密钥加密文件,随机密钥再用预先配置的非对称密钥加密,然后将随机密钥加密后的文件、非对称加密后的随机密钥分别存储在 aws 中。在下载时,aws 会先解析成明文,然后使用 https 传输到用户/业务服务器。所以无论谁去下载你的文件,aws 都会给他解密后的版本。

至于秒传,是第一次上传时保存整体的哈希,以及每一个文件块的哈希,类似 bt 种子。再次上传时,用户本地生成一个新的哈希,服务端一看,在我的 redis 里面已经有这个种子了你就秒传了,跟文件存储一点关系都没有。

如果你希望服务器不能看你的文件,那要做的是客户端加密,也就是文件已经加密好上传到服务器,服务器根本不知道如何解密当然也就没法生成缩略图或者秒传了。

Featured Replies

No posts to show

创建帐户或登录来提出意见

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.