问题标签 [seal]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
481 浏览

c# - Azure 函数无法加载 Nuget 包 - 在本地工作

我一直在开发一个 azure 函数,它会接收加密数据并对这些数据进行一些操作然后返回。但是,我遇到了 Microsoft SEAL Nuget 包的问题。当我在本地运行我的函数时没有问题并且我可以使用该包,但是当我将我的函数发布到天蓝色时,我收到一条警告说:

该函数仍然发布到 azure,但是当我尝试发送请求时,我收到错误 500,这仅在使用 SEAL 功能时。当我检查有关 azure 的功能见解时,失败给出了错误: Could not load file or assembly 'SEALNet, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' 根据我的研究,我认为这可能是一个依赖问题,但我无法解决这个问题。如果我没有正确格式化,请提前感谢 欢迎编辑。

0 投票
1 回答
4374 浏览

c# - 无法将 Json 反序列化为类型,无法找到构造函数

我在反序列化发送到 azure 函数的 JSON 时遇到了一些问题。首先,我打算将一组带有 post 的 Ciphertext 类型发送到 azure,反序列化 JSON 以恢复我的数据,然后对该数据进行操作。我的类如下所示被调用,它有一个typesampleClass属性:ciphertextCiphertext

这是我试图序列化/反序列化的类。

要发布我使用 HttpClient 的数据,我将其发布为 JSON,如下所示:

在我的天蓝色函数中,我试图将 Json 作为流读取并将其反序列化为 sampleClass [],但是这给了我一个错误。

抛出的错误如下所示:

执行“Function1”(失败,Id=1be7633e-6b6a-4626-98b7-8fec98eac633)[11/02/2020 15:50:48] System.Private.CoreLib:执行函数时出现异常:Function1。Newtonsoft.Json:找不到用于 Microsoft.Research.SEAL.Ciphertext 类型的构造函数。一个类应该有一个默认构造函数、一个带参数的构造函数或一个标有 JsonConstructor 属性的构造函数。路径“[0].ciphertext.CoeffModCount”,第 1 行,位置 32。

当我尝试反序列化我的 JSON 时抛出此错误,我该如何解决这个问题?

0 投票
2 回答
571 浏览

c++ - 带有 CKKS 的 Microsoft SEAL 中的矢量点积

我目前正在尝试使用 Microsoft SEAL 库实现矩阵乘法方法。我创建了一个vector<vector<double>>作为输入矩阵并用CKKSEncoder. 然而,编码器将整个向量打包成一个向量,Plaintext所以我只有一个vector<Plaintext>,这让我失去了 2D 结构(当然我会有一个vector<Ciphertext>后加密)。拥有一维向量允许我完全访问行而不访问列。

我设法在编码之前转置矩阵。这允许我将第一个矩阵的行和第二个矩阵的列(转置形式的行)按分量相乘,但我无法将结果向量的元素加在一起,因为它被打包成一个密文。我只需要弄清楚如何使向量点积在 SEAL 中工作以执行矩阵乘法。我错过了什么还是我的方法错了?

0 投票
1 回答
5955 浏览

c++ - 将 FetchContent_Declare 与 CMAKE_ARGS 一起使用

我正在使用cmake v3.13,我想将我ExternalProject_Add()SEAL库更改为:

当我使用时,ExternalProject_Add()我已经使用过CMAKE_ARGS -DBUILD_SHARED_LIBS=ON,这不适FetchContent_Declare()用于仅下载库。

SEAL v3.5.2 CMakeLists.txt使用它来检查是否需要构建共享库:

有没有办法下载SEALFetchContent_Declare(),然后在构建它时使用一些CMakeLists设置将CMAKE_ARGS -DBUILD_SHARED_LIBS=ON参数传递给下载的库?

0 投票
2 回答
463 浏览

plaintext - 实数 CKKS Encoding Microsoft SEAL 明文形式

我想知道实数CKKS编码中明文的大小和形式,以小N为例:

  • 输入向量数组= [1.1, 2.2]
  • N = 8,比例增量= 2^2 = 4
  • 插槽数 = N/2 = 4

明文形式:

  • ptx = [4.4 8.8 0.0 0.0],大小为 N/2 或:
  • ptx = [4.4 8.8 0.0 0.0 | 0.0 0.0 0.0 0.0] 大小为 N 或:
  • ptx = [4.4 8.8 0.0 0.0 | 4.4 8.8 0.0 0.0] 大小为 N

谢谢您的帮助!

0 投票
1 回答
399 浏览

c++ - 如何在 Microsoft SEAL 3.1 中使用 CRT 批处理技术?

你能告诉我 SEAL 3.1 是否支持 PolyCRTBuilder 类吗?我正在尝试运行以下程序,但由于未在此范围内声明该类而失败。

/** 假设我有两个数组x = [1,2,3,4,5]xMean = [3,3,3,3,3]. 我使用 PolyCRTBuilder(xCiphertext 和 xMeanCiphertext)组成并加密了这两个数组。如果我减去两个密文( xCiphertext MINUS xMeanCiphertext ),我应该得到xResult = [-2, -1, 0, 1, 2]但在同态减法之后我得到了xResultDecrypted = [40959, 40960, 0 ,1, 2]。我可以将溢出结果与普通模数集相关联,但是否有解决此问题的方法。这是代码:*/

0 投票
1 回答
68 浏览

laravel - Authorize.Net 支付网关徽标问题

如果我们不包含下面给出的代码,那么在现场支付是否有可能失败?

我正在使用 Laravel 框架。

0 投票
1 回答
601 浏览

matrix - 同态加密:使用 PALISADE 库的矩阵向量乘法

致所有他的专家:

我想用非常大的矩阵(600000 x 55)实现矩阵向量乘法。目前,我能够以少量输入执行加法、乘法、内积等运算。当我尝试将这些操作应用于较大的输入时,我会遇到错误,Invalid next size (normal)或者我的主内存用完了,直到操作系统终止进程(退出代码 9)。

您是否有任何建议/示例如何归档实现矩阵向量乘法或类似方法的有效方法?(使用 BFV 和 CKKS)。

PS:我正在使用 PALISADE 库,但如果您有更好的建议,例如 SEAL 或 Helib,我也很乐意使用它们。

0 投票
1 回答
355 浏览

security - 对大型加密数据应用同态运算

目前正在尝试使用PALISADE 库进行同态加密。

我想在大型加密输入上应用简单的运算,例如加法和乘法。例如输入A[3200]和输入B[4096]两个向量/int值数组都被加密。有了这两个输入Enc(A)Enc(B)我想应用一个乘法:

就我而言,上述要求的实现可以通过两种不同的方式解决:

  1. 将输入打包在单个密文(类似 SIMD)中,对于我可以用来EvalIndexAt()从加密输入中获取正确值的操作。

  2. 分别加密来自 A 和 B 的每个值。

我不太确定所描述的解决方案在效率方面是最好的。第一种方法的主要优点是整个输入只需要一个加密过程,但这也带来了缺点,即我总是必须使用该 EvalAtIndex()方法访问正确的元素,并且输入越大,获取的计算越慢EvalAtIndexKeyGen()。(至少在我的机器上)

第二种方法似乎更合适,因为EvalAtIndex()不需要,但它带来了单独加密每个值的成本,这需要相当长的时间。

有什么想法建议吗?

0 投票
1 回答
201 浏览

installation - 安装 Mircosoft SEAL 失败

当我使用 vcpkg 安装 SEAL 时,会出现以下情况:

C:\src\vcpkg\vcpkg\buildtrees\seal\config-x86-windows-dbg-out.log

C:\src\vcpkg\vcpkg\buildtrees\seal\config-x86-windows-dbg-err.log

what's the maining of "Zstandard: must be static" ???

请告诉我如何修复它或如何在 Windows 上安装 SEAL。谢谢!