[UTCTF2020]Cube Crypto
[UTCTF2020]Cube Crypto
題目
Mr. Anshel and Mr. Goldfeld were trying to exchange some asymmetric keys to get a shared key. They aren’t very good at math, so they decided to use a Rubik’s Cube instead to do the crypto. I don’t think it’s very secure though, I think you might be able to guess some of their keys :hmm:
Mr. A public key: [B' U', F B F, R' D, B D'] Mr. G public key: [R D L', D U' B, U F', L' F]Mr. A sends: [B D' R' D R D L' D' R D B', B D' R' D D U' B D' R D B', B D' R' D U F' D' R D B', B D' R' D L' F D' R D B'] Mr. G sends: [U F' R D L' B' U' L D' R' F U', U F' R D L' F B F L D' R' F U', U F' R D L' R' D L D' R' F U', U F' R D L' B D' L D' R' F U']NOTE: The flag is the shared key that they generate, so it is NOT in utflag{} format
by balex
解題
Anshel先生和Goldfeld先生試圖交換一些非對稱密鑰以獲得共享密鑰。他們的數(shù)學(xué)不是很好,所以他們決定用魔方來做加密。不過我覺得這不是很安全,我想你可能能猜到他們的一些鑰匙:嗯:
注意:該標(biāo)志是它們生成的共享密鑰,因此它不是“utflag{}”格式
巴萊克斯
用魔方加密先了解魔方公式
這樣至少知道他們再干什么了
根據(jù)密鑰交換協(xié)議
由上圖可知,Alice的公鑰是a組成的元組,私鑰是a和它的逆組成的序列
Bob的公鑰是b組成的元組,,私鑰是b和它的逆組成的序列
他們的共享密鑰e=A-1 B-1 A B
由于協(xié)議基于非阿貝爾群,所以不滿足交換
通過Alice與Bob發(fā)出的信息,我們可以很容易的看出A-1 、A、 B-1、 B
flag即為共同密鑰e
(a1, a2, a3)=[B’ U’, F B F, R’ D, B D’]
(B-1 a1 B,B-1 a2 B,B-1 a3 B,B-1 a4 B)=[U F’ R D L’ B’ U’ L D’ R’ F U’, U F’ R D L’ F B F L D’ R’ F U’, U F’ R D L’ R’ D L D’ R’ F U’, U F’ R D L’ B D’ L D’ R’ F U’]
聯(lián)立得:
B-1 = U F’ R D L’
B=L D’ R’ F U’
同理求得
A-1=BD’R’D
A=D’RDB’
則,公共密鑰e=B D’ R’ D U F’ R D L’ D’ R D B’ L D’ R’ F U’
答案
flag{B D’ R’ D U F’ R D L’ D’ R D B’ L D’ R’ F U’}
總結(jié)
以上是生活随笔為你收集整理的[UTCTF2020]Cube Crypto的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [羊城杯 2020]GMC
- 下一篇: [GKCTF 2021]XOR