我的系统允许用户将他们的工作保存为草稿。在我坚持之前,我想加密数据。我正在研究这个 -
AESKey k = new AESKey();
AESEncryptorEngine a = new AESEncryptorEngine(k);
a.encrypt(byte[] data_input, int input_offset, byte[] data_output, byte[] output_offset);
然而,我需要坚持一个对象。有没有办法从对象获取byte []流?另外,考虑到移动设备的处理器/内存限制,我应该考虑哪种加密标准?
谢谢,
的Teja。
答案 0 :(得分:3)
你提到你要坚持你的对象;这是否意味着您打算将其放在PersistentStore中?如果是这样,您可以访问一些内置保护。
如果没有代码签名密钥,您可以使用ControlledAccess
对象阻止来自应用的任何访问。您可以在此处找到更多信息:http://www.blackberry.com/developers/docs/4.1api/net/rim/device/api/system/ControlledAccess.html
答案 1 :(得分:0)
要保留对象,请让您的课程 implement Serializable
和write the object to a file。有关序列化的详细信息,请参阅here。
如果需要加密,你可以加密文件。我很确定Blowfish是嵌入式设备的方法。它使用非常少的内存,而基于ARM的处理器上的AES则慢一点。
答案 2 :(得分:0)
据我所知,ControlledAccees例程实际上并没有对对象进行加密,它们只是让查找持久对象变得非常困难。
是否有人知道如何真正加密对象,或将其转换为字节流,以便可以使用BlowFish / TwoFish /其他加密技术对其进行加密?