Slalom 项目使用教程

Slalom 项目使用教程

slalom Fast, Verifiable and Private Execution of Neural Networks in Trusted Hardware slalom 项目地址: https://gitcode.com/gh_mirrors/sla/slalom

1. 项目介绍

Slalom 是一个用于在可信硬件中加速深度神经网络评估的框架。它通过选择性地将计算外包给不受信任(但速度更快)的同地设备,同时保持计算的完整性和隐私性。当前实现中,Slalom 在 Intel SGX enclave 中运行神经网络的评估,并将所有线性层的计算委托给同一机器上的不受信任的 GPU。

该项目基于以下论文:

  • Slalom: Fast, Verifiable and Private Execution of Neural Networks in Trusted Hardware

免责声明:此软件仅用于 Slalom 框架的性能测试,不适合用于任何真实世界的数据或计算。它包含许多安全漏洞,便于测试、调试和性能测量。

2. 项目快速启动

2.1 环境准备

在开始之前,请确保您已经安装了以下依赖:

  • Intel SGX 驱动和 SDK for Linux
  • TensorFlow (版本 1.8.0),并支持 GPU
  • CUDA 安装

2.2 克隆项目

git clone https://github.com/ftramer/slalom.git
cd slalom

2.3 安装依赖

pip install -r requirements.txt

2.4 构建项目

2.4.1 构建自定义 TensorFlow Ops
cd slalom/App
make
make -f Makefile_cu
2.4.2 构建 SGXDNN 库
cd slalom/SGXDNN
make
2.4.3 构建 SGX 应用程序
cd slalom
make

2.5 运行 Slalom

2.5.1 完整性评估
python -m python.slalom.scripts.eval [vgg_16 | mobilenet | mobilenet_sep] sgxdnn --batch_size=8 --max_num_batches=4 [--verify] [--verify_batched] [--verify_preproc] [--use_sgx]
2.5.2 隐私和完整性评估
python -m python.slalom.scripts.eval_slalom [vgg_16 | mobilenet | mobilenet_sep] --batch_size=8 --max_num_batches=4 [--blinding] [--integrity] [--use_sgx]

3. 应用案例和最佳实践

3.1 应用案例

Slalom 主要用于需要在可信硬件中执行深度神经网络评估的场景,特别是在需要保证计算的完整性和隐私性的情况下。例如:

  • 金融行业:在处理敏感交易数据时,确保计算的完整性和隐私性。
  • 医疗行业:在处理患者数据时,确保数据不被泄露。

3.2 最佳实践

  • 性能优化:通过调整 --batch_size--max_num_batches 参数,优化计算性能。
  • 安全性增强:在真实世界部署中,确保所有安全漏洞已被修复,并实现必要的额外安全措施,如安全通信通道和可验证的证明。

4. 典型生态项目

  • Intel SGX:Slalom 依赖 Intel SGX 提供的可信执行环境。
  • TensorFlow:Slalom 使用 TensorFlow 进行神经网络的构建和评估。
  • CUDA:Slalom 使用 CUDA 加速 GPU 上的计算。

通过以上步骤,您可以快速启动并使用 Slalom 项目,确保在可信硬件中安全地执行深度神经网络评估。

slalom Fast, Verifiable and Private Execution of Neural Networks in Trusted Hardware slalom 项目地址: https://gitcode.com/gh_mirrors/sla/slalom

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

樊会灿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值