ios - 我在哪里可以获得 128 个字符的十六进制编码的加密密钥,以使用 Realm Studio 打开加密的 Realm?
问题描述
我们的 Swift 应用程序使用 Realm (10.7.6) 并且它是加密的。我想在 Realm Studio (10.1.2) 中打开 .realm 文件,但它要求提供“128 个字符的十六进制编码加密密钥”。我不知道从哪里得到这个。
顺便说一句,在我的测试应用程序中,如果我不加密,我可以使用 Realm Studio 打开该 .realm 文件,因此 RealmSwift 和 Realm Studio 的版本是兼容的。
为了在应用程序中加密领域,我在这里getKey()
使用领域文档中的代码。在该代码中生成的密钥只有 64 个字节,而不是 Realm Studio 要求的 128 个字节。如果我在控制台中得到“64 字节”。如果我添加一个断点并没有好多少:print(key)
po key
▿ 64 bytes
- count : 64
▿ pointer : 0x0000600003a14160
- pointerValue : 105553177166176
我从哪里获得 Realm Studio 要求的“128 个字符的十六进制编码加密密钥”?
更新:正如下面 Jay 的回答中提到的,我使用 Johannes Lund 的回答从这里将Data
对象转换为十六进制字符串。果然,我可以把那个字符串粘贴到那个 Realm Studio 窗口中。
遗憾的是,正如 Realm 网站上所记录的,您不能在多个进程中打开加密的 Realm。我一直在使用 Realm Studio 来帮助测试我们的集合观察者,但现在我们必须以另一种方式来做。
解决方案
推荐阅读
- android - 为什么私有变量不在飞镖中初始化?
- python - VS Code Dark+ 主题在 Jupyter Notebook 上不起作用。未着色的功能和模块。寻找解决方案
- java - (JDBC-Rowset) java.sql.SQLException: 找不到适合 jdbc:mysql://localhost:3306/student_manage 的驱动程序
- excel - 如何根据 Selenium Java 中的标签文本获取标签 ID?
- java - 为什么文档中的超链接会导致找不到页面
- pdf - 如何在保持格式的同时使用 borb 和 Translate API 翻译 PDF?
- node.js - nodejs 从克隆的 git 存储库中获取目录中的最新文件
- c++ - 如何使用 cin>> 模拟 scanf("%*c) 和 scanf(":") 行为
- android - 如何在列表颤动中构建搜索栏?
- list - 从嵌套列表中检索信息 (Flutter)