Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 加密难题_Java_Android_Sql_Security_Encryption - Fatal编程技术网

Java 加密难题

Java 加密难题,java,android,sql,security,encryption,Java,Android,Sql,Security,Encryption,我正在构建一个应用程序,可以从服务器发送和接收数据。很简单。在断开连接的情况下,我还开始编程存储数据的功能,直到获得连接。这些数据将本地存储在SQLite数据库中 数据(而不是表)正在加密,我将在服务器端存储单个用户salt/IV 这就是我问题的症结所在。如果用户没有连接,那么他/她就无法连接到我的服务器来检索他们的salt/IV,如果我将他们的个人密钥存储在设备上的某个位置,那么任何人都可以看到它 我是否可以采用一种常见的做法来确保数据安全?我发现很难相信没有互联网连接就没有安全存储数据的方法

我正在构建一个应用程序,可以从服务器发送和接收数据。很简单。在断开连接的情况下,我还开始编程存储数据的功能,直到获得连接。这些数据将本地存储在SQLite数据库中

数据(而不是表)正在加密,我将在服务器端存储单个用户salt/IV

这就是我问题的症结所在。如果用户没有连接,那么他/她就无法连接到我的服务器来检索他们的salt/IV,如果我将他们的个人密钥存储在设备上的某个位置,那么任何人都可以看到它


我是否可以采用一种常见的做法来确保数据安全?我发现很难相信没有互联网连接就没有安全存储数据的方法,但话说回来,我对整个服务器通信业务相对来说还是新手。

只是扮演魔鬼代言人的角色:谁能说服务器没有受到攻击,并且从攻击者那里提供了私钥/salt/IV?这可以通过受损的接入点实现,例如,也可以通过一些Android恶意软件将主机名重定向到替换服务器的不同IP地址

这些潜在的问题不值得担心。您不负责保持用户设备的完整性。如果我是你,我会将用户设备上的加密密钥/凭据存储在内部/专用应用程序存储中

如果用户有一个根或受损的系统,你不应该受到责备,我猜用户有更多的担心


除此之外,您还需要问自己,您的应用程序是否值得攻击者研究、寻址和利用。

该“安全程度”链接的可能副本很有帮助,但不是副本。在服务器知道第一次本地加密是如何完成的情况下,对您的数据进行两次加密?第一次加密当然不会有盐。该应用程序将处理金钱和一些相当敏感的信息,因此我肯定会看到有人想要在信息发送到服务器之前修改信息。我不能详细说明,但请相信我说的,这会引起一些严重的问题。我从来没有真正想过你要说什么关于安全,但是,你是对的。确保用户自己的设备安全不是我的责任。谢谢你的回答,朋友。