我想在Qt中创建两个程序,一个服务器和另一个客户端,我的服务器程序插入用户和客户信息,如fingerptint和另一个重要数据,在客户端用户和客户使用他们的信息处理一些隐私的东西,这些程序必须在网络上发送信息。
所以我认为在服务器和客户端使用Postgresql数据库只需连接到数据库并获取登录等所需的信息。 现在这是我的问题
非常感谢
答案 0 :(得分:1)
快速版:
正确使用SSL将为您提供单向信任,客户端可以在其中验证服务器的身份。服务器仍然必须依靠密码来识别客户端,但它可以通过SSL来实现。
您可以使用客户端证书进行真正的双向验证。
如果您正在执行任何隐私敏感操作,请考虑使用您自己的自签名CA并通过已知安全方式分发CA证书。有太多的suborned sub-CA签署通配符证书,供各国用于透明SSL解密,让我信任SSL CA,以保护持不同政见者和人权工作者,因为他们正在使用由敌对他们的人提供或控制的互联网连接
不要相信我的话;仔细阅读。
听起来您希望使用间歇性连接进行异步复制。
这很难。我建议在应用程序级别执行此操作,您可以在其中实现特定于应用程序的同步计划和冲突解决逻辑。您可以使用触发器维护的更改列表表来记录自DB上次查看以来发生的更改。不要使用时间戳保持同步,因为服务器和客户端之间的时钟漂移会导致您错过更改。您可能希望在主数据库上使用类似pgq自动收报机的内容。
太开放,提供的信息不足以开始回答。