- 博客(7)
- 资源 (1)
- 收藏
- 关注
原创 BUFFCTF--Crypto
摘要:该AFCTF2018题目通过摩斯密码解码得到十六进制串61666374667b317327745f73305f333435797d,转换为ASCII后获得afctf{1s't_s0_345y}。按照比赛要求将前缀改为flag后,最终答案为flag{1s't_s0_345y}。解题过程涉及摩斯密码处理、十六进制转换和flag格式调整。
2025-06-26 15:26:53
367
原创 BUFFCTF--Crypto
Rabbit是一种高速流密码算法,采用128位密钥和64位IV,通过非线性函数生成密钥流。其工作原理包括初始化密钥/IV为状态变量,迭代更新变量产生密钥流,并与明文逐字节异或实现加密。在线工具可直接进行Rabbit加解密,示例flag为"Cute_Rabbit"。该算法由CRYPTICO设计,具有高效加密特性。
2025-06-23 19:19:00
289
原创 安全多方计算:让数据“可用不可见“的黑科技
安全多方计算(MPC)是实现"数据可用不可见"的关键技术,允许多方在不泄露原始数据的情况下进行协同计算。文章首先介绍了MPC的概念起源——中国科学家姚期智提出的"百万富翁问题",并阐述了其在医疗、金融等隐私敏感领域的应用价值。接着分析了MPC面临的三大挑战:通信负担重、计算效率低和安全风险高,并提出了分层管理、硬件加速、行为分析等优化方案。最后展望了MPC与区块链、AI结合等未来发展方向,指出这项技术可能重塑数据协作规则,成为数字化时代隐私保护的重要解决方案。
2025-06-22 21:13:10
793
原创 移动0(将数组中的0都移到最后——冒泡排序)
移动0问题:例如一个数组nums = [0,1,0,3,12],在进行程序之后需要输出[1,3,12,0,0],在这个问题中,可以使用冒泡排序来解决。以第一个数来进行举例:先确定第一个数的位置,如果第一个数是0,则和第二个数进行交换,然后再和后面一个数进行交换,一直到循环结束,即数组最后一个位置。里面的for循环来决定数组中的第几个数,外面的for循环来对数组中的每一个数进行操作。这是内循环的一次循环,然后再利用外循环对每一个数进行相同的操作就可以达到要求。
2024-12-14 21:12:08
574
原创 删除有序数组中的重复项
在“删除有序数组中的重复项”问题中,我们需要返回在这个数组num[]中的元素个数并返回这个数组,我们可以首先定义一个n来代表数组中元素的个数,如果现在元素的个数=0,就直接return,然后定义一个x和y,x代表新数组中的第几个数,y来表示新数组,先确定第一个数,因为是有序数组,所以一样的数是相邻的,如果num[x]!= num[x - 1],则num[y] = num[x],并++y, 然后需要在if外面++y,因为无论num[x]是否与num[x-1]相等,x都要进行+1,来确定数组的第二个数。
2024-12-14 20:55:47
415
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅