- 博客(14)
- 收藏
- 关注
原创 mpc4j--psi同态加密中的参数(一)
感悟--最近小猫咪喜欢看人与自然,咱也不知道能看懂啥。写这篇主要是在浏览代码的时候总有些参数混淆概念。
2024-05-08 14:59:03 912 1
原创 测试mpc4j--pir(三)
实际上这样改不是最优解,因为服务端的传输数据会突然变的小很多,实际上应该对不同数据量匹配不同的参数,mpc4j中只举例了三组数据,在APSI的Parameters文件中有大数据量更为精准的匹配,比如16M/256M的,然后多项式大循环中有多层for嵌套,异常复杂,涉及逻辑没敢动,就把几个循环parallel了一下,速度蹭就上来了,然后布谷hash中的insertItems进行了一个分块尝试。对于2^25(3KW)的server端数据,用16M-4096做实验查询,堆溢出。对比看到明显计算量变小时间也缩短。
2024-04-26 15:16:58 933 6
原创 测试mpc4j--pir(二)
这段代码涉及了复杂的加密计算和多项式运算,以及根据不同情况选择不同的计算方法,确保了在关键词 PIR 系统中正确地处理查询并生成响应。经过和其他项目包的对比,发现KwPirMain的查询竟然是单条交互的,也就是说如果查询数量是1000就要进行1000次交互。这里创建的Hash表是随机填充的,HashKey是根据hash类型(这里选3,也就是要有三个随机生成的HashKey):使用计算的PRF、指定数量的桶以及随机生成的哈希密钥生成哈希桶。方法生成,传入了多项式模数的度数、明文模数和系数模数的位数。
2024-04-17 14:14:30 1807 4
原创 测试mpc4j--pir(一)
1 修改配置conf文件 mpc4j-main\mpc4j-s2pc-pir\conf\cppir\conf_cpkspir_client.conf。和之前的一篇分析的流程是一样的,入口函数,server,client,重点计算方法,这里增加了重点参数的调整。1)查询数量1000,100W 62.0955667分钟 1小时也太漫长了。server_log_set_size = 20,22,24 依然是2的幂次值。查询数量是2,根据查询数量去做2次pir交互。index_pir是Index PIR。
2024-04-11 09:13:28 1073 1
原创 APSI--ORPF C++实现过程分析
由于所有项目都使用只有发送者知道的散列函数进行散列,因此接收者不会从了解发送者的散列项目的部分中获得任何好处。设置预期的压缩模式:如果需要使用不同的压缩模式且系统支持 zlib 和 zstd 压缩模式,则检查接收到的查询的压缩模式是否为 zstd。如果是,将压缩模式切换为 zlib,并更新预期的压缩模式为 zlib;如果不是,则将压缩模式切换为 zstd,并更新预期的压缩模式为 zstd。这段代码主要负责接收所有结果部分、处理查询结果,并验证结果的正确性。确保查询对象的压缩模式与预期的压缩模式相等。
2024-03-26 11:49:23 1823 1
原创 测试mpc4j--psi(一)
这个 JAR 文件包含了项目的编译代码、资源文件以及所有项目依赖的库,它是一个“含有依赖项”的 JAR 文件。:这是项目的主要 JAR 文件,它包含了项目的编译代码和资源文件,但不包括项目依赖的库。它适合用作库的发布,其他项目如果需要使用您的库,则可以将此 JAR 文件添加到它们的依赖中。由于项目中每个包的错综复杂的依赖关系,因此不建议单独进行package,比如我对mpc4j-s2pc-pso单独进行package的时候会报一堆依赖Jar包没有,这时候千万不要按照提示剥洋葱一点点Install,
2024-03-21 14:50:34 2059 2
原创 APSI简单测试的例子Java代码研究(一)
由于原算法库是APSI的C++算法库,为了Java调用方便寻找其他类库的相似算法,以mpc4j为例子。mpc4j的mpc4j-s2pc-opf。mpc4j的mpc4j-s2pc-pso。在查看源码的时候意外的发现了mpc4j的。根据上一篇对APSI简单例子的流程分析。模块有引用到APSI。
2024-03-18 17:28:58 336
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人