CTF竞赛与知识竞赛联动功能介绍

一、功能概述

CTF竞赛与知识竞赛联动功能是SECSNOW平台的一项重要特性,允许将CTF比赛与知识竞赛进行关联,并自动生成综合排行榜。该功能能够全面评估参赛者的综合能力,既有实战技能(CTF),又有理论知识(知识竞赛)。

1.1 功能特点

  • 双赛联动:CTF比赛与知识竞赛一对一关联
  • 综合评分:自动计算综合分数,全面评估参赛者能力
  • 权重可配:可自定义CTF和知识竞赛的权重比例
  • 归一化处理:采用归一化算法,确保不同赛事的公平性
  • 自动生成:关联后自动生成综合排行榜
  • 实时更新:综合排行榜实时更新,反映最新成绩

1.2 适用场景

  • 综合能力评估:需要同时考核实战技能和理论知识的比赛
  • 教育培训:学校或培训机构举办的综合能力测试
  • 招聘选拔:企业招聘时综合评估候选人的技术能力
  • 技能竞赛:需要全面展示参赛者能力的综合性竞赛

二、功能说明

2.1 关联配置

关联关系: - 一个CTF比赛只能关联一个知识竞赛 - 一个知识竞赛也只能关联一个CTF比赛 - 关联后,两个赛事的数据会同步

配置参数: - CTF权重:默认0.60(即60%),可在0-1之间设置 - 归一化基准百分比:默认20%,建议10-30之间

2.2 综合分数计算

综合分数采用归一化加权平均的方式计算:

计算步骤

  1. 分数归一化

  2. 取前N%(默认20%)的平均分作为基准

  3. CTF分数归一化 = (CTF分数 / 基准分数) × 100
  4. 知识竞赛分数归一化 = (知识竞赛分数 / 基准分数) × 100

  5. 加权计算

  6. 综合分数 = CTF归一化分数 × CTF权重 + 知识竞赛归一化分数 × (1 - CTF权重)

计算示例

假设:

  • CTF权重 = 0.60(60%)
  • 归一化基准百分比 = 20%
  • 某参赛者CTF分数 = 800分(CTF基准 = 1000分)
  • 某参赛者知识竞赛分数 = 80分(知识竞赛基准 = 100分)

计算过程:

  • CTF归一化分数 = (800 / 1000) × 100 = 80分
  • 知识竞赛归一化分数 = (80 / 100) × 100 = 80分
  • 综合分数 = 80 × 0.60 + 80 × 0.40 = 48 + 32 = 80分

2.3 综合排行榜

排行榜特点

  • 按综合分数从高到低排序
  • 显示CTF分数和知识竞赛分数
  • 显示综合分数和排名
  • 可查看CTF排名和知识竞赛排名

排行榜类型

  • 综合排行榜:按综合分数排序的主排行榜
  • CTF排行榜:按CTF分数排序的排行榜
  • 知识竞赛排行榜:按知识竞赛分数排序的排行榜

三、使用方法

3.1 创建关联

前置条件: - 已创建CTF比赛 - 已创建知识竞赛 - 两个赛事都未关联其他比赛

操作步骤

  1. 进入CTF比赛管理页面

  2. 选择要关联的CTF比赛

  3. 进入比赛编辑页面

  4. 关联知识竞赛

  5. 找到"关联知识竞赛"配置项

  6. 选择要关联的知识竞赛
  7. 设置CTF权重(默认0.60,即60%)
  8. 设置归一化基准百分比(默认20%)

  9. 保存配置

  10. 点击保存,系统自动关联

  11. 关联后自动生成综合排行榜

3.2 配置参数说明

CTF权重(combined_score_ctf_weight)

  • 取值范围:0-1之间的小数
  • 默认值:0.60(即60%)
  • 建议值:0.5-0.7之间
  • 说明
  • 权重越高,CTF分数对综合分数的影响越大
  • 权重为0.60时,CTF占60%,知识竞赛占40%
  • 可根据比赛重点调整权重

归一化基准百分比(combined_score_top_percent)

  • 取值范围:10-30之间的整数
  • 默认值:20(即20%)
  • 建议值:15-25之间
  • 说明
  • 取前N%的平均分作为归一化基准
  • 百分比越小,基准分数越高,归一化后的分数可能越低
  • 百分比越大,基准分数越低,归一化后的分数可能越高
  • 建议根据参赛人数和分数分布调整

3.3 查看综合排行榜

查看方式

  1. 在CTF比赛页面

  2. 进入已关联知识竞赛的CTF比赛

  3. 在排行榜区域点击"综合排行榜"
  4. 查看综合排行榜详情

  5. 在知识竞赛页面

  6. 进入已关联CTF比赛的知识竞赛

  7. 在排行榜区域点击"综合排行榜"
  8. 查看综合排行榜详情

排行榜信息

  • 参赛者姓名/队伍名称
  • CTF分数和排名
  • 知识竞赛分数和排名
  • 综合分数和排名
  • 排名变化(如有)

四、数据同步

4.1 报名同步

自动同步

  • CTF比赛报名审核通过后,自动同步到关联的知识竞赛
  • 知识竞赛报名审核通过后,自动同步到关联的CTF比赛
  • 确保两个赛事的参赛者一致

同步规则

  • 个人赛:个人报名同步
  • 团队赛:队伍报名同步
  • 状态同步:审核状态同步更新

4.2 成绩同步

同步内容

  • CTF解题记录同步到综合排行榜
  • 知识竞赛答题记录同步到综合排行榜
  • 综合分数实时计算和更新

更新时间

  • 实时更新:每次CTF提交Flag后更新
  • 实时更新:每次知识竞赛提交答案后更新
  • 自动计算:系统自动计算和更新综合分数

五、注意事项

5.1 关联限制

  • 唯一性:一个CTF比赛只能关联一个知识竞赛,反之亦然
  • 不可更改:关联后建议不要频繁更改,避免数据混乱
  • 解除关联:解除关联会清除综合排行榜数据,请谨慎操作

5.2 配置建议

权重配置

  • 实战为主:如果更重视实战能力,CTF权重可设置为0.60-0.70
  • 理论为主:如果更重视理论知识,CTF权重可设置为0.40-0.50
  • 平衡评估:如果需要平衡评估,CTF权重可设置为0.50

归一化基准

  • 参赛人数少(<100人):建议设置为15-20%
  • 参赛人数中等(100-500人):建议设置为20-25%
  • 参赛人数多(>500人):建议设置为25-30%

5.3 数据要求

  • 时间同步:建议CTF比赛和知识竞赛的时间范围相近
  • 参赛者一致:确保两个赛事的参赛者尽量一致
  • 分数分布:确保两个赛事都有足够的分数分布