Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support ECDSA and Curve25519 for https://www.mtgjson.com/ #1064

Open
hostilefork opened this issue Apr 8, 2020 · 0 comments
Open

Support ECDSA and Curve25519 for https://www.mtgjson.com/ #1064

hostilefork opened this issue Apr 8, 2020 · 0 comments

Comments

@hostilefork
Copy link
Member

@kealist was trying to read https://www.mtgjson.com/files/AllCards.json and it did not support any of the cipher suites we use. Their TLS 1.2 options all use Curve25519, so I went ahead and added support for picking curves since that wasn't too difficult.

But besides all using "x25519", there's another difference...that all of them use ECDSA instead of RSA. This is a bit less obvious how to implement.

More generally--the TLS code needs a revisiting now that there is more of a sound set of cryptography primitives to build on.

Here are the ciphers supported by TLS 1.2 currently on mtgjson:

TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 (0xc02b)   ECDH x25519 (eq. 3072 bits RSA)   FS	128
OLD_TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 (0xcc14)   ECDH x25519 (eq. 3072 bits RSA)   FS	256P
TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 (0xcca9)   ECDH x25519 (eq. 3072 bits RSA)   FS	256P
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA (0xc009)   ECDH x25519 (eq. 3072 bits RSA)   FS   WEAK	128
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 (0xc023)   ECDH x25519 (eq. 3072 bits RSA)   FS   WEAK	128
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 (0xc02c)   ECDH x25519 (eq. 3072 bits RSA)   FS	256
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA (0xc00a)   ECDH x25519 (eq. 3072 bits RSA)   FS   WEAK	256
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 (0xc024)   ECDH x25519 (eq. 3072 bits RSA)   FS   WEAK
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant