自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 Compressing Vector OLE-论文笔记

向量 y 属于,包含 t 个元素。- 对于子集 S 中的每个元素,函数在处的值定义为。- 对于不在子集 S 中的任何元素 x ,函数在 x 处的值定义为 0。

2024-01-23 15:33:47 1751

原创 LFSR及流密码加解密-C语言实现

一个简单的流加密算法需要一个"随机"的二进制序列作为密钥,通过将明文与这个随机的密钥流进行XOR逻辑运算,就可以生成密文,将密文与相同的随机密钥进行XOR逻辑运算即可还原明文。产生密钥流的方法有多种,最普遍的是采用线性反馈移位寄存器(LFSR)生成。

2023-11-28 17:38:01 737

原创 GMP开发环境配置-Windows环境

安装过程中,比较重要的是选择安装组件,选择basic setup,勾选mingw-developer-tookit、mingw32-base、mingw32-gcc-g++、msys-base。GMP是一个基于C语言的开源库,其中包含了数种自定义数据类型,包括mpz_t多精度整型、mpq_t多精度有理数、mpf_t多精度浮点型。GMP是著名的任意精度算术运算库,支持任意精度的整数、有理数以及浮点数的四则运算、求模、求幂、开方等基本运算,还支持部分数论相关运算。等待几分钟安装时间即可。

2023-11-26 15:54:49 732 1

原创 Authenticated private information retrieval-论文笔记

论文发表在论文作者:Simone Colombo, EPFL;1.介绍1.1隐私信息检索(Private InformationRetrieval – PIR)是隐私计算中的一项技术,用来保护用户的查询隐私。在查询信息过程中不泄漏查询条件和查询结果。PIR需要满足要求:①②PIR的实际用途元数据私有消息传递、视频流、密码泄露警报、安全更新检索、公钥目录以及对公共数据的私有SQL类查询。PIR有两种模式:①。

2023-11-26 11:13:13 1477 2

原创 线性同余发生器-C语言实现

参数的选择对建立一个好的伪随机数发生器十分关键。为形成一个很长的伪随机数序列,需要将m设置为一个很大的数。此外,为了使得随机数列不易被重现,可以使用当前时刻的毫秒数作为初始种子值。目前为止使用最为广泛的随机数产生技术是由Lehmer首次提出的线性同余算法,即使用下面的递推关系产生一个伪随机数列。利用线性同余发生器生成伪随机数。

2023-11-25 17:41:17 474

原创 Introduction to Modern Cryptography-抽象代数篇

集合 {b|∃a(aRb)} 为R的。

2023-11-24 18:38:13 1199 1

原创 安全归约基础-实现正确的安全归约

其次,我们假设存在一个可以攻破该方案的敌手,并通过安全归约将敌手的攻击归约到解决底层困难问题;其中的矛盾点在于,存在一个可以攻破该方案的敌手的假设成立意味着底层困难问题是一个简单问题,这显然不符合事实。模拟是敌手和模拟方案之间的交互,模拟方案是由问题实例生成并遵循模拟算法。无论是成功攻击还是失败攻击,敌手的攻击都有可能是能解决底层困难问题的有用攻击。最后,假设敌手可以在多项式时间内以不可忽略的优势攻破真实方案,如果解决底层困难问题的优势是不可忽略的,则安全归约是正确的。对模拟方案发起成功攻击。

2023-11-24 14:10:04 447 1

原创 RC4密码算法-C语言实现

RC4算法时Ron Rivest在1987年设计的一种流密码,它非常简单,易于描述,其加密密钥和解密密钥相同,密钥长度可变,但为了确保密码算法的安全强度,目前RC4使用至少128位的密钥。

2023-11-24 13:25:20 802 1

原创 RSA密码-C语言实现

(2) 计算公开的模数 r=pq。(1) 取两个随机大素数p和q。(4) 随机选取整数 e,满足。(3) 计算欧拉函数。(5) 计算d,满足。

2023-11-24 12:05:14 1196 1

原创 BSS随机数发生器-C语言实现

BSS(Blum Blum Shub)算法是一种产生安全伪随机数的方法,其安全性基于对n的因子分解的困难性,即给定n,不能确定其素因子p和q。(1) 选择两大素数p和q作为随机种子,要求它们被4除时都余3,即。,选择一个随机数 s ,使得。

2023-11-24 11:26:47 405 1

原创 Introduction to Modern Cryptography-数论基础篇

设 a,b∈Z , a≠0。如果,使得,那么就说 b可被a整除,记作。

2023-10-31 09:50:55 201 1

原创 Introduction to Modern Cryptography-数学基础篇

第一个进入房间的人,与房间里已有的人(0人),生日都相同的概率是365/365;上面公式可以算出,50% 的哈希碰撞概率所需要的计算次数,其中 N 表示哈希的取值空间。加法:P ( A + B ) = P ( A ) + P ( B ) − P ( A B ) P ( A + B ) ≤ P ( A ) + P ( B )实际上,有一个近似的公式。P ( A B ) = P ( A ) P ( B ) 则称AB事件相互独立,即A和B两个事件的发生互不影响。

2023-10-30 11:25:58 53

原创 Introduction to Modern Cryptography现代密码学-符号篇

分别表示私钥加密和公钥加密的密钥生成、加密和解密过程。分别表示消息认证码的密钥生成、标签生成和验证过程。表示二进制字符串x的长度(可能有前导0),或x的绝对值。分别表示数字签名方案的密钥生成、签名生成和验证过程。表示公钥/私钥对(用于公钥加密和数字签名)表示模N的可逆整数的乘法群(即与N互素)log x 表示x的以2为底的对数。表示具有对O的oracle访问的算法A。表示输入x,并将A的输出分配给y。表示(正)整数x的二进制表示的长度。可互换使用,表示字符串x和y的连接。Pr[X] 表示事件X的概率。

2023-10-26 16:30:18 247 1

原创 Introduction to Modern Cryptography-Key Management and the Public-Key Revolution(密钥管理与公钥改革)

1.公钥加密允许通过公共(但经过验证的)通道进行密钥分发。这可以简化共享密钥的分发和更新。2.公钥加密减少了用户存储许多秘密密钥的需要。使用公钥加密,每个员工只需存储一个私钥(他们自己的)和所有其他员工的公钥。重要的是,后面这些密钥不需要保密;它们甚至可以存储在某个公共存储库中。3.最后,公钥加密更适合于开放环境,在这种环境中,以前从未交互过的各方希望能够安全地进行通信。作为一个常见的例子,公司可以在线发布其公钥;当用户需要加密其信用卡信息以发送给该公司时,可以根据需要购买该公司的公钥。

2023-10-25 17:02:23 120

原创 Introduction to Modern Cryptography-现代密码学导论[二]

作为一个简单的例子,可以要求伪随机发生器的输出的第一位应该以非常接近1/2的概率等于1(其中该概率是在种子的均匀选择上取得的),因为均匀串的第一位以恰好1/2的概率等于1。也就是说,对于任何有效的统计测试(或区分器)D,当给定伪随机发生器的输出时D返回1的概率应该接近于当给定相同长度的均匀串时D返回1的概率。这个方案满足计算安全是因为,我们的pad是用PRG生成的伪随机串,而在计算安全语境下的敌手是无法分辨出真随机串和伪随机串的,所以在敌手看来,我们的pad仍然是一个在其长度上均匀分布的比特串。

2023-10-25 15:40:52 156 1

原创 Introduction to Modern Cryptography-现代密码学导论[一]

目录Perfect secrecy Encryption1.Perfect secrecy(完美保密)2.Perfect (adversarial) indistinguishability(完美不可区分性)EAV-Security3.The One-time Pad(一次性密码本)4.Limitations of Perfect secrecy5.*Shannon’s TheoremComputational security Encryption6.Computational securityThe A

2023-10-20 15:32:02 302 1

原创 安全多方计算基础

安全多方计算最早由图灵奖获得者姚期智提出。1982年,姚期智提出了著名的“百万富翁问题”,该问题实际上是安全多方计算的一个特殊应用。“百万富翁问题”实际上是指如何在保护参与者输入信息的前提下比较参与者输入信息的大小。如果将这种比较运算扩展为任意函数,就是安全多方计算。1987年,Goldreich等人提出了可以计算任意函数的基于密码学安全模型的安全多方计算协议,从理论上证明了可以使用通用电路估值来实现所有安全多方计算协议。

2023-10-06 15:59:29 635 1

原创 素数的检测

常用的素数检测算法。

2023-09-29 17:15:20 165 1

原创 安全归约基础(二)

我们通常假设敌手能攻破所提方案,敌手对模拟方案可以发出哪种攻击在安全归约中十分重要,本节将具体介绍敌手。令 a 为从集合{ 0 ,1}中选择的一个整数,如果 a 是随机选择的,则有如果 a 是自适应选择的,则和是未知的。自适应攻击是一种特定攻击,即敌手在给定空间的选择不是均匀分布的,其概率分布未知。在敌手和模拟器之间的安全归约中,自适应攻击由三部分组成。我们以EU-CMA安全模型下数字签名方案的安全归约为例来解释这三个部分。

2023-09-22 16:27:31 335 1

原创 欧几里得算法-C语言实现

利用拓展欧几里得算法求得满足条件的 c :先做辗转相除,当 a, b 互素时,最后一步得到的余数为 1 ,再从 1 出发,对前面得到的所有除法算式进行变形,将余数用除数和被除数表示,最终便可将 1 表示为 a 与 b 的一种线性组合,即。例如 a=6,b=9,使用欧几里得算法我们可以得到 gcd(6, 9) = 3,通过使用扩欧算法,不仅可以计算得到最大公约数 3 ,而且可以得到方程 6x+9y = 3 的整数解 x、y。gcd(a,b) = gcd(b,a mod b),要求a >= b。

2023-09-21 17:58:55 953

原创 模幂运算-C++实现

快速实现模幂运算的基本原理是模重复平方计算法,其理论基础是模运算的基本性质,即相乘与求模两个运算是可交换的。,该运算在密码学中应用极为普遍,RSA、ELGamal、DH交换等重要密码方案都涉及模幂运算。,.... ,再把指数 n 的二进制表示中取值为1的位对应的a 的幂相乘,即可得到最终结果。费马定理和欧拉定理是初等数论中非常重要的定理,它们与密码学关系极为密切。模幂运算是对给定的整数p 、n 、a,计算。对任意整数a, n ,当gcd(a, n) = 1时,有。(1)将 n 表示为二进制,

2023-09-20 21:55:36 610 1

原创 安全归约基础(一)

在计算复杂性理论中,归约是将(解决)一个问题转化为(解决)另一个问题。与困难问题相比,分析密码方案的安全性相对困难,因此引入安全归约来分析密码方案的安全性。安全规约用于证明攻破一个方案意味着解决一个困难问题。在公钥密码学中,安全归约是将攻破密码方案转化为解决某个数学困难问题的过程。

2023-09-20 16:51:07 771 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除