求教,论坛如何在高匿名性和其他问题之间获取平衡?

2018-10-29 20:11:43 +08:00
 annoy1309

楼主想做一个高匿名的论坛,就是服务器除了正文不存储任何发帖者信息只作为展示用。不需要验证手机号,以前做过一个草样,纯匿名,但是很快被广告屠版了
遇到的问题

1。身份冒充的问题,一个楼主开了个新帖,因为大家都是匿名的,谁都可以在回帖中冒充楼主。开头尝试,每次发帖结束后,都返回一个 64 位随机标识,以楼主身份发帖必须附上这个 64 位的标识(对他人不可见),系统才能标注为楼主。但是用户极度不友好。浏览器 Canvas 之类 WebRTC 之类指纹,是肯定不能用的,这就会降低匿名性。
求解决方案

2。水贴或者垃圾贴的堵截。开头使用第三方 Google 验证码,后来发现第三方验证码导致匿名性降低。因为每一次访问身份都是独立的,服务器也不储存 ip 对应,使得防水贴很难,之前有使用一个 js 来计算 sha256 来验证合法性
具体逻辑:发帖后,服务器返回一个任意字符串,浏览器本地计算 sha512 ( sha256 (字符串+用户随机字符))小于某个值才行(此点参考了 btc ),返回这个值,服务器做一次验算来判断是否有发帖权限,甚至可以通过改值来控制发帖间隔
遇到问题:很多高匿名用户用的浏览器( tor 之类)默认对 js 就是全局不信任不执行,很难去做 html 上的验算

大家有什么建议或者有什么觉得需要改善的吗

1448 次点击
所在节点    问与答
10 条回复
whileFalse
2018-10-29 21:34:08 +08:00
lz 了解基于 query string 的 cookie 吗?
iConnect
2018-10-29 21:52:34 +08:00
匿名的程度越高,人性黑暗越凶猛,除非你再设置一种对抗黑暗的机制或力量。
abeholder
2018-10-29 22:53:32 +08:00
可以在每个新用户第一次进入站点时前端就生成身份标识存入 localstorage, // localstorage.set('user', '...')

然后在发帖的时候将其传给服务端,服务端将该标识与 /t/{tid} 进行绑定。// 持久化到数据库

然后回帖什么的也都需要该标识,后端通过判断进行渲染标识该层是否为楼主或其他用户。

这样的话,至少是不能冒充楼主了 ~








假设论坛帖子是这样的形式 /t/{tid}

然后在开新贴的时候将 tid 与当前用户

然后每个发帖的用户
abeholder
2018-10-29 22:54:43 +08:00
QAQ,发出去没看到下面还有一段 ,请无视楼上空白后的内容
freed
2018-10-29 23:00:34 +08:00
匿名,和拥有自己独立的账号,不冲突吧?

注册发帖不设置任何需要验证的东西

登录账号除你以外他人不可见,随机分配昵称头像.

这样也是匿名了吧~~


话说..我想起了以前流行的网络聊天室..
kslr
2018-10-30 00:56:07 +08:00
IRC
msg7086
2018-10-30 05:12:38 +08:00
如果不存储用户的辨识信息,那么这个用户所做的违法事件将不得不由你来承担责任。
在做这样一套匿名之前,你准备好承担其中的法律风险了吗。
C2G
2018-10-30 07:45:53 +08:00
A 岛那样的呢?或者里岛?
纯匿名的话参考网络聊天室
RiESA
2018-10-30 08:51:50 +08:00
我觉得可以试试看只对用户层面匿名,有账号,但是都看不见名字,再给楼主加个特殊的标记就行了
sky101001
2018-10-30 19:18:54 +08:00
楼主或许可以参考下这个
https://8chan.cc
用加密的 cookie 存储身份信息,另外设置了一个小小的防刷帖机制,没有用到验证码。
域名快要过期了,不打算继续开下去。所以请随意测试~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

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

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX