Search this site
Embedded Files
rwx4m
  • Beranda
  • Tentang
  • Project & Lab
rwx4m
  • Beranda
  • Tentang
  • Project & Lab
  • More
    • Beranda
    • Tentang
    • Project & Lab

Room Link

Cipher's Secret Message

Salah satu pesan rahasia dari Ciphers telah ditemukan dalam sebuah sistem lama bersama dengan algoritma enkripsi yang digunakan. Namun, pesan tersebut tidak dapat didekripsi secara langsung.

Category: Crypto || Level: EASY

Task

Dapatkah Anda membantu void untuk mendekripsi pesan ini?

Pesan Terenkripsi:

a_up4qr_kaiaf0_bujktaz_qm_su4ux_cpbq_ETZ_rhrudm

Algoritma Enkripsi:

from secret import FLAG

def enc(plaintext):

    return "".join(

        chr((ord(c) - (base := ord('A') if c.isupper() else ord('a')) + i) % 26 + base)

        if c.isalpha() else c

        for i, c in enumerate(plaintext)

    )


with open("message.txt", "w") as f:

    f.write(enc(FLAG))

Catatan: Format flag yang diharapkan adalah THM{}.

📌Solusi

Dari kode enkripsi yang diberikan, dapat dimahami bahwa setiap karakter alfabet dalam teks diubah berdasarkan indeksnya dalam string. Perubahan ini terjadi dalam urutan 'bertambah', dengan setiap karakter digeser maju berdasarkan indeksnya.


Untuk mendekripsi pesan, saya harus membalikkan operasi ini dengan menggeser karakter ke belakang sesuai indeksnya.

Berikut adalah implementasi fungsi dekripsi:

def dec(ciphertext):

    return "".join(

        chr((ord(c) - (base := ord('A') if c.isupper() else ord('a')) - i) % 26 + base)

        if c.isalpha() else c

        for i, c in enumerate(ciphertext)

    )


ciphertext = "a_up4qr_kaiaf0_bujktaz_qm_su4ux_cpbq_ETZ_rhrudm"

flag = dec(ciphertext)


print(f"THM{{{flag}}}")

Penjelasan:

Setiap karakter alfabet dalam ciphertext dikurangi dengan indeksnya untuk mengembalikan karakter asli. Karakter non-alfabet tidak mengalami perubahan. Setelah didekripsi, hasilnya dibungkus dalam format 'THM{}' sesuai instruksi.

Final Flag🎯

Ouput Pesan yang didekripsi:

THM{a_sm4ll_crypt0_message_to_st4rt_with_THM_cracks}

Kesimpulan

Dalam tantangan ini, saya berhasil memahami bagaimana algoritma enkripsi bekerja dan membangun fungsi dekripsi yang sesuai. Dengan menggeser karakter kembali sesuai indeksnya, saya berhasil mendapatkan flag yang tersembunyi dalam pesan terenkripsi. Tantangan ini mengajarkan kita tentang dasar enkripsi berbasis pergeseran (shift cipher) dengan variasi berbasis indeks.

'Pendidikan adalah rangkaian pelajaran yang semakin lama malah semakin tinggi nilainya'

LinkLinkedInLinkLinkLinkLinkGitHubLinkLink
rwx4m. Personal Blog. © 2026
Made with ❤️ to Cyber Security
Google Sites
Report abuse
Google Sites
Report abuse