转载自 安全学术圈 公众号,原文链接 https://mp.weixin.qq.com/s/J0atxc05c3xFd_bXxejQpQ
作者介绍
刘哲理,南开大学计算机学院副院长、网络空间安全学院副院长,教育部宝钢优秀教师,中国工程院新一代人工智能发展战略研究院智能网安研究中心主任,中国中文信息学会大数据安全与隐私保护专业委员会秘书长,天津市中青年科技领军人才,教授,博士生导师。研究方向为密文数据库、密文集合运算、差分隐私、人工智能安全等。目前主持国家自然科学基金重点项目、国家重点研发计划课题、国防科技创新重点项目、工信部工业互联网创新工程等纵向课题10余项,与华为、腾讯等多家知名企业建立了密切的合作关系,获天津市科技进步奖一等奖和二等奖各一次。联系方式:liuzheli@nankai.edu.cn
引言
从事信息安全与密码学研究的学者,无人不知顶级会议的难度之大。我从2013年开始投稿CCS,到近几年10余篇CCF-A类IEEE会刊论文、2021年第一篇USENIX Security,再到近期一击即中2篇USENIX Security和1篇VLDB,可谓是历时之久、久经考验、淬炼成钢。今天,我想静下心来,写一篇博文,来记录一下发表顶会顶刊论文(非安全领域也具备一定推广性)的经验心得和心路历程,写给研究生和同行好友们,与大家共勉、共同进步。事实上,国内已经有一些安全团队发表顶会论文多年多篇,我还只是一个攀登者,一点浅薄之见,供大家参考。
写一篇顶级会议论文,实际上就是做一个好的研究工作并且撰写成文的过程。
做一个研究工作,需要回答四个问题:为什么要做这个工作?这个工作和谁比、比什么?有什么挑战和采用了什么方法?怎么证明这个工作足够好?
1. 好的选题是成功的开始
“为什么要做这个工作”,是一个回答研究动机的问题,也是一个有关选题的问题。好的选题是成功的开始,但是,选出一个好的题目并不容易。好题目背后意味着对研究领域的深度耕耘。涉猎领域不深拍脑门想出来的题目,要么问题很难、找不到合适的解决办法,要么求真求实之后发现别人已经做了。这个亏,我们已经吃过很多遍了,相信很多人也仍然在体验着。这也是一个必然的过程,在对所从事研究领域有充分认识和思考之前,就需要不断的拍脑门、想方法、扩阅读、增知识,进而得到提升,在思考中前进。
选题有两类:零类问题和壹类问题
零类问题是原创性问题,具有一定的开拓性,可以概述为提出一种新问题、一种新概念或者一种新思路,比如姚氏百万富翁问题与混淆电路、密文关键词查询问题与可搜索加密等。壹类问题是已经存在的问题,是一种延续性问题或提升性问题,可以理解为对已有的问题、方法或方案进行性能、功能或者安全性的提升与改进。
零类问题相对难找,完全从无到有的问题更是难以发现,需要对研究领域有多年积累和独到见解。壹类问题相对好找,也是大多数学者在选题时普遍选的一类题目。阅读最新的顶级会议论文,找出论文的不足或者问题,就有可能选出一个较好的壹类问题。但是,无论哪一类问题,都需要对研究领域有深刻的认识和理解,要善于总结、不断反思、深度挖潜。
接下来,我总结并介绍两类方法,即反思维法和面向现实应用深度挖掘法,希望对大家选题有帮助,能帮助大家选出一些原创并有价值的题目出来。
反思维法
反思维法是指不要跟风,要从另外角度去看待问题、反观问题背后实质或者要害。举一个例子,众所周知,在经典的联邦机器学习框架中,客户端将自己的梯度更新加密后发送到不可信服务器端进行聚合,来保护客户端的隐私。但是,如果我们反思维,从另外一个角度来看待这个框架,也就是说客户端也可能是恶意的。在这个情况下,恰恰因为客户端梯度更新被加密了,其恶意投毒或其它操作将无法检测。所以,如何设计支持客户端恶意行为检测的安全聚合策略就变的很有必要,这也是我们正在进行的一个工作。
面向现实应用深度挖掘法
是指挖潜某种理论方法在实际应用中面临的深层要求或挑战。理论研究总是服务于实际应用,当对一个方向有了基础之后,在面临理论选题瓶颈的时候,不妨将其与实际应用结合起来深度挖潜,可能会有意想不到收获。举例而言,保序加密是一种使得密文与明文具有相同顺序的加密机制,可以用于解决数据库密文的范围查询问题,但是,保序加密容易遭受频率攻击。频率隐藏的保序加密方案有两种,一种是客户端存储与记录数量呈线性的无状态方案,一种是客户端与服务器端多次交互的有状态方案,已经有多年没有进一步的研究提出。面向现实应用深度挖潜,考虑到实际数据库加密系统不允许交互(会改动数据库驱动程序),也不允许客户端海量存储,我们计划开展常量客户端存储的无交互的频率隐藏保序加密方案的设计,最终论文一击即中VLDB 2022。
场景类选题
场景类选题也是很多学者经常采用的选题方式。一种新概念或者新问题提出来之后,换一个场景或者还没解决的相似目标做一做。选择一个未做的场景难以归属为零类问题,因为很可能既有方法推广过来就能够解决问题,这种情况下价值是不大的。如果新场景会带来新挑战,能引发新方法或新设计,这种情况是可以的,但价值多大还需要看方法有多新、问题有多难、应用有多迫切。
2.好的写作是成功的必要条件
好的选题意味着会有突出的贡献,是成功的开始,但是好的选题仅占一个完整研究过程的十分之一。题目选出来,还需要做出来,更需要验证和说明这个工作的价值。
验证和说明工作价值的过程,就是研究和写作的过程。这个过程需要回答三个问题:
“这个工作和谁比、比什么?”
这个问题是准确定义价值与贡献的问题。如果这个问题回答不准确,那么对于价值和贡献的定位就不准,就会严重影响论文的质量。零类问题要对整体研究做深度剖析,强调问题的原创性和价值;壹类问题要和经典及最新的代表性工作做对比分析,并且需要准确定义比对的内容,从理论分析和实验结果多重维度进行比对,强调所开展工作的先进性和价值。
“有什么挑战和采用了什么方法?”
这个问题既是研究过程中聚焦的核心问题,又是如何清晰地表达工作逻辑的问题。很多时候是先做了工作,后写论文,这个时候就要反过来好好地问问自己这个问题。因为,只有将遇到什么问题,又是如何一步步解决的,刻画的很清晰,才有助于读者和审稿人读懂论文所采用的方法。
“怎么证明这个工作足够好?”
这个问题是工作完备性的问题,是一个追求完美卓越的过程。顶级论文绝对不是照猫画虎,写一个模仿的安全性证明或者理论分析就可以,要审视证明过程、理论分析是否完全正确、严谨细致;顶级论文绝对不能随便设计实验,将自己的方案跑一跑,出点数据就可以了,这个是大忌。相反的,需要围绕待解决的问题、要体现的贡献,从不同规模、不同维度的实验设计与典型方案进行比对分析,尽可能的全面并且有重点。如果能清晰地回答上述三个问题并逐一落实,那么研究和写作的过程将会事半功倍。有关写作,很多刚踏入学术研究的研究生或者还未成功发表顶会顶刊的导师可能存在误区,认为好的写作就是英语地道、语句通顺。甚至,在研究的过程中,会主动寻求国外好友的帮助,请他们对论文写作进行润色。实则不然,好的写作强调的是逻辑是否合理。审稿人或读者不会因为英文表达不够地道而读不懂,而是因为前后逻辑关系不通顺,把握不住要点,甚至云里雾里、不知所云。
大逻辑是整个论文框架,要围绕动机、挑战、方法和效果形成一条主线,服务于贡献和价值的描述。写一篇顶会论文,大逻辑清晰是基本要素。如果作者不能清晰的回答本文提出的四个问题,意味着这个论文的大逻辑是混乱的。小逻辑是每个段落或章节内的过渡与转折、承上与启下、循序而渐进,事关读者如何一步步接受知识和接纳观点的过程。不注重小逻辑,转折过多,会让论文生涩难懂。好的写作意味着将问题和贡献、挑战和方法、应用和效果描述的很清楚,大小逻辑合理,能化繁为简并朗朗上口,是顶会论文成功的必要条件。
写作注意事项
接下来,我结合个人写论文的经验,以及指导学生过程中看到的一些问题,对论文写作的部分注意事项做一些总结。
一定将读者认为是门外汉。写论文的时候要反复问自己,这个地方写的内容能不能让没有太多背景知识的人读懂?第一次引入的术语都尽可能给出简单易懂的描述,然后再使用,不能想当然地省略掉;能不用符号和专业术语去描述的地方就不用。
一定要用最直白的句子将背后最浅显的道理写出来。开始总是习惯抄袭或者模仿,照着已有论文的一些句子来更改,这样能大体表明意思,但绝对不够准确。要像聊天似的将背后的真正含义搞清楚,讨论出来,说出来,写出来,这样的论文才不会晦涩难懂。
一定不要自己制造阅读的麻烦。在说明一个事情的时候,不要轻易引入读者不具备的背景知识或者其它术语进来,要注意考虑读者循序渐进的理解过程。符号术语多的论文,可以在准备部分统一定义好,切忌边定义边使用,会使得读者很难去定位之前定义的符号在哪里。
一定不要将小逻辑搞复杂了。一个段落不要掺杂太多事情,过多的转折一定会造成困扰。一个段落基本就是服务一个小目的,可能段首或者段尾一个句子就能看出来你要说什么。
一定要尽量将复杂问题简单化处理。再复杂的解决方案,其核心思想也是可以找到简单形象的表述方式。在符号多、复杂度高的算法或方案描述前后,尽量能有化繁为简的思想概述、简单示例或者图表示意,去帮助读者概要性掌握核心思想。
一定要准确描述贡献,不易贪多。很多初写论文的研究生总怕没有把贡献写全面,甚至将全文每个工作都逐项列为贡献,这其实是不对的。一个论文往往只需要将最重要的贡献写出来就行,当然了,解决核心工作过程中产生的具备推广性的新方法也可以列为贡献之一。
一定要把握审稿人意见背后的真正含义。顶会论文Rebuttal是一个非常重要的过程,临近边缘的论文,回复的好坏决定了论文是否可能被录用。一定要洞悉审稿人意见背后的真正含义,擅于梳理关键问题,抓住打动审稿人的要点。
3.追求卓越的态度是成功的保障
过去的经验告诉我:完美的工作才会配得上顶会。
其实,做顶会论文和做普通论文的过程没有差异,有差异的在于研究的态度。
我看过很多人选出了不错的题目,但是工作做的不完美就开始投稿,或者自认为已经做的不错了就开始投稿。一种原因是站位不够高或者要求不够严,缺乏顶会视野,很多导师并没有对学生和论文提出更高的要求,学生写出来就由着学生投了,没有从选题、研究和写作依据前面提的四个问题,反复深刻地雕琢;另一种原因是速食主义,很多学生为了奖学金、毕业、找工作等原因,急于发表论文;很多导师则为了晋升职称、绩效考核等需要一定产量。顶会不接纳速食主义,速食肯定行不通。因为审稿人都是千锤百炼,经历了从小白到大牛的过程,一眼就能看出论文的破绽。
要有勇攀高峰的目标。目前,国家在破五唯,强调高质量论文和代表作,做顶会顶刊论文成为大家共识。在培养研究生过程中,如果仅要求做一个普通论文,那么研究生很容易不求甚解,草率了事。做顶会论文的研究过程,也是培养学生深入探索、提升能力的过程。因此,研究生也罢、导师也好,希望都能树立更高目标,敢于向比目前自己更高的层次、甚至顶会顶刊论文发起冲击。
要有追求卓越的决心。正如前面所述,并非选题不好、能力不行,而是自我要求不高,要树立追求卓越的态度和决心。草率的投出、漫长的等待,换来的通常是不理想的结果。莫不如静下心来,审视所做的研究、所写的论文,是否还有改进空间,尽可能追求卓越。一篇论文如果做到了尽可能完美,在自己、同学和导师的不断质疑中站得住脚,审稿人同样不容易发现缺点,这样的论文水到渠成,中的概率极大。顶会从来无捷径,循序渐进登高峰。
我原本是一个论文写作者,近几年角色转变,变成指导者;一直没变的,则是勇攀顶会高峰的目标和奋斗。2011年,我从企业博士后工作站出站,来到了南开大学,进入了公共基础教学部,科研基础不深。2012年,第一次正式参加国际学术会议NDSS,眼界大开,知道了信息安全顶级会议,并在2013年开始投稿。前几年,对自己水平定位不准,拍脑门想出一个idea、能自圆其说、就自我感觉非常不错,每次都兴致勃勃投出,但结果都是全部reject,体无完肤。在这个初级阶段,对于知识领域深度耕耘不够,而且先后承担了多门新课,每篇投顶会的论文最终都被草率处理。2015年,我转入信息安全专业,同时荣升副教授并有了自己的研究生,再次燃起冲击顶会的斗志。这是一个进阶的阶段,因为有了研究生和更多的讨论,工作做的也更加细致。这个过程积累了很多经验,开始深耕一个领域,拍脑门的idea不再像以前那么快速成文,而是一个个被否定,进而在不断的迭代中挖掘更有价值的选题。虽然这个阶段写出来的论文没有中顶会,但是经常进入Rebuttal,最终也都在IEEE TKDE、IEEE TDSC等顶刊发表。审稿人的意见像照妖镜一样,不断的让我发现身上的错误、论文的差距,在做每一篇新论文的时候,就不断的对照错误列表,尽可能避免它。2018年底,我完成个人飞跃,成为学院副院长、有了自己的博士生(2019年)、晋升教授(2020年),学生越来越多,感兴趣的领域也逐渐开拓。这个时候,我开始新一轮的顶会论文冲刺,并且众志成城。我将学生分为几个组,每个工作都互相有商有量,从选题、研究、实验和写作全方位都不断的迭代,每篇论文都要求做不到完美,不得投稿。这三年,过程很煎熬,产量不多,研究和写作周期都很长(一年以上)。但是,每一篇论文都是我们心中的完美工作,都收获了多个顶会minor、major甚至accept的意见,最后被顶会(VLDB 1篇、USENIX Security 3篇)或者顶刊(IEEE TDSC 4篇、IEEE TIFS 1篇)录用。过程中,我们经常为某个观点互相争执,也有学生因为写作不到位被我说的流泪,但是我们深耕了研究领域,收获了成长和信心,培养了追求卓越的团队精神,养成了做顶会论文和顶尖研究的态度和惯性。近期,我们连续3篇顶会论文一击即中,我想这既是运气,也是必然。我相信我们还会走的更远,收获更多。
4.USENIX Security 2022论文的成功实践
本想以刚被录用的USENIX Security 2022的论文为例,讲述一些具体要点。但是真将例子写出来,洋洋洒洒就得过万字了。因此,还是简要说一下过程吧。
(1)选题。目前,隐私集合求交集PSI非常有用,面向多方数据孤岛情况下做数据分析,首先要基于PSI进行数据对齐,进而在对齐的密文数据上做分析。这个过程不允许泄露交集元素并且只允许数据以密文形式出现,但是交集的个数允许被观察到。现在很多应用,比如广告转化率计算、纵向联邦机器学习等,都是基于此假设而进行构建。我们反思维问一个问题:默许的允许泄露交集大小存在问题吗?会不会用来推测不允许泄露的交集元素?能推测出多少个?
(2)研究。研究过程并不顺利,开始想建立威胁模型进行分析,难有突破,进而决定通过攻击进行评估。我们设计了一个利用交集大小的推理交集元素的攻击方案,允许攻击者构造不同的集合参与运算,通过集合差异来发动类似差分攻击,进而获得交集中的部分元素。但是,很快我们发现,这种攻击只能发生在静态数据集。现实中的应用,数据集和任务是不断有变化的。如何设计动态数据变化时同样有效的攻击手段,成为一个新问题。而且,如何收集更多场景下的现实数据集并开展实验,变成了另外一个困难问题。这两个问题困扰了我们三四个月的时间,经过海量查阅资料,我们决定采用公开的美国人口普查数据(有ID和人员特征)来进行模拟数据集构造。又经过半年左右的时间,完善了方案并完成了静态和动态(模拟)数据集下的推理攻击实验。并且,在直观方案基础上,考虑现实攻击者可以拥有自己集合的元素特征和分析任务的背景知识,进一步设计了提升的方案。
(3)写作。因为我们这个工作是在模拟数据上开展的评估,还没有找到现实应用的实际数据集,如何说清楚工作的实用价值,面临很大挑战。因此,整个论文以评估为基调,充分说明实验模拟的合理,并力争挖掘一些有说服力的结论来力证效果,比如,有任务特征背景的提升攻击方案非常有效,50次交互能偷到627个交集元素之类的。
(4)Rebuttal。第一轮意见并不好,审稿人洞悉了我们的缺点:这是模拟数据集上的评估,并怀疑是因为数据集的设计才有这么好的攻击效果;有专家还认为我们是一个理论评估的工作,而不是一个现实攻击的工作,并指出,论文改写成本太高,一轮投稿周期可能无法完成。但是受益于题目比较新颖,整体上收获1个minor、1个major、2个Reject and resubmit。我的学生有点悲观,认为机会不大。但是,依据经验,我知道打动审稿人的要点在于,说服他们我们的工作完全可以推广到现实应用中。因此,我们在Rebuttal里进行了有力回复。虽然前期研究过程我们没有得到有效的数据集,但是积累了大量现实应用的案例,在Rebuttal里我们通过列举这些现实案例,试图说服审稿人我们设计的攻击方法可以推广到现实案例中;并给出我们的修改思路,证明我们可以按时完成论文重塑。
(5)修改稿。很显然,我们的Rebuttal奏效了,审稿人给出Major的结论,但明确指出,如果不能在3个及以上现实场景里证明可以通过实际的推理攻击猜测到有用信息,则可能无法被认可。我们被推到了悬崖上,重压之下重新去调研现实场景里的数据集,经过2个多月的深层挖潜,终于找到了国外新冠病人的数据集、某广告厂商的精准广告推荐和广告率转化的数据集。同时,审稿人的意见让我们专注于现实应用中的推理攻击,而不是脆弱性评估,最终经过不断迭代,我们将工作锁定为Set membership leakage概念的提出、利用这种泄露的推理攻击方案的设计。历时6个月,在USENIX Security 2022最后一轮投稿周期投出稿件,一个多月后收到了Accept的结论。
5.结束语
最后,我想说的是,有很多人学术做的比我好的多。我之所以写这个博文,其实之前好多次有这个冲动,作为学院的学科带头人,我多次想与学院的老师们分享,提升老师们的站位和要求,鼓励老师们追求卓越;作为研究生指导者,多次想与同行分享经验,国内一样可以做一流研究,鼓励大家都争先创优。顶会论文,实际代表的是一种研究的态度,但是,毕竟数量是少的,难度的是大的,而很多考核、研究生毕业要求,让我们失去了做顶级研究的耐心和条件,那么,就让我们在适合自己的环境下做一个相对卓越的工作吧。
希望这个博文对大家有一些启发,不足之处,还请多多批评指正。