PQ3 and PQC ๐๏ธ
Apple์์ ์กฐ๋ง๊ฐ iMessage์ PQ3๋ผ๋ ์ํธํ ํ๋กํ ์ฝ์ ์ ์ฉํ ์์ ์ด๋ผ๊ณ ๋ฐํํ์ต๋๋ค.
๊ฐ์ธ์ ์ผ๋ก PQC1์ ๊ด์ฌ์์๊ณ , ์ผ์ ์ผ๋ก๋ ์ ์ ์ด ์์ด ์ข ์ข ์ฐพ์๋ณด๊ณค ํ์๋๋ฐ, ์ด๋ฒ PQ3์ ๋ํ ๋ด์ฉ์ PQC๋ฅผ ์ค์ ๋ก ์๋น์ค์ ์ ์ฉํ๋ ๊ฒฝ์ฐ๋ผ์ ์ฌ๋ฏธ์๊ฒ ์ฝ์์ต๋๋ค. ๋ค์ผ๋ก PQC rekeyring์ ๋ํ ๋ด์ฉ๋ ์์ด ํฅ๋ฏธ๋ก์ ์ต๋๋ค. ์ค๋์ PQC์ PQ3์ ๋ํ ๋ด์ฉ์ผ๋ก ๊ฐ๋จํ๊ฒ ๊ธ ์์ฑํด๋ด ๋๋ค.
Post-quantum cryptography
Post-quantum cryptography (PQC)๋ ์์ ์ปดํจํฐ์ ๋ฑ์ฅ์ผ๋ก ๊ธฐ์กด์ ์ํธ ์ฒด๊ณ๊ฐ ๊นจ์ง ๊ฐ๋ฅ์ฑ์ ๋๋นํ์ฌ ๊ฐ๋ฐ๋ ์ํธํ ๋ฐฉ๋ฒ์ ๋๋ค. ๊ธฐ์กด์ ๋ง์ ์ํธํ ๋ฐฉ๋ฒ๋ค, ํนํ ๊ณต๊ฐํค ์ํธํ ๋ฐฉ์์ ํฐ ์์๋ฅผ ์์ธ์๋ถํดํ๋ ๊ฒ์ด ์ด๋ ต๋ค๋ ์ํ์ ์ธ ๋ฌธ์ ๋ฅผ ๊ธฐ๋ฐ์ ๋๊ณ ์์ต๋๋ค.
์ด๋ ์ปดํจํ ์ฑ๋ฅ์ ๋ฐ์ ํ๊ฒ ์ํฅ์ ๋ฐ๋๋ฐ, ์์ ์ปดํจํฐ๊ฐ ์ถฉ๋ถํ๊ฒ ๋ฐ์ ํ๋ค๋ฉด ์์ธ์๋ถํด ๋ฌธ์ ๋ฅผ ํฌํจํด ๊ธฐ์กด์ ์ํธํ ๋ฐฉ์์ ๊นจ๋จ๋ฆด ์ ์๋ ํจ์จ์ ์ธ ์๊ณ ๋ฆฌ์ฆ์ด ๋ํ๋ ์ ์๊ณ ์ด๋ฅผ ๋๋นํ์ฌ ๊ฐ๋ฐํ๋ ์ํธํ ๋ก์ง๋ค์ ์ง์นญํ๋ ์ฉ์ด์ ๋๋ค.
PQ3
Key Establishment & Hybrid design
PQ3๋ ๋ํ ์์๋ถํฐ PQC๋ฅผ ์ ์ฉํฉ๋๋ค. ์ด๊ธฐ ํค ์ค์ ๋ฉ์ปค๋์ฆ์ Kyber๋ฅผ ํตํด ๋ฐ์ ์๊ฐ ์์ ์์ ๊ณต๊ฐ ํค๋ฅผ ํ๋ํ๊ณ , ์ฒซ ๋ฒ์งธ ๋ฉ์์ง๋ฅผ ์ํ post-quantum ์ํธํ ํค์ ECC(ํ์๊ณก์ ๊ธฐ๋ฐ) ํค ์ธํธ๋ฅผ ์์ฑํฉ๋๋ค. ์ฐธ๊ณ ๋ก ์ํธํ ํค ์ธํธ๋ ๊ฐ ๋๋ฐ์ด์ค ๋ณ๋ก ๋ง๋ ๋ค๊ณ ํ๋ค์. (e.g iPhone, Macbook, iPad)
๊ฒฐ๊ณผ์ ์ผ๋ก iMessage๋ 2๊ฐ์ ๊ณต๊ฐ ํค๋ฅผ ์ฌ์ฉํฉ๋๋ค.
- A post-quantum Kyber-1024 key encapsulation public key
- A classical P-256 Elliptic Curve key agreement public key
๊ทธ๋ฆฌ๊ณ ์ด๋ฅผ ํตํด ์ํธํ ์ธ์ ์ค์ ์ ๊ฐ๊ฐ ๊ณต๊ฐํค๋ก ๋ถํฐ ์ธ์ด๋ธ 2๊ฐ์ ๋์นญ ํค๋ฅผ ๋ชจ๋ ์ฌ์ฉํ์ฌ ์ธ์ ์ ์ํธํ์ ์ฌ์ฉํ ์ด๊ธฐ ํค๋ฅผ ๋ง๋ค๊ธฐ ๋๋ฌธ์ ๊ณต๊ฒฉ์ ์ ์ฅ์์ ECC์ PQC ๋ชจ๋๋ฅผ ๊นจ์ผ ์ํธํ๋ ๋ฐ์ดํฐ๋ฅผ ๋ณตํธํํ ์ ์์ด ์ ํต์ ์ธ ๊ณต๊ฒฉ๊ณผ ์์ ์ํธ ๊ณต๊ฒฉ์ ๋ํ ๋์ ๋์์ด ๊ฐ๋ฅํ๋๋ก ํฉ๋๋ค.
์ด์ธ์๋ ECDSA ์๋ช , Contact Key Verification์ ํตํด ํตํด ๋ค์ด๊ทธ๋ ์ด๋ ๊ณต๊ฒฉ์ ๋ฐฉ์งํ๊ณ ์ธ์ฆ ํค์ ๋ฒ์ ์ ๋ณด๋ฅผ ๊ฒ์ฆํ๋ ๋ฑ ์ฌ๋ฌ๊ฐ์ง ๋ณด์ ์์๋ค์ด ๊ณ ๋ ค๋์ด ์์ต๋๋ค.
Rekeying Mechanism
PQ3๋ rekeying ๋งค์ปค๋์ฆ์ ๊ฐ์ง๊ณ ์์ต๋๋ค. rekey๋ฅผ ์ด์ฉํ์ฌ ์ํธํํค๋ฅผ ์ง์์ ์ผ๋ก ๋ณ๊ฒฝํ๊ณ , ํค๊ฐ ํ์ทจ๋์ด๋ ๋ณตํธํํ ์ ์๋ ๋ฉ์์ง์ ๋ฒ์๊ฐ ์ ํ๋๊ธฐ ๋๋ฌธ์ ๋ฉ์ธ์ง ๋ณด์์ฑ์ ๊ณ ๋ คํ๋ฉด ๋์ ์์ค์ ์ํธ ๋ก์ง์ ๊ณ ๋ คํ๋ค๊ณ ์๊ฐํฉ๋๋ค.
Rekeying์ ๋งค๋ฒ ๋ฉ์์ง ์ํธํ ์ ์ ๊ท ํค๋ฅผ ์ฌ์ฉํ๊ณ ์ก,์์ ๋ง๋ค ์ํธํค๋ฅผ ํ๊ธฐํ๋ ๋ฐฉ์์ผ๋ก ๊ตฌํ๋ ๊ฒ ๊ฐ๊ณ , ๋ฉ์์ง ์ฌ์ด์ฆ ๋๋ฌธ์ ์ผ์ ํ ์ฃผ๊ธฐ? ๊ฐ์๊ฒ ์ค์ ๋์ด ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
1. ์ก์ ์
1-1. ์ก์ ์๊ฐ ๋ฉ์์ง ํค๋ฅผ ์์ฑํ ํ ๋ฉ์์ง๋ฅผ ์ํธํํ์ฌ ์ ์กํฉ๋๋ค.
1-2. ๋ฉ์์ง ์ก์ ํ ์ํธํค๋ฅผ ์ญ์ ํฉ๋๋ค.
2. ์์ ์
2-1. ๋ฉ์์ง ์์ ์ ํค๋ฅผ ์ด์ฉํด ๋ณตํธํํฉ๋๋ค.
2.2. ๋ณตํธํ ํ ์ํธํค๋ฅผ ์ญ์ ํฉ๋๋ค.
์ ๊ฐ ๋จ์ํ๊ฒ ํํํ์์ง๋ง ์ด ๊ณผ์ ์์ ๋ฉ์์ง์ ๊ณผ๊ฑฐ, ๋ฏธ๋์ ๋ณด์์ฑ์ ๋ณด์ฅํ๋ ๋ฐฉ๋ฒ ๋ฑ๋ ๊ณ ๋ ค๋์ด ์์ต๋๋ค.
Appleโs roadmap?
Apple์ Messaging App์์์ ์ํธํ ๊ด๋ จํด์ ์๊ตฌ๋๋ ๋ด์ฉ์ ๊ธฐ๋ฐ์ผ๋ก Level์ ๋ถ๋ฆฌํด์ ๊ด๋ฆฌํ๋ ๊ฒ ๊ฐ์ต๋๋ค.
https://security.apple.com/blog/imessage-pq3/
Conclusion
๋๋ค์ ์์ง๋์ด๋ง์ด ๊ทธ๋ ๋ฏ์ด ์ด๋ค ๊ฒฐ๊ณผ๋ ๋ง์ ๊ณ ๋ฏผ๊ณผ ์ง์์ด ํจ์ถ๋์ด ์๋ค๊ณ ์๊ฐํฉ๋๋ค. ์ง์ ์ ์ผ๋ก ์ ์๋ ์์ง๋ง ๋ณด์์ฑ์ ์ํ ์ค๊ณ, ๊ทธ๋ฆฌ๊ณ ์ด๋ฅผ ์๋น์ค์ ์ ์ฉํ๊ธฐ ๊น์ง ๊ฑธ๋ ธ์ ๋ ธ๋ ฅ์ด ๋์ ์ ํ๊ฒ ๋ณด์ด๋ ๊ฒ ๊ฐ์ต๋๋ค. ์์ฝํ๋ค ๋ณด๋ ์ ๊ธ์๋ ๋ด์ฉ์ด ๋ง์ด ๋น ์ง๊ฒ ๋์๋๋ฐ, ๊ด์ฌ ์์ผ์๋ค๋ฉด ๊ณต์ ๋ฌธ์๋ฅผ ๊ผญ ์ฝ์ด๋ณด์๋ ๊ฒ์ ์ถ์ฒํฉ๋๋ค.
References
- https://en.wikipedia.org/wiki/Post-quantum_cryptography
- https://en.wikipedia.org/wiki/Kyber
- https://en.wikipedia.org/wiki/Elliptic-curve_cryptography
- https://security.apple.com/assets/files/Security_analysis_of_the_iMessage_PQ3_protocol_Stebila.pdf
-
Post-quantum cryptographyย ↩