专栏名称: 复旦微电子集团
国内从事超大规模集成电路的设计、开发和提供系统解决方案的专业集团公司。公司于1998年创办,是国内成立最早、首家上市的股份制集成电路设计企业。现已形成安全与识别、智能电表、非挥发存储器、智能电器四大成熟的产品线和系统解决方案。
目录
相关文章推荐
神嘛事儿  ·  哎哟,痛醒,我去,要命 ... ·  4 天前  
功夫财经  ·  华为真的太难了 ·  6 天前  
券商中国  ·  马斯克,重大宣布! ·  6 天前  
第一财经商业数据中心  ·  新消费周报 | ... ·  6 天前  
51好读  ›  专栏  ›  复旦微电子集团

【数字赛道命题二】高性能Paillier密码算法 加速系统设计与实现

复旦微电子集团  · 公众号  ·  · 2024-03-27 11:06

正文


01 赛题简介

云计算的出现使得海量数据的处理正逐渐从用户本地转向云服务器,与此同时也带来了数据泄露的问题。同态加密是一种允许对加密数据进行运算的加密技术,是在保证数据安全的前提下实现数据分享的一种理想方案。因此,同态加密在隐私计算领域具有重要的地位,也被应用到了例如联邦学习、隐私数据求交等领域。


Paillier作为一种半同态加密算法,具有可以无限次进行同态加法运算的特性,同时由于其较为优秀的性能,受到了大量隐私计算开发者的青睐,但是同态计算相比明文计算性能仍然相当缓慢,而许多隐私计算的应用场景数据量非常巨大,同时又有一定实时性的要求,因此需要对其进行加速,以满足现有的应用场景。


本赛道要求参赛者使用数字电路的方式给出Paillier算法的加速系统的设计与实现,并在指定的FPGA型号上进行综合实现。初赛将根据各个参赛队伍提交的内容进行打分,选取其中表现优秀的队伍进入决赛。


02 赛题要求

2.1   功能要求

在Xilinx Virtex7 690T(xc7vx690tffg1761-2)芯片或开发板Virtex-7 VC709开发板上设计一个Paillier算法加速系统,使用PCIe(XDMA)作为数据输入接口。


使用数字电路方式安全实现半同态加密算法Paillier的计算,要求如下:

① 需要支持参数n=pxq,n为2048比特,p和q为长度为1024比特的素数;

② 支持加密、解密、同态加法、密文乘明文这4类操作。

③ 可以是单个加速核,也可以是多个加速核心

④ 可以使用DDR存储数据

⑤ 选择合适的总线结构,首要目标是获得最大吞吐量,在此基础上尽量减少输入到输出的latency。


在设计时,为简化工作,输入接口可以等效为位宽为256bit/Cycle@250MHz的AXI。需要对设计进行仿真和综合实现,不要求进行板上测试。


2.2   安全要求

在不降低算法安全性的情况下可对算法参数进行调整。


2.3   验证要求

输入格式:

AXI向0x00000000_00000000地址连续写入数据(突发模式),测试共4组,输入数据为:

第1组——加密:(2048bit明文+2048bit随机数)×100,000组;

第2组——解密:4096bit密文×100000组;

第3组——同态加法:(4096bit密文加数1+4096bit密文加数2)×100,000组;

第4组——密文乘明文:(4096bit密文+2048bit明文)×100,000组。


输出格式

数据发送完成后,AXI从0x00000001_00000000连续读出数据(突发模式),数据格式为:

第1组——加密:4096bit密文×100,000组;

第2组——解密:2048bit明文×100000组;

第3组——同态加法:4096bit密文×100,000组;

第4组——密文乘明文:4096bit密文×100,000组。


4组分开进行,每组单独统计性能和结果是否正确。


2.4   输出要求

1)书面报告,需要包括:

    a)算法调研和实现方案说明;

    b)数字电路设计说明;

    c)吞吐率及加速设计瓶颈分析。

2)RTL代码。

3)综合实现报告,包括:

    a)时序报告;

    b)资源利用率报告。


2.5   加分要求

1)使用procise且提供使用报告;

2)调研中分析或提出优化算法;

3)其它额外且有意义的工作。


03 评分标准(初赛)

初赛总分100分,评分标准如下


分类

项目

细则

分数

书面报告

总体

结构完整、内容和逻辑清晰,图文规范。

5

调研

算法及优化调研全面,理解准确。

5

设计

系统方案合理,描述清晰,重点明确。

5

算法模块设计合理,描述清晰。

5

功能[1]

加密、解密、同态加法、密文乘明文功能正确

25

性能[2]

加密吞吐率优秀

10

解密吞吐率优秀

10

同态加法吞吐率优秀

10

密文乘明文吞吐率优秀

10

代码

风格

模块划分清晰

3

注释丰富

2

综合报告

时序

时序通过,不存在违例情况

5

资源

资源利用充分和高效

5

加分项

工具试用

如使用procise且提供使用报告,在调研中分析提出某些优化算法,但是基于FPGA资源无法实现

(10)

合计

100

(110)


注释:

[1] 加密、解密、同态加法、密文乘明文每个功能5分,全部正确得25分。

[2] 性能得分的前提是对应计算功能正确。


04 赛事安排

4.1   参赛队伍要求

每支参赛队伍人数上限为4人,在书面报告中需要注明每位参赛成员的分工(例如:算法方案、代码编写、功能验证等)


4.2   赛事流程

阶段

内容

初赛阶段

各支队伍根据本赛道要求完成并提交相应设计和书面报告

公布名单

公布入围决赛队伍名单

决赛阶段

决赛暂定采用线上答辩形式

颁奖典礼

对获奖队伍颁发奖项

注:具体安排以组委会通知为主。

赛事联络平台


第六届复微杯赛事联络QQ群:794853590

群名:复微杯电子设计大赛4群

本群主要用于赛事通知,建议所有参赛者加群


“复微杯大学生电子设计大赛”公众号是“复微杯”指定唯一官方发布平台。

请长按二维码关注“复微杯”,第一时间获取大赛资讯。


“复旦微电子集团”B站号是“复微杯”指定唯一B站官方发布平台。

请各位及时关注,后续将在此平台进行赛题解析及指导。