[柏鹭杯 2021]baby_go-复现

来到函数列表

[柏鹭杯 2021]baby_go-复现_第1张图片

 发现三个主函数,一个解密,一个加密,一个验证

看一下解密函数,其中提到chacha20poly1305: bad key length

ChaCha20-Poly1305是一个组合加密算法,由ChaCha20和Poly1305两个密码学原语组成。

具体来说,ChaCha20是一个流加密算法,它可以对任意长度的数据进行加密,并产生一个相同长度的密文。Poly1305是一个消息验证码,它可以对任意长度的消息进行验证,并输出一个固定长度的摘要。将这两个密码学原语结合起来,就可以实现一个安全高效的加密算法,即ChaCha20-Poly1305。

ChaCha20-Poly1305通常用于保护网络通信中的数据传输,例如TLS 1.3协议就采用了这种加密算法。

值得注意的是,ChaCha20-Poly1305是一种对称加密算法,即使用相同的密钥来进行加密和解密。因此,在使用ChaCha20-Poly1305时,需要确保密钥的安全性。

文件夹中正好有一个加密后的文档,所以我们可以进行解密了

[柏鹭杯 2021]baby_go-复现_第2张图片

在文件夹中会生成一个flag.txt文档,其中就有flag。

你可能感兴趣的:(CTF,逆向,GO,go,算法,安全,网络安全,汇编)