Bugku CTF-聪明的小羊

发布于 2023-09-17  914 次阅读


题目

题解

很容易看出这是一个栅栏密码的解密操作,高度为2,则编写以下代码实现:(直接在线网站也可,这里练习一下编程)

def decrypt_fence_cipher(ciphertext, height):
    # 计算每个栏的长度
    col_length = len(ciphertext) // height
    # 创建一个空字符串用于存储解密后的消息
    decrypted_text = ''

    for i in range(col_length):
        for j in range(height):
            # 计算当前字符在原始消息中的索引位置
            index = i + j * col_length
            # 添加当前字符到解密消息中
            decrypted_text += ciphertext[index]

    return decrypted_text


# 输入要解密的栅栏密码和栅栏的高度
ciphertext = input("请输入栅栏密码:")
height = int(input("请输入栅栏的高度:"))

# 调用解密函数并输出结果
decrypted_text = decrypt_fence_cipher(ciphertext, height)
print("解密后的消息是:", decrypted_text)
请输入栅栏密码:fa{fe13f590lg6d46d0d0}
请输入栅栏的高度:2
解密后的消息是: flag{6fde4163df05d900}
  • alipay_img
  • wechat_img
我在这里的分享的,是我的阅读总结以及经验,大多是利用业余时间,我个人崇尚自由,不喜欢被束缚,我的人生之路每次都有些许坎坷,我希望也许等我老了,这里的文章,会是一个美好的回忆。
最后更新于 2023-09-17