sync.com的桌面和移动平台是如何允许零知识的,这是完全清楚的。然而,当我试图理解在使用浏览器(即web应用程序上传)时,“零知识”理论上是如何可能的,这让我大吃一惊。
所以我用Chrome登录到sync.com。然后我点击upload a file按钮,我的电脑上的一个文件被浏览器实时上传和加密了?然后浏览器必须知道我的加密密钥,即我的登录密码!这是否意味着浏览器(和sync.com)在我登录时保留我的登录凭据?据我所知,凭据不应该这样保存,现代实践是JWT令牌之类的。
无论如何,浏览器是否具有如此复杂的加密功能(与桌面应用程序相当),还是我的文件被上传到服务器并在那里加密?不管是哪种方
对于SSL和证书如何在服务器和浏览器之间工作,我没有很好的理解。所以我从这个网站上得到了一些关于的文章,不管他们对我说什么都不是很清楚
他们说
1) A browser requests a secure page (usually https://).
2) The web server sends its public key with its certificate.
3) The browser checks that the certificate was issued by a trusted party
(usually a trusted root CA), tha
有没有人知道一个签名算法,可以在所有这些平台上工作。
服务器将通过Java程序生成RSA公钥和私钥。然后,客户端应用程序(移动电话)将需要对来自服务器的消息进行解码,该消息使用私钥(公钥存储在设备上)进行签名。
下面的值适用于Android和Java,然而,我不确定它们如何适用于其他平台。
//For the server signed message
public static final int RSA_KEY_SIZE = 2048;
public static final String SIGNATURE_ALGORITHM = "SHA256withRSA";