楼主想做一个高匿名的论坛,就是服务器除了正文不存储任何发帖者信息只作为展示用。不需要验证手机号,以前做过一个草样,纯匿名,但是很快被广告屠版了
遇到的问题
1。身份冒充的问题,一个楼主开了个新帖,因为大家都是匿名的,谁都可以在回帖中冒充楼主。开头尝试,每次发帖结束后,都返回一个 64 位随机标识,以楼主身份发帖必须附上这个 64 位的标识(对他人不可见),系统才能标注为楼主。但是用户极度不友好。浏览器 Canvas 之类 WebRTC 之类指纹,是肯定不能用的,这就会降低匿名性。
求解决方案
2。水贴或者垃圾贴的堵截。开头使用第三方 Google 验证码,后来发现第三方验证码导致匿名性降低。因为每一次访问身份都是独立的,服务器也不储存 ip 对应,使得防水贴很难,之前有使用一个 js 来计算 sha256 来验证合法性
具体逻辑:发帖后,服务器返回一个任意字符串,浏览器本地计算 sha512 ( sha256 (字符串+用户随机字符))小于某个值才行(此点参考了 btc ),返回这个值,服务器做一次验算来判断是否有发帖权限,甚至可以通过改值来控制发帖间隔
遇到问题:很多高匿名用户用的浏览器( tor 之类)默认对 js 就是全局不信任不执行,很难去做 html 上的验算
大家有什么建议或者有什么觉得需要改善的吗
1
whileFalse 2018-10-29 21:34:08 +08:00
lz 了解基于 query string 的 cookie 吗?
|
2
iConnect 2018-10-29 21:52:34 +08:00 via Android
匿名的程度越高,人性黑暗越凶猛,除非你再设置一种对抗黑暗的机制或力量。
|
3
abeholder 2018-10-29 22:53:32 +08:00
可以在每个新用户第一次进入站点时前端就生成身份标识存入 localstorage, // localstorage.set('user', '...')
然后在发帖的时候将其传给服务端,服务端将该标识与 /t/{tid} 进行绑定。// 持久化到数据库 然后回帖什么的也都需要该标识,后端通过判断进行渲染标识该层是否为楼主或其他用户。 这样的话,至少是不能冒充楼主了 ~ 假设论坛帖子是这样的形式 /t/{tid} 然后在开新贴的时候将 tid 与当前用户 然后每个发帖的用户 |
4
abeholder 2018-10-29 22:54:43 +08:00
QAQ,发出去没看到下面还有一段 ,请无视楼上空白后的内容
|
5
freed 2018-10-29 23:00:34 +08:00
匿名,和拥有自己独立的账号,不冲突吧?
注册发帖不设置任何需要验证的东西 登录账号除你以外他人不可见,随机分配昵称头像. 这样也是匿名了吧~~ 话说..我想起了以前流行的网络聊天室.. |
6
kslr 2018-10-30 00:56:07 +08:00
IRC
|
7
msg7086 2018-10-30 05:12:38 +08:00
如果不存储用户的辨识信息,那么这个用户所做的违法事件将不得不由你来承担责任。
在做这样一套匿名之前,你准备好承担其中的法律风险了吗。 |
8
C2G 2018-10-30 07:45:53 +08:00 via Android
A 岛那样的呢?或者里岛?
纯匿名的话参考网络聊天室 |
9
RiESA 2018-10-30 08:51:50 +08:00
我觉得可以试试看只对用户层面匿名,有账号,但是都看不见名字,再给楼主加个特殊的标记就行了
|
10
sky101001 2018-10-30 19:18:54 +08:00 via iPad
|