Swift 3 - AES 加密 Heimdall - 零填充
Swift 3 - AES Encryption Heimdall - Zero Padding
我在用海姆达尔
https://github.com/henrinormak/Heimdall
用于生成我的 1024 位 RSA 密钥和加密消息:
let heimdall = Heimdall(publicTag: publicTag, publicKeyData: data)
当我使用 utf8 编码和 base64 编码时,我将其传递给加密方法:
let utf8Encoded = self.mystring.data(using: String.Encoding.utf8)!
let base64Encoded = utf8Encoded.base64EncodedData()
let encrypted = heimdall.encrypt(base64Encoded)
print("encrypted \(encrypted!)") // -> 160 bytes !! why not 128
加密部分应该是 128 字节而不是 160。
任何人都可以帮助我到达那里吗?
我如何继续生成 1024 位 rsa 密钥并使用这些密钥加密消息以最终得到 128 字节数组?
谢谢和问候!!
来自海姆达尔文档:Note on encryption/decryption:
有效负载已构建,包含加密密钥,后跟加密消息。
然后这是Base64编码,长度增加1/3。
因此输出为(aes密钥+加密数据长度+填充)Base64编码。
我在用海姆达尔
https://github.com/henrinormak/Heimdall
用于生成我的 1024 位 RSA 密钥和加密消息:
let heimdall = Heimdall(publicTag: publicTag, publicKeyData: data)
当我使用 utf8 编码和 base64 编码时,我将其传递给加密方法:
let utf8Encoded = self.mystring.data(using: String.Encoding.utf8)!
let base64Encoded = utf8Encoded.base64EncodedData()
let encrypted = heimdall.encrypt(base64Encoded)
print("encrypted \(encrypted!)") // -> 160 bytes !! why not 128
加密部分应该是 128 字节而不是 160。
任何人都可以帮助我到达那里吗?
我如何继续生成 1024 位 rsa 密钥并使用这些密钥加密消息以最终得到 128 字节数组?
谢谢和问候!!
来自海姆达尔文档:Note on encryption/decryption:
有效负载已构建,包含加密密钥,后跟加密消息。
然后这是Base64编码,长度增加1/3。
因此输出为(aes密钥+加密数据长度+填充)Base64编码。