Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
未验证编码的字节数组中的Swift字符串?_Swift_String_Encoding_Character Encoding_Argon2 Ffi - Fatal编程技术网

未验证编码的字节数组中的Swift字符串?

未验证编码的字节数组中的Swift字符串?,swift,string,encoding,character-encoding,argon2-ffi,Swift,String,Encoding,Character Encoding,Argon2 Ffi,我正在努力解决这个问题。我正在实现一个现有的协议,因此在设计上没有任何灵活性,协议将函数的各种输入视为字节序列。但是,该实现将输入视为Strings。我是否可以使用任何编码将任意字节序列转换为字符串,而无需任何有效性约束,即所有可能的字节序列都可以无错误地转换?您可以将任意非结构化二进制数据Base64转换为有效的ut8表示形式,然后传入。奇怪的是,他们让算法在String而不是Data上运行,但我想这是可以接受的,因为散列算法特别针对密码。而且,看起来这段代码泄漏了它分配的所有cString,

我正在努力解决这个问题。我正在实现一个现有的协议,因此在设计上没有任何灵活性,协议将函数的各种输入视为字节序列。但是,该实现将输入视为
String
s。我是否可以使用任何编码将任意字节序列转换为
字符串
,而无需任何有效性约束,即所有可能的字节序列都可以无错误地转换?

您可以将任意非结构化二进制数据Base64转换为有效的ut8表示形式,然后传入。奇怪的是,他们让算法在
String
而不是
Data
上运行,但我想这是可以接受的,因为散列算法特别针对密码。而且,看起来这段代码泄漏了它分配的所有
cString
,如果有机会,你能再检查一下吗?只是出于我自己的好奇,幸运的是我不能进行base64编码;协议依赖于双方散列完全相同的数据,因此base64编码将打破这一点。至于泄漏,我对Swift是完全陌生的(这实际上是我的第一个项目),所以我相信你的话:)欢迎使用Swift:)嗯,恐怕你可能会在这里。可以考虑修改库以接受<代码>数据< /代码>。然后,您可以使用方便的方法连接到/来自
String
,使库仍然像今天一样工作。然后,您可以向回购协议提交请求,这对其他人也可能有用。或者,您可以只查找已经使用
数据的其他实现。您可以将任意非结构化二进制数据Base64转换为有效的ut8表示形式,然后将其传入。奇怪的是,他们让算法在
String
而不是
Data
上运行,但我想这是可以接受的,因为散列算法特别针对密码。而且,看起来这段代码泄漏了它分配的所有
cString
,如果有机会,你能再检查一下吗?只是出于我自己的好奇,幸运的是我不能进行base64编码;协议依赖于双方散列完全相同的数据,因此base64编码将打破这一点。至于泄漏,我对Swift是完全陌生的(这实际上是我的第一个项目),所以我相信你的话:)欢迎使用Swift:)嗯,恐怕你可能会在这里。可以考虑修改库以接受<代码>数据< /代码>。然后,您可以使用方便的方法连接到/来自
String
,使库仍然像今天一样工作。然后,您可以向回购协议提交请求,这对其他人也可能有用。或者,您可以只查找已经使用
数据的其他实现。