" SASLprep" " stringprep"的个人资料用c ++实现

时间:2016-06-29 07:49:46

标签: c++ windows pdf encryption aes

我在PDF和PDF参考手册中实现AES 256位加密状态算法3.2a计算加密密钥的第一步

1。通过使用SASLprep处理输入字符串,从Unicode输入生成密码字符串 (IETF RFC 4013)stringprep(IETF RFC 3454)的配置文件,然后转换为UTF-8表示。

我的问题是如何将字符串转换为字符串准备?是否有任何免费的Windows库可以执行字符串准备的SASLprep配置文件,我找到了适用于Unix的库而不是用于Windows。

1 个答案:

答案 0 :(得分:0)

查看https://www.gnu.org/software/libidn。 它指定有一个Windows解决方案(Visual Studio)。 对于所有2.x版本,这都被证明是错误的,但是1.17具有一个win32目录,其中包含适用于Visual Studio C ++的正确内容。您需要设置一些定义,至少是LIBIDN_BUILDING和LIBIDN_STATIC,这是您猜到的,而不是dll的静态库。我使用VS2019用很少的警告(只有一些指针减法->长)可以编译所有版本(并链接到适用的版本)。 包括SASL(准备)。 如果需要,可以通过将源文件替换为较新的版本来检查是否可以完成较新的版本。告诉我们你是否愿意。