创建自定义安全编码/解码转换

时间:2012-06-22 14:12:34

标签: macos osx-lion core-foundation

我想为Lion的新Security.framework创建一个Base16编码器和解码器,以补充kSecBase32EncodingkSecBase64Encoding。 Apple的文档显示了如何使用SecTransformRegister编写自定义转换(Caesar密码)。据我所知,以这种方式注册的自定义变换必须在数据上对称运行,不能用于对数据进行不同的编码和解码。有没有人知道是否可以编写自定义编码器/解码器,如果可以,怎么做?

1 个答案:

答案 0 :(得分:0)

我没有办法将自定义编码器绑定到SecEncodeTransformCreate(),这是kSecBase32Encoding和其他编码器所基于的。但是很容易创建一个接受“编码”bool的变换,并利用它来决定是编码还是解码。在CaesarTransform示例中,他们附加了一个名为key的属性SecTransformSetAttribute()。你做同样的事情,但是用bool encode

当然,您可以创建编码转换和解码转换。