如何在swift3中加密数据?当我加密数据并打印它时。它以字节为单位显示我。我使用RNCryptor

如何在swift3中加密数据?当我加密数据并打印它时。它以字节为单位显示我。我使用RNCryptor,swift,Swift,字符串到数据: let ciphertext = RNCryptor.encrypt(data: testString.data(using: String.Encoding.utf8)!, withPassword: password) print(ciphertext) 返回字符串: var backToString = String(data: ciphertext, encoding: String.Encoding

字符串到数据:

let ciphertext = RNCryptor.encrypt(data: testString.data(using: 
              String.Encoding.utf8)!, withPassword: password)


print(ciphertext)
返回字符串:

var backToString = String(data: ciphertext, encoding: 
                 String.Encoding.utf8) as String!


print(backToString)
对于解密,请使用RNCryptor.decrypt方法,而不是默认的Stringdata:

然后在操作原始数据时对其进行操作:

var backToString = String(data: originalData, encoding: 
                 String.Encoding.utf8) as String!


print(backToString)

在转换为字符串之前,您应该先对RNCryptor.decryptor进行解密。它正在工作。现在,我必须在不解密的情况下添加该密码。例如,var a=cipher+number。number是字符串格式。当我这样做时,它会向我显示错误,例如二进制操作数无法应用于字符串和数据。根据您所指的-如果我理解的话正确-您正在尝试对字符串进行加密,然后希望在不解密的情况下向其添加内容。如果这是您想要的,那么这就降低了加密本身的意义。加密是为了避免原始数据容易访问,否则为什么要首先加密?
var backToString = String(data: originalData, encoding: 
                 String.Encoding.utf8) as String!


print(backToString)