- 博客(14)
- 收藏
- 关注
原创 安全多方计算简单概述
安全多方计算(Secure Multi-Party Computation,MPC) 由姚期智先生于1982年提出,是一种密码学协议和计算理论,旨在允许多个参与方在不暴露各自私密输入的情况下,共同完成特定计算任务。这种计算方式保护了参与方的隐私,使得他们可以在互相不信任的情况下进行合作计算。
2023-10-04 21:13:24
329
1
原创 kali下载foremost
在kali系统终端中使用foremost显示无此命令,问我要不要下载那我肯定选y,但它又说没有定位到foremost软件包,我真的会谢,看了下其他大佬解决方案应该是要我先更新kali中插件,为啥它2023版的kali还要更新。
2023-05-20 20:37:21
1461
原创 CTF网课笔记
file命令 是在linux系统下使用的,比如:kali 打开终端输入 file 命令winhex会过期,推荐使用notepad++或者010editor编辑器查看文件的十六进制通过010editor在首部添加文件头的十六进制。
2023-05-20 20:03:57
161
原创 密码学基础-RSA算法
1977年,三位数学家Rivest、Shamir 和 Adleman 设计了一种算法,可以实现非对称加密。这种算法用他们三个人的名字命名,叫做RSA算法。从那时直到现在,RSA算法一直是最广为使用的"非对称加密算法"。困难问题:质因数分解问题 eg:21=3*7。
2023-04-18 13:58:29
109
原创 Leetcode 判定是否互为字符重排
给定两个字符串 s1 和 s2,请编写一个程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。示例 1:输入: s1 = "abc", s2 = "bca" 输出: true 示例 2:输入: s1 = "abc", s2 = "bad" 输出: false主要还是使用sort函数,先将字符串中的字母从前往后有序排序,然后再一一比较,如何都符合则为TRUE,但是有一个小陷阱,如果两个字符串长度不一样就不行,所以我们要事先排除这种情况发生。代码如下:class Solution {public:
2022-06-24 10:19:54
126
原创 6.LeetCode141
给你一个链表的头节点 head ,判断链表中是否有环。如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为参数进行传递,仅仅是为了标识链表的实际情况。如果链表中存在环,则返回 true 。 否则,返回 false 。方法:可以利用初中数学的追及问题求解,如果存在一个环,那么快的和慢的一.
2022-01-15 11:17:42
66
原创 5.LeetCode 83
存在一个按升序排列的链表,给你这个链表的头节点 head ,请你删除所有重复的元素,使每个元素 只出现一次 。返回同样按升序排列的结果链表。示例 1:输入:head = [1,1,2]输出:[1,2]示例 2:输入:head = [1,1,2,3,3]输出:[1,2,3]方法1:利用指针和一个循环遍历整个链表,遇到前后值相同的结点,就让前一个结点的next链接到后一个结点的next;如果前后值不同,使指针p指向后一个结点继续遍历。/***Definitionf...
2022-01-15 10:42:28
311
原创 4.LeetCode21
将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例 1:输入:l1 = [1,2,4], l2 = [1,3,4]输出:[1,1,2,3,4,4]示例 2:输入:l1 = [], l2 = []输出:[]示例 3:输入:l1 = [], l2 = [0]输出:[0]方法1:利用双指针和循环 时间复杂度O(m+n) 空间复杂度O(1)/***Definitionforsingly-linkedlist....
2022-01-15 10:06:16
55
原创 3.LeetCode 35
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。请必须使用时间复杂度为 O(log n) 的算法。示例 1:输入: nums = [1,3,5,6], target = 5输出: 2示例2:输入: nums = [1,3,5,6], target = 2输出: 1示例 3:输入: nums = [1,3,5,6], target = 7输出: 4示例 4:输入: nums = [1,3,5,6].
2022-01-14 20:35:13
266
原创 2.LeetCode 278
你是产品经理,目前正在带领一个团队开发新的产品。不幸的是,你的产品的最新版本没有通过质量检测。由于每个版本都是基于之前的版本开发的,所以错误的版本之后的所有版本都是错的。假设你有 n 个版本 [1, 2, ..., n],你想找出导致之后所有版本出错的第一个错误的版本。你可以通过调用 bool isBadVersion(version) 接口来判断版本号 version 是否在单元测试中出错。实现一个函数来查找第一个错误的版本。你应该尽量减少对调用 API 的次数。示例 1:输入:n =.
2022-01-14 20:08:54
65
原创 1.LeetCode 704
给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内。请你找出所有在 [1, n] 范围内但没有出现在 nums 中的数字,并以数组的形式返回结果。示例 1:输入:nums = [4,3,2,7,8,2,3,1]输出:[5,6]示例 2:输入:nums = [1,1]输出:[2]题解:C++你能在不使用额外空间且时间复杂度为O(n)的情况下解决这个问题吗? 你可以假定返回的数组不算在额外空间内。...
2022-01-14 19:45:47
187
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人