第四十四个知识点:在ECC密码学方案中,描述一些基本的防御方法
第四十四个知识点:在ECC密码学方案中,描述一些基本的防御方法
原文地址:http://bristolcrypto.blogspot.com/2015/08/52-things-number-44-describe-some-basic.html
在上篇文章中我们提到了在ECC中对抗侧信道攻击的一些基本防御。这篇文章似乎是为了完整性,同时对AES问询的同样的问题。
在我们讨论这个问题之前,我想要澄清我们要讨论什么样的策略。从这点看出,我们将会仅仅讨论实现层面的对策,而不是考虑硬件的对策例如双轨道安全或者位置安全。然而标题说可能无效,但是我还是尽可能说写可能有效的方法。
椭圆曲线密码作为一种规则,在抵抗边信道攻击方面是相当好的,但仍有一些值得考虑的地方。
标量乘法
和其它密码学中的算法一样,标量乘法也是最容易泄露的算法,就像RSA中的。这在椭圆曲线密码学中没有什么不同,因为加法运算符和倍乘运算符的行为不同。各种可以应用在RSA算法中的技术也能在这里使用,例如指数盲猜方法对于每一个标量乘法你选择一个值\(r\)使得\([a]P = [a+r]P\),其中\(a\)是一个保持秘密的值,\(P\)是椭圆曲线的生成器。由于标量乘法只泄漏关于标量的信息,因此只有当您想要保持标量机密时才需要应用这种技术。近年来,人们对椭圆曲线的创建进行了大量的研究,发现椭圆曲线具有相同的二重运算和加法运算,从而解决了这一问题。
点在曲线上吗
有时候,\(x\)的值被选择学习,曲线使用雅各比符号,在多项式\(x^3+a \cdot x + b\)的结果是平方数。如果\((x,y)\)是椭圆曲线上的点。从链接的算法中可以看出,计算雅可比矩阵符号的过程是变长的,因此可能会泄漏关于秘密值的信息\(x^3 + a \cdot x + b\)。防御方法是使用\(r^2(x^3+a \cdot x + b\)使用这种技术,我们可以检查x是否是曲线上的一个有效点,但由于它被随机的r盲化了,所以它不会泄漏任何关于基础点的信息。
理论安全
对于已知的边信道攻击,椭圆曲线在没有太多帮助的情况下是合理安全的,但可以通过秘密共享某些方案来提高安全性。假设每个共享泄漏都是独立的,那么就有可能创建可证明对任意泄漏函数(包括那些只能在理论上发生而不能在实践中发生的函数)具有安全性的方案。这一领域的密码学已成为众所周知的泄漏弹性密码学。http://users-cs.au.dk/stm/local-cache/KilPie10.pdf
第四十四个知识点:在ECC密码学方案中,描述一些基本的防御方法的更多相关文章
- 第四十二个知识点:看看你的C代码为蒙哥马利乘法,你能确定它可能在哪里泄漏侧信道路吗?
第四十二个知识点:看看你的C代码为蒙哥马利乘法,你能确定它可能在哪里泄漏侧信道路吗? 几个月前(回到3月份),您可能还记得我在这个系列的52件东西中发布了第23件(可以在这里找到).这篇文章的标题是& ...
- 第四十九个知识点:描述在IPsec和TLS后的基本想法
第四十九个知识点:描述在IPsec和TLS后的基本想法 网络安全协议(Internet Protocol Security,IPsec)和安全传输层协议(Transport Layer Securit ...
- 第四十八个知识点:TPM的目的和使用方法
第四十八个知识点:TPM的目的和使用方法 在检查TPM目的之前,值得去尝试理解TPM设计出来的目的是为了克服什么样的问题.真正的问题是信任.信任什么?首先内存和软件运行在电脑上.这些东西能直接的通过操 ...
- 第四十六个知识点 在Sigma协议中,正确性,公正性和零知识性意味着什么
第四十六个知识点 在Sigma协议中,正确性,公正性和零知识性意味着什么 Sigma协议 Sigma协议是Alice想要向Bob证明一些东西的协议(Alice知道一些秘密).他们有下面的一般范式:Al ...
- 第四十五个知识点:描述一些对抗RSA侧信道攻击的基础防御方法
第四十五个知识点:描述一些对抗RSA侧信道攻击的基础防御方法 原文地址:http://bristolcrypto.blogspot.com/2015/08/52-things-number-45-de ...
- NeHe OpenGL教程 第四十四课:3D光晕
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- 网站开发进阶(四十四)input type="submit" 和"button"的区别
网站开发进阶(四十四)input type="submit" 和"button"的区别 在一个页面上画一个按钮,有四种办法: 这就是一个按钮.如果你不写ja ...
- Gradle 1.12用户指南翻译——第四十四章. 分发插件
本文由CSDN博客貌似掉线翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...
- SQL注入之Sqli-labs系列第四十一关(基于堆叠注入的盲注)和四十二关四十三关四十四关四十五关
0x1普通测试方式 (1)输入and1=1和and1=2测试,返回错误,证明存在注入 (2)union select联合查询 (3)查询表名 (4)其他 payload: ,( ,( 0x2 堆叠注入 ...
随机推荐
- day16 Linux三剑客之awk
day16 Linux三剑客之awk 1.什么是awk,主要作用是什么? 什么是awk,主要作用是什么? awk 主要用来处理文件,将文本按照指定的格式输出.其中包含变量,循环以及数组. 2.awk的 ...
- C语言中的使用内存的三段
1.正文段即代码和赋值数据段 一般存放二进制代码和常量 2.数据堆段 动态分配的存储区在数据堆段 3.数据栈段 临时使用的变量在数据栈段 典例 若一个进程实体由PCB.共享正文段.数据堆段和数据栈段组 ...
- soapui pro 5.1.2 的破解方法
Protection-4.6,和scz.key这两个文件能破解5.1.2的SoapUI 的Pro版本,mac 和 windows均可.1.拷贝Protection-4.6.jar到soapui安装的l ...
- notepad++ 连接远程服务器
前言:为了便于编辑 linux 上的文件,因此通过 notepad++ 连接服务器后打开,编辑完,保存即可 1. 打开 notepad++,安装插件 2. 搜索 NppFtp,找到后 点击 安装/in ...
- jquery:iframe里面的元素怎样触发父窗口元素的事件?
例如父窗口定义了一个事件. top: $(dom1).bind('topEvent', function(){}); 那么iframe里面的元素怎样触发父窗口dom1的事件呢?这样吗? $(dom1, ...
- 【Matlab】CFAR/phased.CFARDetector2D
| CFAR学习进行时ing... | CFAR原理.参数 检测阈值\(T = αP_n\) \(P_n\)是噪声功率估计,\(α\)是比例因子 训练单元:训练噪声,估计\(P_n = \frac{1 ...
- Service Worker的应用
Service Worker的应用 Service worker本质上充当Web应用程序.浏览器与网络(可用时)之间的代理服务器,这个API旨在创建有效的离线体验,它会拦截网络请求并根据网络是否可用来 ...
- 拆分函数Splitter.Split…(Power Query 之 M 语言)
按相同分隔符拆分: =Splitter.SplitTextByDelimiter("拆分符号", 引号字符) 拆分符号 直接输入 特殊符号 制表符:#(tab) 回车:#(cr) ...
- 建立资源的方法(Project)
<Project2016 企业项目管理实践>张会斌 董方好 编著 终于,进入第5章资源计划编制了,所以就不能还在任务工作表里厮混了是吧,那就先进入资源工作表吧:[任务]>[甘特图]& ...
- Numpy.frompyfunc()将计算单个值的函数转化为计算数组中每个元素的函数
Numpy.frompyfunc()将计算单个值的函数转化为计算数组中每个元素的函数 不再通过遍历,对数组中的元素进行运算,利用frompyfunc()将计算单个值的函数转化为计算数组中每个元素的函数 ...