V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
leloext
V2EX  ›  分享发现

匿名程序员能通过分析编程风格识别身份

  •  
  •   leloext · 2015-01-22 18:33:28 +08:00 · 2784 次点击
    这是一个创建于 3597 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在学习计算机编程过程中,每一位程序员都培养出了一种独一无二的编程风格。这种编程风格是一种可作为身份识别的“指纹”,通过分析编程风格,匿名程序员能被识破身份。来自Drexel大学、普林斯顿大学和哥廷根大学的研究人员发表了一篇论文(PDF),分析了一个250名程序员的数据集,每位程序员平均写了630行代码。通过组合选择变量名的词汇特征、行间布局特征和语法风格,研究人员能以95%的精度确认匿名代码的作者。
    http://www.solidot.org/story?sid=42785

    略怕,github上的同学们要做好保密啊。

    12 条回复    2015-01-23 22:20:09 +08:00
    amaranthf
        1
    amaranthf  
       2015-01-22 18:52:47 +08:00
    250个样本没什么价值,风格这种东西都是随时变的,比如我写C代码和写py代码就是两种完全不同的风格,哪天犯懒了没准还混用一把,另外行间布局特征还和ide有很大关系,比如vs2013会自动给我加上空格,codemaid插件会自动清空行之类的……变数太大,谈精确识别完全不靠谱。
    yangff
        2
    yangff  
       2015-01-22 19:34:16 +08:00 via Android
    @amaranthf 混用和变化也是风格的一部分!
    virusdefender
        3
    virusdefender  
       2015-01-22 20:32:24 +08:00 via Android   ❤️ 1
    这个技术早就被用在了恶意软件识别上。两个软件可以分析是不是一个人的
    jedihy
        4
    jedihy  
       2015-01-22 21:23:31 +08:00 via iPhone
    @amaranthf 这就是你的风格
    FrankFang128
        5
    FrankFang128  
       2015-01-22 21:36:24 +08:00
    人类也可以从行文风格看出作者啊。
    sneezry
        6
    sneezry  
       2015-01-22 21:39:17 +08:00 via iPhone   ❤️ 1
    通过加密时计算机风扇声音的大小破解加密算法,我觉得还是这个屌。
    fecho
        7
    fecho  
       2015-01-22 21:41:43 +08:00
    @sneezry 看到这个想到 通过屁味识别一个人 - -
    asfhkoashf
        8
    asfhkoashf  
       2015-01-22 22:27:10 +08:00
    @sneezry 我记得看过一篇文章 高速录像机 录物体振动的幅度大小 然后能计算出来声音..
    yksoft1
        9
    yksoft1  
       2015-01-22 22:32:11 +08:00
    @sneezry 典型的副信道攻击
    Heracles
        10
    Heracles  
       2015-01-22 22:33:47 +08:00
    @amaranthf 你以为你写字换个风格别人就看不出来了,实际上可以
    mengzhuo
        11
    mengzhuo  
       2015-01-23 08:27:33 +08:00 via iPhone
    那有官方fmt的golang 怎么破?
    aaaa007cn
        12
    aaaa007cn  
       2015-01-23 22:20:09 +08:00
    @mengzhuo
    “通过组合选择变量名的词汇特征、行间布局特征和语法风格”
    go fmt 只能消除一部分的“行间布局特征”
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3239 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 12:36 · PVG 20:36 · LAX 04:36 · JFK 07:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.