zoukankan      html  css  js  c++  java
  • 由csdn开源项目评选中闹出刷票问题想到投票程序的设计

    帖子《#CSDN刷票门# 有没有人在恶意刷票?CSDN请告诉我!用24小时监控数据说话!》
    http://www.cnblogs.com/sanshi/p/3155946.html

    网站投票是属于比较基础的程序设计,基于此机会发起此贴。

    以下是不成熟的想法,希望园友踊跃讨论,给后学提供更多的设计思路。
     


    csdn规定一个账号只能投票5个项目,但是却没有限定ip。
    如果限定ip,那么使用公用环境上网的人就不方便了。
    如果加上mac,而mac又可以手动篡改。
    那么就只能采用综合智能识别了。
    而智能识别却不是几行代码搞定的。

    逐层设计限制

    比如账号登陆限制、ip、mac

    第一层 每个账号只能投票一次

    第二层 检查ip+mac是否唯一投票

    第三层 检查这个ip投票的总数是多少,超过异常临界点,则进入异常检查程序

    异常检查程序怎么设计呢?

    毕竟真实的环境是复杂多样,难以预料的。

    主要判断方式是采取特征识别

    针对ip段下的

    目标投票总数

    目标票数增长速度

    整体上判断

    目标投票总数

    目标票数增长速度

    投票ip分布

    投票账号特征

    投票时间特征

  • 相关阅读:
    C语言:线程同步之信号量(sem_init,sem_post,sem_wait)
    SVN使用 -work
    atomic c++ y原子变量 替换锁代码
    原子变量
    perf
    内存泄露检测工具对比
    valgrind ----直接使用参数
    堆内存分析---特别棒
    调不尽的内存泄漏,用不完的 Valgrind(转)
    静态库动态库制作方法
  • 原文地址:https://www.cnblogs.com/yelaiju/p/3157264.html
Copyright © 2011-2022 走看看