带你读《云原生机密计算最佳实践白皮书》——部署隐私集合求交方案(4)

简介: 带你读《云原生机密计算最佳实践白皮书》——部署隐私集合求交方案(4)

《云原生机密计算最佳实践白皮书》——07解决方案——Intel Confidential Computing Zoo: Intel机密计算开源解决方案——部署隐私集合求交方案(3) https://developer.aliyun.com/article/1230738?groupCode=aliyun_linux


6.2 C++版本

6.2.1 编译C++程序

在每个启动的Docker容器中编译程序:

cd /gramine/CI-Examples/psi/cpp
./build.sh

在多台服务器上部署不同分布式节点的情况下,需要配置 dynamic_confifig.json 文件,填入待通信方节点在编译应用阶段生成的MR_ENCLAVE,MR_SIGNER,ISV_PROD_ID,ISV_SVN的值,如:

{
 "verify_mr_enclave" : "on" ,
 "verify_mr_signer" : "on" ,
 "verify_isv_prod_id" : "on" ,
 "verify_isv_svn" : "on" ,
 "sgx_mrs": [
 {
 "mr_enclave" : "1e4f3efafac6038dadaa94fdd248b93c82ae9f0a16642ffff4bb07afe442aac 
 56e" ,
 "mr_signer" : "5add213ac35413033647621e2fab91edcc8b82f840426803feb8a603be2ce
 8d4" ,
 "isv_prod_id" : "0" ,
 "isv_svn" : "0"
 }
 ]
}


6.2.2 运行两方求交程序

在每个Docker的容器中的 /gramine/CI-Examples/psi/cpp 路径下分别执行对应的参与方命令:

# Kill the previous server process
pkill -f gramine
# Run the server
cd runtime/server
gramine-sgx grpc -host=localhost:50051 -confifig=dynamic_confifig.json
# Run the client1
cd runtime/data_provider1
gramine-sgx grpc -host=localhost:50051 -confifig=dynamic_confifig.json -is_chief=true -client_
num=2 data_dir="data1.txt" client_name="data_provider1"
# Run the client2
cd runtime/data_provider2 
gramine-sgx grpc -host=localhost:50051 -confifig=dynamic_confifig.json -is_chief=false -client_
num=2 data_dir="data2.txt" client_name="data_provider2"

每个客户端都会得到交集结果:

car
cat
train

6.2.3 运行三方求交程序

在每个Docker的容器中的 /gramine/CI-Examples/psi/cpp 路径下分别执行对应的参与方命令:

# Kill the previous server process
pkill -f gramine
# Run the server
cd runtime/server
gramine-sgx grpc -host=localhost:50051 -confifig=dynamic_confifig.json
# Run the client1
cd runtime/data_provider1
gramine-sgx grpc -host=localhost:50051 -confifig=dynamic_confifig.json -is_chief=true-client_ 
num=3 data_dir="data1.txt" client_name="data_provider1"
# Run the client2
cd -
cd runtime/data_provider2
gramine-sgx grpc -host=localhost:50051 -confifig=dynamic_confifig.json -is_chief=false-client_ 
num=3 data_dir="data2.txt" client_name="data_provider2"
# Run the client3
cd -
cd runtime/data_provider3
gramine-sgx grpc -host=localhost:50051 -confifig=dynamic_confifig.json -is_chief=false-client_ 
num=3 data_dir="data3.txt" client_name="data_provider3"

每个客户端都会得到交集结果:

car
cat
train


相关文章
|
2月前
|
Cloud Native 测试技术 数据安全/隐私保护
云原生之使用Docker部署Teedy轻量级文档管理系统
【5月更文挑战第8天】云原生之使用Docker部署Teedy轻量级文档管理系统
100 1
|
2月前
|
运维 监控 Cloud Native
构建高效稳定的云原生应用部署策略
【5月更文挑战第17天】 在现代软件工程实践中,云原生架构已成为实现敏捷开发、持续交付和微服务治理的关键。本文深入探讨了如何构建一个既能满足业务快速迭代需求,又能保障系统稳定性的云原生应用部署策略。通过分析容器化技术、微服务设计原则以及自动化部署工具的选择与使用,提出了一种综合部署流程优化方案。文章旨在为运维工程师提供一种系统性解决方案,以应对复杂多变的生产环境挑战。
31 1
|
7天前
|
Kubernetes Cloud Native 微服务
企业级容器部署实战:基于ACK与ALB灵活构建云原生应用架构
这篇内容概述了云原生架构的优势,特别是通过阿里云容器服务Kubernetes版(ACK)和应用负载均衡器(ALB)实现的解决方案。它强调了ACK相对于自建Kubernetes的便利性,包括优化的云服务集成、自动化管理和更强的生态系统支持。文章提供了部署云原生应用的步骤,包括一键部署和手动部署的流程,并指出手动部署更适合有技术背景的用户。作者建议在预算允许的情况下使用ACK,因为它能提供高效、便捷的管理体验。同时,文章也提出了对文档改进的建议,如添加更多技术细节和解释,以帮助用户更好地理解和实施解决方案。最后,展望了ACK未来在智能化、安全性与边缘计算等方面的潜在发展。水文一篇,太忙了,见谅!
|
12天前
|
存储 关系型数据库 分布式数据库
PolarDB,阿里云的云原生分布式数据库,以其存储计算分离架构为核心,解决传统数据库的扩展性问题
【7月更文挑战第3天】PolarDB,阿里云的云原生分布式数据库,以其存储计算分离架构为核心,解决传统数据库的扩展性问题。此架构让存储层专注数据可靠性,计算层专注处理SQL,提升性能并降低运维复杂度。通过RDMA加速通信,多副本确保高可用性。资源可独立扩展,便于成本控制。动态添加计算节点以应对流量高峰,展示了其灵活性。PolarDB的开源促进了数据库技术的持续创新和发展。
216 2
|
14天前
|
运维 Cloud Native 云计算
云原生架构的演进:从微服务到无服务器计算
【6月更文挑战第30天】 在数字化转型和技术创新的浪潮中,云原生技术以其灵活性、可扩展性和成本效益成为企业IT战略的核心。本文将探索云原生架构的关键概念,从早期的微服务架构到现代的无服务器计算模型,揭示这一演变如何推动企业更高效地开发、部署和管理应用程序。我们将深入讨论这些技术背后的原理,以及它们如何帮助企业实现敏捷性、弹性和自动化运维。
|
22天前
|
运维 Cloud Native 开发者
云原生技术演进:从微服务到无服务器计算
【6月更文挑战第22天】 云原生技术如同一场持续的演化之旅,它不断重塑着应用的开发与部署方式。本文将探讨云原生技术如何从微服务架构演变至无服务器计算,以及这一转变对开发者和运维人员带来的深远影响。通过分析容器化、持续集成/持续部署(CI/CD)、微服务治理等关键概念,我们将揭示云原生技术如何在提高应用的可伸缩性、灵活性和可靠性的同时,也提出了新的挑战和机遇。
|
16天前
|
Cloud Native 安全 开发者
云原生架构的演进与实践:从微服务到无服务器计算
本文深入探讨了云原生技术的最新进展,特别关注微服务和无服务器计算模型。通过分析相关研究数据和行业案例,文章揭示了云原生架构如何推动现代应用开发,提升运维效率,并实现资源的最优化配置。文中详细讨论了云原生生态系统中的关键组成部分,包括容器化、自动化管理工具和服务网格,以及它们如何共同促进敏捷性和可扩展性。此外,文章还分析了云原生安全策略的重要性,以及如何在保障安全的同时,保持系统的灵活性和高效性。
|
2月前
|
Cloud Native 测试技术 数据库
【云原生之Docker实战】使用Docker部署flatnotes笔记工具
【5月更文挑战第17天】使用Docker部署flatnotes笔记工具
109 8
|
2月前
|
弹性计算 安全 微服务
【阿里云云原生专栏】容器网络技术前沿:阿里云Terway网络方案详解
【5月更文挑战第26天】阿里云Terway是高性能的容器网络方案,基于ECS的ENI实现,提供低延迟高吞吐的网络服务。它简化网络管理,实现安全隔离,并与阿里云服务无缝集成。Terway由CNI、Node和Controller组成,适用于微服务、混合云和多租户环境,为企业数字化转型中的复杂网络需求提供强大支持。
258 1
|
2月前
|
运维 监控 JavaScript
【阿里云云原生专栏】Serverless架构下的应用部署与运维:阿里云Function Compute深度探索
【5月更文挑战第21天】阿里云Function Compute是事件驱动的无服务器计算服务,让用户无需关注基础设施,专注业务逻辑。本文详述了在FC上部署应用的步骤,包括创建函数、编写代码和部署,并介绍了运维功能:监控告警、日志管理、版本管理和授权管理,提供高效低成本的计算服务。
249 6