Swift Simple XOR加密
发布时间:2020-12-14 04:58:59 所属栏目:百科 来源:网络整理
导读:我试图在 Swift中做一个简单的xor加密例程.我知道这不是一个特别安全或很好的方法,但我只需要简单.我知道代码是如何在 Javascript中实现的,我只是在将它转换为Swift时遇到了麻烦. 使用Javascript: function xor_str(){ var to_enc = "string to encrypt"; v
我试图在
Swift中做一个简单的xor加密例程.我知道这不是一个特别安全或很好的方法,但我只需要简单.我知道代码是如何在
Javascript中实现的,我只是在将它转换为Swift时遇到了麻烦.
使用Javascript: function xor_str() { var to_enc = "string to encrypt"; var xor_key=28 var the_res="";//the result will be here for(i=0;i<to_enc.length;++i) { the_res+=String.fromCharCode(xor_key^to_enc.charCodeAt(i)); } document.forms['the_form'].elements.res.value=the_res; } 你能提供的任何帮助都会很棒,谢谢! 解决方法
我建议像这样扩展String.
extension String { func encodeWithXorByte(key: UInt8) -> String { return String(bytes: map(self.utf8){$0 ^ key},encoding: NSUTF8StringEncoding)! } 从里到外, >对self.utf8的调用从字符串创建一个字节数组[UInt8] 这是我的Playground屏幕截图. 更新:适用于Swift 2.0 extension String { func encodeWithXorByte(key: UInt8) -> String { return String(bytes: self.utf8.map{$0 ^ key},encoding: NSUTF8StringEncoding) ?? "" } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |