问题标签 [ntl]
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.
c++ - 如何将字符串转换为 ZZ 数字?
我正在使用NTL 库来实现 ElGamal 加密/解密算法。我已经知道它正在工作,但算法希望将消息转换为整数,以便对其进行加密。
因此,如果我输入一个像 1234 这样的数字,一切正常,但是我将如何能够将 C++ 字符串(std::string)转换为 ZZ 数字,然后从该 ZZ 数字转换回字符串?
乐:
ZZ 它是一个代表大量数字的类。
例如:18287348238476283658234881728316274273671623781254124517353
所以基本上我希望以“Hello World”为例,逐个字符地运行它并获取字符的ascii代码,所以我会得到一个数字:“72 101 108 108 111 32 87 111 114 108 100”
并且然后我需要将此数字转换回字符串“Hello World”
或者也许有更好的方法。
c++ - 为 Windows 编译和使用 NTL c++ 库
我已经使用 Microsoft Visual Studio 2008 为 c++ 编译了 NTL inifite 精度整数算术库。我按照说明在此站点上使用 Visual Studio 界面而不是从命令提示符处进行了操作。实际上,我宁愿从命令提示符处执行此操作,但我不知道该怎么做。
无论如何,我编译了库,现在我想在命令提示符下使用该库编译一个程序。我正在尝试编译的程序已在 linux 系统上进行了测试,我在其中使用以下内容对其进行了编译
没关系 gmp 的东西,我没有在 Windows 上安装它。这纯粹是一个可选的东西,可以让 NTL 运行得更快。无论如何,这在 linux 上运行良好。现在在 Windows 上我写了以下内容
但这会导致以下错误:
好像,我的mpqs.h文件没有包含在编译过程中?另外我不明白为什么它抱怨向量类型的 .push_back() ?
非常感谢您的帮助!
c++ - 在 Linux 上用 c++ 编译我的 Boost/NTL 程序
我编写了一个客户端程序和一个服务器程序,它使用 NTL 库和 Boost::Asio 为整数分解应用程序进行客户端/服务器通信,使用 C++。
双方都由几个头文件和 cpp 文件组成。这两个项目都可以在 Visual Studio 中的 Windows 上单独编译。我所做的只是将 NTL 和 Boost 的包含路径添加到两个项目中:
此外,对于这两个项目,我在 VS 中为这两个项目添加了两个库路径:
并在附加依赖项下添加:
如前所述,它在 Windows 上编译得很好。但是当我将代码放在大学提供的Linux机器上时,我尝试使用以下语句进行编译
执行此操作后,我收到了一个 huuuge 错误,我在此处发布了该错误。知道如何解决这个问题吗?
c++ - 冲突 std::set 和 NTL::vec_ZZ
我正在尝试将 std::set 用于从 NTL-Library 定义的任意长度整数向量,但由于某种原因它不起作用。它完全适用于库定义的 ZZ 整数:
有谁知道为什么第一次插入有效而第二次无效?
c++ - 如何使用 CMake 包含 NTL
我使用这一行来编译一个简单的程序:
你如何将它包含到 CMake 中?
不工作。并给出以下错误:
和
也不起作用(但我认为这通常是错误的)。
谢谢!
c++ - 使用 NTL 库的编译器错误
我正在尝试使用 NTL 库,但我总是收到有关未定义符号的编译器错误。
示例(取自 NTL 文档):
结果:
NTL 标头位于 中/usr/include/NTL
,因此应包括在内。
有什么问题?我是否以错误的方式编译?如果是这样,我在哪里可以找到正确的方法,因为文档中似乎没有“如何使用 ntl 编译”之类的东西?
如果我使用using namespace NTL
而不是NTL_CLIENT
没有任何变化:
c++ - 从大整数 ZZ(在 NTL 中声明)到十六进制
我目前正在使用 NTL 来处理大整数。这个库中的大整数被声明为 ZZ。我想从 ZZ 数字变为十六进制。但是,正如我检查的那样,NTL 不支持从 ZZ 到十六进制的转换。
所以我的问题是我怎样才能从 ZZ (或者可能代表大十进制数字的字符串)到十六进制形式?如果有人可以提供帮助,我更喜欢使用这个库的功能直接从 ZZ 转到十六进制
exponentiation - NTL 库中多项式、RR 和 ZZ 的幂运算
我正在使用 NTL 库来实现 RSA 密码分析。但是我经常遇到一些关于类型不匹配/不兼容的问题。
例如-
我需要
RR
n^((h-1.0)/(h*k-1.0)) 的类型值,其中 n 是 typeZZ
,h 和 k 是 int。总指数是浮点数或双精度数。我试过 ^ , pow (仅适用于RR
基数), power (仅适用于长指数)。我最终使 n,h,k 所有类型的 RR 都使用 pow,但这真的是这样做的方法吗?如何做 (p(x))^k 其中 p(x) 是一些多项式?我不得不循环使用 mul 函数 k 次。还有如何初始化多项式?似乎它可以从标准输入中获取类似于 python 列表的东西,但我不能在程序中这样设置它。所以,
或者
不起作用。我不得不使用
SetCoeff
单独设置每个系数。
这些只是我现在记得的两个例子。我遇到了太多的不便。
Iirc,我们甚至不能将 ZZ 和 RR 相乘。
visual-studio-2010 - 如何在 Visual Studio 2010 中配置 NTL 库
我正在尝试在我的第一个 Visual Studio 2010 项目中配置 NTL 库。我按照以下说明操作:http ://www.shoup.net/ntl/doc/tour-win.html
我创建了一个新的 Win32 项目,名为ntl
.
然后,从Project
->Add Existing Items
并选择src
文件 NTL 库文件夹中的所有文件。
然后,我单击Project
-> Properties
-> Configuration Properties
-> C/C++
->Additional Include Directories
并选择include
了NTL
库文件夹中的目录。
最后,我尝试Build
->Build ntl
但我收到错误消息(对于 src 中的每个文件):
c - 如何将 ZZ 转换为二进制?
我正在使用 NTL 库来实现我的代码,我必须将 ZZ 数字转换为二进制,然后从中获取一个子字符串并将该子字符串转换为十进制。我怎样才能做到这一点?
上面的代码给了我这个错误:“分段错误(核心转储)”
编辑:上面的代码现在正在工作,但它没有给出八进制字符串,而是返回垃圾值。