热门标签 | HotTags
当前位置:  开发笔记 > 开发工具 > 正文

2017-2018-220179225《密码与安全新技术专题》第4周作业

2017-2018-2《密码与安全新技术》第3周作业课程:《密码与安全新技术》班级:2017级92班学号:20179225上课教师:谢四江主讲教师:刘飚上课日期:2018年4

2017-2018-2 《密码与安全新技术》第3周作业

课程:《密码与安全新技术》

班级:2017级92班

学号:20179225

上课教师:谢四江

主讲教师:刘飚

上课日期:2018年4月12日

必修/选修: 必修


主要内容:分组密码的侧信道分析

芯片的形式存在 实行测评

一、侧信道的背景与意义

背景

  1. 由于个人信息保护的必要性。其中,信息安全芯片又叫密码芯片是保障国家和公民个人信息安全最重要的物质载体,己经成为信息安全所依赖的关键技术之一。而密码芯片的安全性主要由芯片所执行的密码算法决定。现在常用的商用密码算法主要分两大体系对称密
    钥加密体系和公钥加密体系。
  2. 密码芯片的安全性还取决于执行密码算法加解密运算的硬件环境的安全性。密码芯片上的加解密运算最终都是由芯片内部半导体逻辑状态和规律变化实现的。

意义

  1. 侧信道分析,技术发展至今己有十多年的时间,国内外对侧信道分析的研究已经取得一定的进展,各种分析方法(主要有功耗分析,电磁分析,时间分析等)和防御措施(主要在逻辑层面和算法层面)的提出,促进了密码芯片侧信道安全性的提高。
  2. 侧信道防御技术的有效性直接影响着密码芯片的商业应用,国家也需要对商用密码芯片的安全性进行统一的评估和认证。
    侧信道分析技术虽然已出现了十余年,但直至近几年才开始逐渐受到商业界的重视,目前国内很多商用密码设备甚至还不具备防御简单侧信道分析的能力。为维护社会信息安全,针对密码芯片的侧信道分析技术的防御措施及其评估方法还需进一步研究和完善,以实现对密码芯片侧信道安全性的统一规范和认证。

二、半导体的物理基础

常见的密码芯片的内部电路都是基于CMOS工艺的,且采用的是同步设计方式。CMOS门电路是构成密码芯片的最基本的器件,密码芯片的所有运算都是通过门电路的状态变化来实现的。门电路的动态功耗主要包括两部分:动态充放电电流(约占85%)和动态短路电流(约占15%)。通常,密码芯片处理逻辑。和逻辑的运算会引起芯片内部不同门电路不同状态的变化,因此会消耗不同的功率,侧
信道分析就是通过侦听这种差异来进行对逻辑和逻辑的判别的。正确地找出
加解密过程中所有与密钥相关的逻辑值之后,再结合密码算法,便可对密码芯片
的密钥进行破译。

下面通过CMOS反相器的状态变化来简单说明侧信道分析的功耗原理。CMOS反相器的典型电路可用图表示如下

  1. 功耗分析
    功耗分析最早是由Paul Kocher等人提出的,由于该技术简单而有效,是所有侧信道分析技术里发展最为迅速的,其主要分析方式有如下几种:

    1.1 简单功耗分析:英文为Simple Power Analysis,简称SPA,SPA通过直接分析硬件电路加密操作时释放出的功耗特征来获取与密钥有关的信息,根据功耗曲线的特征及分析者的经验就可直观地分析出指令执行的顺序,常被用来破解指令顺序与某些数据有关的算法,从少量功耗曲线,就可直接观察分析出关键数据,分析者需要熟悉设备的算法实现。该方法所使用的主要手段是观察当加密过程由于关键数据的不同导致功耗曲线存在可以观察的差异时,SPA有效。

    上课时以DES为例讲述了简单功耗分析

1.2 差分功耗分析:英文为Differential Power Analysis,简称DPA,DPA可从功耗曲线微小的差分信号分析出所需的关键信息,但需要搜集大量的信息,并采集多组功耗曲线以及每条曲线对应的明文、密文记录,通常需要一定的SPA分析经验和较长时间的分析运算,对分析平台的设备要求也比较高。DPA利用的是差分数理统计方法,对密码芯片的安全性提出了严峻的挑战,己成为国内外关注和研究的焦点。
步骤为采样---构造---猜测---平均求差
确定一攻击点(一般找S盒)
找S盒的原因:(1)S盒置换是DES算法的关键步骤
(2)与密钥关联度大
(3)运算时间长对硬件资源的消耗大

密钥“分而治之”(divide and concur),6位一组进行破解  2^48 vs. 2^6;
用统计学的方法提高侧信道信息与数据的相关性 P=f(data)+noise

1.3 相关性功耗分析:是基于汉明距模型的一种数据相关性功耗分析方式。相关性功耗分析选择一个未知但是恒定的参考态,建立一个具有数据相关性的汉明距模型,利用功耗样点与被处理数据的汉明重之间的相关性因子来进行分析。采用去同步化、模糊功耗轨迹、动态加密等手段可防御这种分析。

分析结果:

1.4 高阶差分分析:HO-DPA,也称n阶DPA,常见的为二阶DPA,主要研究的是功耗曲线上多个时刻多个点与密钥数据的统计相关性,是比常规DPA更复杂也更
难防的一种功耗分析方式,因为常规的DPA(也称一阶DPA)只是研究单个点的统计相关性。但这种HO-DPA分析方式实现起来较为困难,而且对密码算法有一定的针对性,不具备普适性。

  1. 功耗分析
    汉明距离:状态的变化,例如 1010变为了0101其汉明距离为4。
    汉明重量:特殊的汉明距,把初始状态都看为全0
    汉明重的不同体现在电压上,在某些点不同
    整个密码运算上在算法的某些时间距离与数据无关。

  2. 模板攻击

    特征化阶段:找到最相关的点并建立模板。
    分析阶段:把这些模板与给定的功耗曲线进行匹配,匹配度最大的模板表明得到正确密钥。

    白噪声符合高斯分布,噪声之间符合多元正态分布
    建立模板的步骤:(1)对每个密钥建立模板:8位密钥建256模板
    (2)样本曲线—均值曲线=噪声
    (3)由于协方差可以用来描述两个随机变量的线性相关性,建立协方差矩阵。
    (4)可以为每一个密钥定义一个 2 元组 T,该二元组由均值矩阵 M和协方差矩阵 COV 构成。

  3. 攻击中对噪声的处理
    对齐、滤波、压缩

三、电磁辐射分析攻击

原理
麦克斯韦方程组揭示变化的电场引起变化的磁场,变化的磁场引起变化的电场。
电流在处理器中的变化可以通过检测磁场的变化而分析出。
四种产生电场、磁场、电磁场的电路

学习中的问题和解决过程

1 面对攻击有何防御措施

常用的防御措施可归结为两类掩码技术和功耗平衡技术。掩码技术主要通过增加随机操作或者打乱操作顺序的方式来实现对逻辑0和1功耗的掩盖,但并未从根本上解除侧信道分析的基础,不能达到很高的防御效果。功耗平衡技术主要为了平衡状态0和1消除二者的功耗差异,可从根本上破坏侧信道分析的基础,尤其在逻辑上实现的功耗平衡技术,能够达到较高的防御标准。针对ECC点乘实现。

2 如何判断芯片的安全性

密码芯片的安全性还取决于执行密码算法加解密运算的硬件环境的安全性。

其他

通过此次课程再次复习了几种加密算法,知道了侧信道分析与加密算法紧密相连。但对学习的半导体物理基础仍然认识不足。


推荐阅读
  • 雨林木风 GHOST XP SP3 经典珍藏版 YN2014.04
    雨林木风 GHOST XP SP3 经典珍藏版 YN2014.04 ... [详细]
  • 本文档提供了详细的MySQL安装步骤,包括解压安装文件、选择安装类型、配置MySQL服务以及设置管理员密码等关键环节,帮助用户顺利完成MySQL的安装。 ... [详细]
  • 构建高性能Feed流系统的设计指南
    随着移动互联网的发展,Feed流系统成为了众多社交应用的核心组成部分。本文将深入探讨如何设计一个高效、稳定的Feed流系统,涵盖从基础架构到高级特性的各个方面。 ... [详细]
  • 本文详细介绍了Oracle RMAN中的增量备份机制,重点解析了差异增量和累积增量备份的概念及其在不同Oracle版本中的实现。通过对比两种备份方式的特点,帮助读者选择合适的备份策略。 ... [详细]
  • 尤洋:夸父AI系统——大规模并行训练的深度学习解决方案
    自从AlexNet等模型在计算机视觉领域取得突破以来,深度学习技术迅速发展。近年来,随着BERT等大型模型的广泛应用,AI模型的规模持续扩大,对硬件提出了更高的要求。本文介绍了新加坡国立大学尤洋教授团队开发的夸父AI系统,旨在解决大规模模型训练中的并行计算挑战。 ... [详细]
  • 本文汇集了作者在准备研究生入学考试过程中的心得体会,包括备考策略、复习重点及应对考试的心理调适技巧,旨在为即将参加考研的学生提供实用建议。 ... [详细]
  • 分布式计算助力链力实现毫秒级安全响应,确保100%数据准确性
    随着分布式计算技术的发展,其在数据存储、文件传输、在线视频、社交平台及去中心化金融等多个领域的应用日益广泛。国际知名企业如Firefox、Google、Opera、Netflix、OpenBazaar等均已采用该技术,推动了技术创新和服务升级。 ... [详细]
  • 本文探讨了在不同场景下如何高效且安全地存储Token,包括使用定时器刷新、数据库存储等方法,并针对个人开发者与第三方服务平台的不同需求提供了具体建议。 ... [详细]
  • This article explores the process of integrating Promises into Ext Ajax calls for a more functional programming approach, along with detailed steps on testing these asynchronous operations. ... [详细]
  • Java高级工程师学习路径及面试准备指南
    本文基于一位朋友的PDF面试经验整理,涵盖了Java高级工程师所需掌握的核心知识点,包括数据结构与算法、计算机网络、数据库、操作系统等多个方面,并提供了详细的参考资料和学习建议。 ... [详细]
  • 尽管已经查阅了相关说明,但关于Html.Partial和Html.RenderPartial在ASP.NET MVC3中的使用,我仍然感到困惑。 ... [详细]
  • 时序数据是指按时间顺序排列的数据集。通过时间轴上的数据点连接,可以构建多维度报表,揭示数据的趋势、规律及异常情况。 ... [详细]
  • 利用50行Python代码打造经典游戏,既是休闲娱乐,也是编程学习的利器
    Free Python Games 是一个适合学生和初学者的项目,它不仅提供了高度的组织性和灵活性,还极大地激发了用户的探索与理解能力。 ... [详细]
  • 探讨了生成时间敏感的一次性伪随机密码的方法,旨在通过加入时间因素防止重放攻击。 ... [详细]
  • 在Linux系统中使用EncFS实现文件夹加密
    为了保护个人隐私或敏感数据不被未经授权的访问,可以通过加密技术来增强安全性。本文介绍如何在Linux系统上使用EncFS工具创建和管理加密文件夹,以确保即使在系统登录状态下,特定文件夹中的数据也保持加密状态。 ... [详细]
author-avatar
手机用户2502894731
这个家伙很懒,什么也没留下!
Tags | 热门标签
RankList | 热门文章
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有