# Tuning Keyboard v3 write up ## table of contents - [Tuning Keyboard v3 write up](#tuning-keyboard-v3-write-up) - [table of contents](#table-of-contents) - [Course of solving](#course-of-solving) - [Tools](#tools) ## Course of solving First, we download the challenge file and extract it. We get a file named `tuning-keyboard-v3_64c92c1d919aa8aa243b1cfcaf1cf8f2`, which is an HTML file, so we open it with browser and IDE to see what is inside. ![鳥立鹿一工糸牛=路糸鳥一鄉工口女一鄉口土鄉立一火鳥口女一鄉木魚鄉女口鹿立耳木鹿立木魚手鄉木革鄉糸艸魚木魚手鄉一=一四足金馬鹿街](https://i.imgur.com/MGmGF8O.png) 鳥|立鹿一工糸牛=路糸鳥一鄉工口女一鄉口土鄉立一火鳥口女一鄉木魚鄉女口鹿立耳木鹿立木魚手鄉木革鄉糸艸魚木魚手鄉一=一四足金馬鹿街] A few minutes later, We found the disk would move to a specific position and highlight some words. So we record a [video](https://drive.google.com/file/d/1gAqDUGcSSjmi0oaXzH2wx6SKfslWeem2/view?usp=share_link) and write down the highlighted words. One of our teammates mentioned the challenge title `turning keyboard`, and we focused on the `Input Method`. We used [DICT.TW Dictionary Taiwan](http://dict.tw/) to search the highlighted words and found 鳥 is h in DaYi Input Method, 立 is k, 鹿 is c, 一 is E, and so on. we guess = is 2, 鄉 is _ and 鄉 is _. Then we created an excel file [TheExcelFile](https://docs.google.com/spreadsheets/d/16ZKRpruNAS2sghU8po1Abjlr1JOdvyPh/edit?usp=sharing&ouid=114731682678227464106&rtpof=true&sd=true) ![wrongFlag](https://i.imgur.com/SP9CD01.png) | origin | decrypted | |---|---| | 鳥 | h | | 立 | k | | 鹿 | c | | 一 | e | | 工 | r | | 糸 | t | | 牛 | 2 | | = | 2 | | 路 | { | | 糸 | t | | 鳥 | h | | 一 | e | |... | ... | We tried to submit the flag, but it was wrong. After a few times of trial and error. ![ManyWrongFlag](https://i.imgur.com/3dAv5Dj.png) Our team realized that 靈 would disappear when the disk highlights the `路`. We know it is { since flags start with hkcert22{, and the `街` is }. that means 靈 is the shift key. So we corrected the excel file: | origin | decrypted | 靈?| ---|---|--- | 鳥 | h | 1| | 立 | k | 1| | 鹿 | c | 1| | 一 | e | 1| | 工 | r | 1| | 糸 | t | 1| | 牛 | 2 | 1| | = | 2 | 1| | 路 | { | 0| | 糸 | T | 0| | 鳥 | h | 1| | 一 | e | 1| | 鄉 | _ | 0| | 工 | r | 1| | 口 | o | 1| | 女 | l | 1| | 一 | e | 1| | 鄉 | _ | 0| | 口 | o | 1| | 土 | f | 1| | 鄉 | _ | 0| | 立 | k | 1| | 一 | e | 1| | 火 | y | 1| | 鳥 | h | 1| | 口 | o | 1| | 女 | l | 1| | 一 | e | 1| | 鄉 | _ | 0| | 木 | i | 1| | 魚 | n | 1| | 鄉 | _ | 0| | 女 | l | 1| | 口 | o | 1| | 鹿 | c | 1| | 立 | k | 1| | 耳 | p | 1| | 木 | i | 1| | 鹿 | c | 1| | 立 | k | 1| | 木 | i | 1| | 魚 | n | 1| | 手 | g | 1| | 鄉 | _ | 0| | 木 | i | 1| | 革 | s | 1| | 鄉 | _ | 0| | 糸 | T | 0| | 艸 | U | 0| | 魚 | N | 0| | 木 | I | 0| | 魚 | N | 0| | 手 | G | 0| | 鄉 | _ | 0| | 一 | e | 1| | = | 2 | 1| | 一 | e | 1| | 四 | 4 | 1| | 足 | 9 | 1| | 金 | 0 | 1| | 馬 | b | 1| | 鹿 | c | 1| | 街 | } | 0| Again we tried to submit the flag, but it was wrong. So we tried to change the = to copy the previous word, and it worked. ![finally](https://i.imgur.com/784E8wa.png) ## Tools Tools 01: [DICT.TW Dictionary Taiwan](http://dict.tw/) Tools 02: [Excel](https://www.microsoft.com/zh-tw/microsoft-365/excel) Tools 03: [Visual Studio Code](https://code.visualstudio.com/)