安全多方计算(MPC)从入门到精通:简易教程

简介:JUGO平台针对企业级用户,打造基于MPC的安全数据交易平台。本节内容将介绍具体如何经过在本地部署MPC节点的教程,完成数据协同计算。html

1.编程语言&开发环境前端

1.1.计算逻辑编程语言java

  Frutta语言linux

1.2.IDE开发环境nginx

  操做系统windows(后续支持linux),chrome浏览器(需先安装Frutta谷歌浏览器插件)算法

1.3.MPC应用部署chrome

  环境搭建(要求linux系统)编程

  安装nginxwindows

  安装JDK,配置JDK环境变量api

2.安装插件

  使用JUGO-IDE以前,须要先安装Frutta谷歌浏览器插件。安装后可在JUGO-IDE中使用Frutta语言编写算法。

  安装步骤:

  第一步,请点击下载Frutta谷歌浏览器插件的安装包,并在本地解压。

  第二步,在Chrome浏览器地址栏输入chrome://extensions/,启用开发者模式,而后点击按钮“加载已解压的扩展程序”,选择插件所在的文件夹便可。

注意:因为该插件暂未上传Google插件商店,因此只能以开发者模式运行。打开chrome://extensions/。因为是以开发者模式运行该插件的,Chrome浏览器会弹出“请停用以开发者模式运行的扩展程序”的提示,此时点击“取消”才能够继续使用Frutta谷歌浏览器插件。

3.JUGO-IDE

  JUGO-IDE是JUGO技术产品面向开发者提供的用来编写MPC算法的开发工具。

  结合Frutta谷歌浏览器插件,开发者无需搭建任何环境就能够快速编写、编译、运行和发布算法。

  经过使用JUGO-IDE,开发者可以使用Frutta语言编写算法,并经过JUGO-IDE编译成可在JUGO技术产品上执行的电路文件和java模板文件。详情请点击

4.Frutta语言

  Frutta是矩阵元为安全多方计算的算法电路文件生成而专门定制的编程语言。它是一门类高级语言,也是一门面向过程的编程语言。Frutta支持大部分运算符、数据类型,表达方式灵活实用。目前只有矩阵元提供的在线ide能够进行编译运行。ide能够把Frutta文件编译成可在JUGO平台上执行的电路文件。详情请点击

5.开发编程

5.1.计算逻辑编程

  计算逻辑:为实现某个场景下的安全多方计算所编写的算法。

  使用Frutta语言,在JUGO-IDE中能够快速完成计算逻辑的编程、验证和发布。

5.2.JUGO-SDK

  JUGO-SDK是JUGO技术产品面向开发者提供的安全多方计算应用开发工具包。

  开发者经过使用JUGO-SDK与其余JUGO技术产品,能够高效快速的开发MPC(安全多方计算)应用。每一个集成了SDK的应用将做为计算节点接入到计算网络中。应用调用SDK能够实现安全多方计算以知足业务需求。

集成流程:

1.IDE上编写电路算法;

2.编译算法并生成电路文件JAVA包装类;示例查看

3.项目中引入步骤2中的JAVA包装类;

4.集成API,完成应用开发;

5.3.应用部署

  应用包含三大部分的代码。包括:1)算法代码、2)服务端应用代码、3)前端页面展现代码。

  实现流程:

  1. MPC应用部署

  准备工做:

  环境搭建(要求linux系统)

  安装nginx

  安装JDK,配置JDK环境变量

  1. 项目打包

  描述:

  项目依赖gradle进行构建;

  可经过gradle指令进行打包,文件输出在同级build目录下;

  可经过JAVA IDE打包可执行文件;

  gradle指令:      

>clean build
Copy
复制代码
  1. 项目运行

  描述:

  在环境中执行如下指令进行监听;

  后续可经过统计目录nohup.out查看输出日志

  指令参考:

>nohup java -jar MPCAcceptApp.jar &//启动接收方节点

>nohup java -jar MPCStartApp.jar &//启动发起方节点
Copy
复制代码
  1. 项目调试

  部署完毕。

  在浏览器中输入 http://ip:port/swagger-ui.html,可调试发起方接口。

  在浏览器中输入 http://ip:port/swagger-ui.html,可调试接收方接口。

更多内容能够参考视频:安全多方计算MPC视频课程

产品实操请访问:JUGO开放服务平台

相关文章
相关标签/搜索