Xray-core icon indicating copy to clipboard operation
Xray-core copied to clipboard

FFeature Request: Implement Quantum-Safe Encryption with Kyber to Prevent Future Decryption by Quantum Computers

Open kyber1024 opened this issue 2 years ago • 6 comments

Description of the issue As the development of quantum computing advances, the need for quantum-safe encryption becomes increasingly important. Traditional encryption methods like TLS are at risk of being broken by powerful quantum computers. One major concern is that censorship departments or other malicious actors may currently store TLS-encrypted data, intending to decrypt it in the near future once quantum computing capabilities are sufficiently advanced. To ensure the long-term security of data and communications, I propose the implementation of Kyber as an enhancement to TLS in Xray. Possible solussion Kyber, a lattice-based, post-quantum cryptographic algorithm, as an enhancement to the existing TLS 1.3 encryption in our tool. This would provide an additional layer of security that is resistant to quantum computing attacks, while maintaining the proven security of TLS 1.3. The integration should be seamless and optional, allowing users to choose between the standard TLS 1.3 encryption and the enhanced TLS 1.3 encryption with Kyber. In addition, there are existing practice on Kyber Reference: https://pq-crystals.org/kyber/index.shtml

kyber1024 avatar Mar 21 '23 11:03 kyber1024

when go tls supports it

Fangliding avatar Apr 15 '24 17:04 Fangliding

@Fangliding It's time to work, dude. https://pkg.go.dev/crypto/tls#Config.CurvePreferences

mayampi01 avatar Sep 25 '24 02:09 mayampi01

@Fangliding It's time to work, dude. https://pkg.go.dev/crypto/tls#Config.CurvePreferences

I've already noticed it, but utls still not updated so rprx doesn't want to add it to core see https://github.com/XTLS/Xray-core/pull/3813#issuecomment-2351361367

Fangliding avatar Sep 25 '24 02:09 Fangliding

没有指纹伪装的话意义不大,等 uTLS 更新 @gaukas

RPRX avatar Sep 26 '24 01:09 RPRX

REALITY sessionid 仍用 X25519 共享密钥来加解密,因为相关代码仅作认证不加密应用数据,且客户端始终会发 X25519 临时公钥

RPRX avatar Sep 26 '24 01:09 RPRX

In https://github.com/XTLS/Xray-core/pull/3884: Let's try to use SSL In this issue: How about quantum-resistance?

mmmray avatar Oct 07 '24 10:10 mmmray

implemented in #3991

Fangliding avatar Nov 13 '24 09:11 Fangliding