我想为Lion的新Security.framework
创建一个Base16编码器和解码器,以补充kSecBase32Encoding
和kSecBase64Encoding
。 Apple的文档显示了如何使用SecTransformRegister
编写自定义转换(Caesar密码)。据我所知,以这种方式注册的自定义变换必须在数据上对称运行,不能用于对数据进行不同的编码和解码。有没有人知道是否可以编写自定义编码器/解码器,如果可以,怎么做?
答案 0 :(得分:0)
我没有办法将自定义编码器绑定到SecEncodeTransformCreate()
,这是kSecBase32Encoding
和其他编码器所基于的。但是很容易创建一个接受“编码”bool的变换,并利用它来决定是编码还是解码。在CaesarTransform示例中,他们附加了一个名为key
的属性SecTransformSetAttribute()
。你做同样的事情,但是用bool encode
。
当然,您可以创建编码转换和解码转换。