使用RNCryptor解密base64编码和AES加密的字符串

用户名

我只是RNCryptor的新手,但是我得到了一个示例字符串,该字符串经过加密和base64编码。我正在尝试使用RNCryptor解密函数以纯文本格式查看字符串。

我尝试了以下方法:

func decryptStr(_ sample : String){

    let sampleBase64Decoded = sample.fromBase64Data()

    do {
        let decryptedNSData = try RNCryptor.decrypt(data: sampleBase64Decoded!, withPassword: "secretPass")
        let decryptedNSString = NSString(data: decryptedNSData, encoding: String.Encoding.utf8.rawValue)
        print("decrypted : \(decryptedNSString)")
    }
    catch let error as NSError {
        print("issue decrypting :\(error.localizedDescription)")
    }

}

我这样称呼它:

decryptStr("R79gQDNTt/0+cjU7pduqfA==")

和fromBase64看起来像这样:

extension String {

func fromBase64() -> String? {
    guard let data = Data(base64Encoded: self, options: NSData.Base64DecodingOptions(rawValue: 0)) else {
        return nil
    }

    return String(data: data, encoding: String.Encoding.utf8)!
}

}

我收到错误connect.RNCryptor.Error错误2。为什么会这样?这与字符串既以base 64编码又经过加密的事实有任何关系吗?

密码正确。

罗布·纳皮尔

您的Base-64数据(R79gQDNTt/0+cjU7pduqfA==)不是RNCryptor消息(第一个字节不正确,并且太短)。

AES加密没有“标准”格式。您必须将解密器与加密器进行匹配。RNCryptor实现了一种特定格式,该格式实现了大多数临时解决方案中所缺少的重要安全优势。如果此数据来自服务器,则也需要在其中使用RNCryptor实现,或重写Swift代码以实现服务器使用的任何格式(这看起来是临时自定义格式,所以我不能说如何实施)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在不使用任何给定库(例如Base64,AES等)的情况下,如何在Java中创建自己的字符串编码/解码或加密/解密脚本?

来自分类Dev

Golang,使用AES和Base64加密字符串

来自分类Dev

使用RSA Java解密Base64加密的字符串后的垃圾值

来自分类Dev

使用RSA Java解密Base64加密的字符串后的垃圾值

来自分类Dev

iOS使用des ecb解密base64编码的字符串

来自分类Dev

使用RijndaelManged类的AES加密:Baes64编码和解码AES加密字符串

来自分类Dev

如何解密以base64编码的shaX二进制字符串?

来自分类Dev

C#AES Base64加密(基于字符串)

来自分类Dev

通过URL后不保留以Base64编码的加密字符串吗?

来自分类Dev

使用AES-128加密和解密字符串

来自分类Dev

使用C ++,Openssl和AES加密和解密字符串

来自分类Dev

使用C ++,Openssl和AES加密和解密字符串

来自分类Dev

AES 256和Base64加密的字符串在iOS 8上有效,但在iOS 7上被截断

来自分类Dev

Android base64编码的字符串无效?

来自分类Dev

Base64编码的字符串不匹配

来自分类Dev

Base64编码的位图返回冗长的字符串

来自分类Dev

base64编码的字符串是否唯一?

来自分类Dev

在MSBuild中将字符串编码为Base64

来自分类Dev

特定字符串中的 Base64 编码差异

来自分类Dev

Base64 字符串编码 C# 与 TSQL

来自分类Dev

SHA256 字符串的 Base64 编码

来自分类Dev

Base64编码的字符串在perl和Java中有所不同

来自分类Dev

Python-重新解码和编码后更改字符串(zlib + base64)

来自分类Dev

加密8字节字符串/ base64编码/最大长度20字节

来自分类Dev

用AES和BASE64编码的SSH私钥加密的大小如何小于指定的大小?

来自分类Dev

如何使用base64解码编码的图像字符串

来自分类Dev

使用ThinkFree PDF Viewer显示原始PDF数据的Base64编码的字符串

来自分类Dev

使用base64编码字符串生成PDF

来自分类Dev

如何使用base64解码编码的图像字符串

Related 相关文章

  1. 1

    在不使用任何给定库(例如Base64,AES等)的情况下,如何在Java中创建自己的字符串编码/解码或加密/解密脚本?

  2. 2

    Golang,使用AES和Base64加密字符串

  3. 3

    使用RSA Java解密Base64加密的字符串后的垃圾值

  4. 4

    使用RSA Java解密Base64加密的字符串后的垃圾值

  5. 5

    iOS使用des ecb解密base64编码的字符串

  6. 6

    使用RijndaelManged类的AES加密:Baes64编码和解码AES加密字符串

  7. 7

    如何解密以base64编码的shaX二进制字符串?

  8. 8

    C#AES Base64加密(基于字符串)

  9. 9

    通过URL后不保留以Base64编码的加密字符串吗?

  10. 10

    使用AES-128加密和解密字符串

  11. 11

    使用C ++,Openssl和AES加密和解密字符串

  12. 12

    使用C ++,Openssl和AES加密和解密字符串

  13. 13

    AES 256和Base64加密的字符串在iOS 8上有效,但在iOS 7上被截断

  14. 14

    Android base64编码的字符串无效?

  15. 15

    Base64编码的字符串不匹配

  16. 16

    Base64编码的位图返回冗长的字符串

  17. 17

    base64编码的字符串是否唯一?

  18. 18

    在MSBuild中将字符串编码为Base64

  19. 19

    特定字符串中的 Base64 编码差异

  20. 20

    Base64 字符串编码 C# 与 TSQL

  21. 21

    SHA256 字符串的 Base64 编码

  22. 22

    Base64编码的字符串在perl和Java中有所不同

  23. 23

    Python-重新解码和编码后更改字符串(zlib + base64)

  24. 24

    加密8字节字符串/ base64编码/最大长度20字节

  25. 25

    用AES和BASE64编码的SSH私钥加密的大小如何小于指定的大小?

  26. 26

    如何使用base64解码编码的图像字符串

  27. 27

    使用ThinkFree PDF Viewer显示原始PDF数据的Base64编码的字符串

  28. 28

    使用base64编码字符串生成PDF

  29. 29

    如何使用base64解码编码的图像字符串

热门标签

归档