ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java – 使用Realm浏览器在Mac上查看realm文件的加密密钥

2019-08-28 21:13:28  阅读:449  来源: 互联网

标签:android java realm


我使用Realm作为我的Android应用程序,我想使用Realm浏览器查看我的mac上的default.realm文件,但它要求加密密钥.
enter image description here
我没有通过提供“.encryptionKey(key)”明确地在Realm Configuration中进行加密.那么我必须提供什么加密密钥?默认情况下是否有加密?我在Android Studio上使用Realm插件2.0.2,我的Realm Browser在Mac上使用2.0.1.
我也尝试在我的代码中提供这样的encryptionKey(key):

byte[] key = new byte[64];
new SecureRandom().nextBytes(key);
RealmConfiguration config = new RealmConfiguration.Builder()
.encryptionKey(key)
.build();

并尝试向浏览器提供相同的哈希值(128长度)以打开文件,但没有运气.我在SO中找到了与如何使用adb pull检索文件相关的答案,但我对这个加密部分一无所知.在这方面的任何帮助都会很棒.

解决方法:

那么问题就是文件已损坏.来自Realm浏览器的错误消息相当误导,要求加密密钥.

由于我的手机没有root,我无法使用adb pull直接检索文件.

adb pull /data/data/<packagename>/files/ .

我通过将内容复制到系统上的文件来使用另一个命令,这会导致损坏.

这是最终为我工作的命令.

./adb exec-out run-as <packagename> cat /data/data/<packagename>/files/default.realm > ~/Documents/foo/foo.realm

我以前没有把exec-out放在命令中,这就是腐败的原因.

标签:android,java,realm
来源: https://codeday.me/bug/20190828/1755755.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有