问题标签 [finite-field]
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.
python - 在有限域上分解多元多项式
我正在做一个项目,我需要在有限域上分解给定的二元多项式,是否有任何 python 库可以帮助我?Sympy 无法在有限域上分解多元多项式,那么还有其他库可以完成这项工作吗?
algorithm - 算法比中间相遇更好
我得到n = 256
64 位二进制向量 ∈ GF(2) ^64。我还得到了一个k
和一个目标向量T
,并且我需要k
从n
向量中准确地选择而不重复,使得它们的总和(mod 2)为 T。保证存在这样的解决方案。
显然,中间相遇攻击将在大约 O(n^(k / 2)) 内给出解决方案。但是,我想知道k
与 64 维的数量相比,是否存在更快的解决方案,比如 k = 16。我认为是这样的原因是 16 个向量只能跨越 16 维空间,所以存在这种解决方案是一个强大的信息。
我也想过将 减少n
到 64,因为我们总是可以选择 64 个跨越 GF(2)^64 的向量。但是,我认为这会违反k
要求的“完全”部分。还是我在这里遗漏了一些明显的东西?
感谢您的阅读,任何讨论都会有所帮助。
python - 如何在 F_{2^8} 中进行加法和乘法运算
我想在 F_{2^8} 中执行加法和乘法
我目前有这个代码,它似乎适用于加法,但不适用于乘法;问题似乎是,当我以 100011011 取模(表示 x^8 + x^4 + x^3 + x + 1)时,它似乎没有这样做。另一个想法是使用 numpy.polynomial ,但它不那么直观。
c# - 伽罗瓦域中乘法的正确性
我正在开发代码以在 Galois 字段 gf(2^8) 中进行算术运算,我认为我在乘法运算中得到了错误的结果。
Multiply(1, 2) 的结果给出了 2 的正确值,但 Multiply(240, 249) 给出了 112 而不是预期的 148。
现在我不确定这个值是否适用于俄罗斯农民乘法。
也许还有另一种算法可以给出正确的结果?
python - 有限域中的 Python 线性代数
有没有办法在 Python 的有限域中进行线性代数和矩阵运算?我需要能够在有限域 F2 中找到非方阵的零空间。我目前找不到这样做的方法。我试过 galois 包,但它不支持 scipy 零空间功能。在 sympy 中计算零空间很容易,但是我不知道如何在 sympy 中的有限域中工作。
aes - 非素数域的模减少
我开始使用 AES,需要计算 S 字节表的倒数。我正在尝试使用生成器 3 生成用于反演的指数和对数表。指数工作正常,直到达到 3 ^ 8,即 0xff。指数表
我无法计算过去 255 涉及模减少。我假设这里的 Mod 是 256,因为最大值是 255。我在 0xff(255) * 3 = 257 之后生成的值。如何执行计算以获得 0x1a?
谢谢你。