- 博客(65)
- 资源 (1)
- 收藏
- 关注
原创 google aosp SDK匹配方案
在 Android 开发中,Google 提供的 Android Open Source Project (AOSP) 和 Android SDK 是密切相关的两个概念,但它们有不同的用途和定位。
2023-12-25 15:04:47
697
原创 DES的DPA攻击过程
一般智能卡只使用DES算法对数据进行加密,不采取其他防御措施,所以安全性不高。本博文主要研究智能卡使用DES算法对数据进行加密的具体细节,并针对加密过程中的关键步骤给出DPA攻击的设计思路。
2023-12-15 13:48:41
1376
原创 基于格攻击的密钥恢复方法
本篇博文介绍针对椭圆曲线签名算法的基于格攻击的密钥恢复方法,本研究将这种方法应用于椭圆曲线签名算法。针对椭圆曲线算法的攻击研究一般主要集中于算法的两个运算阶段,即标量乘阶段和组合阶段。对于椭圆曲线签名算法,针对标量乘阶段的攻击目标是恢复标量,即随机数的值。在只能获取随机数一部分比特信息的情况下,结合格基归约的方法仍然可以恢复密钥。这使得我们在攻击带有防护的算法实现时,可以考虑尝试恢复随机数一部分信息,而不是必须恢复完整的数值。
2023-11-30 10:07:04
969
原创 bazel远程构建(Remote Execution) -- Buildfarm部署中的问题
备注:查询buildFarm问题,可以在如下buildFarm的issues中查询,可获取其他人类似问题时buildFarm官方人员的回答。WARNING: missing queued operation打印的源码处加日志,判断执行情况,然后重新源码构建运行server和worker,可以发现worker2上显示的丢失operation在worker1上运行,(测试命令执行是在机器1上,和worker1同机器)机器1:部署redis1、server1、worker1。机器2:worker2。
2023-11-22 16:13:05
766
原创 bazel远程构建(Remote Execution) -- Buildfarm介绍和部署测试
Buildfarm是什么?Buildfarm是什么?Buildfarm是一个基于 Python 的分布式编译系统,支持多种语言,包括 C、C++、Java、Python、Ruby 等。BuildFarm 的设计比较灵活,可以根据实际需求进行定制和扩展。它使用一个中心控制节点来管理多个编译服务器,中心控制节点会将编译任务分发给空闲的服务器。BuildFarm 还提供了 Web 界面来方便用户管理编译任务。
2023-10-23 10:37:33
1378
原创 bazel远程构建(Remote Execution) --- linux安装Redis
启动 redis 服务进程后,就可以使用测试客户端程序 redis-cli 和 redis 服务交互了(重新打开一个交互界面)。注意这种方式启动 redis 使用的是默认配置。也可以通过启动参数告诉 redis 使用指定配置文件使用下面命令启动。127.0.0.1 是本机 IP ,6379 是 redis 服务端口。redis.conf 是一个默认的配置文件。我们可以根据需要使用自己的配置文件。查看 redis 是否启动(重新打开一个交互界面)?以上说明我们已经成功安装了redis。,下载最新稳定版本。
2023-10-20 17:23:46
277
原创 CLEAN-SC波束形成声源识别改进
CLEAN-SC 波束形成声源识别方法计算速度快、成像干净清晰、结果准确度高,但当传统延迟求和算法在各声源处输出的主瓣严重融合时,亦无法准确分辨声源。造成该缺陷的原因为: 主瓣严重融合时,CLEAN-SC 所基于的延迟求和输出峰值所在聚焦点即为声源点的假设不成立。从源相干性角度,若某聚焦点处的延迟求和输出主要由某声源贡献时,该聚焦点可标示该声源,即基于该聚焦点的位置及强度信息可重构该声源在各传声器处产生声压的互谱矩阵。
2023-09-10 00:07:06
1156
原创 雷达有源干扰识别仿真
雷达是一种用来获取目标信息的无线电探测系统,在现代军事领域信息化作战环境中雷达的作用和地方时无可取代的。雷达系统可以探测感知到目标所处区域的各类信息,进而操控各类武器实施对敌打击,因此在战场环境中雷达是敌方主要干扰攻击的对象。雷达有源干扰可进入雷达接收机,具有干扰或破坏雷达获取目标信息的能力。
2023-09-06 17:19:23
2680
3
原创 bazel相关资料来源
bazel官方中文文档 bazel官方中文文档网址2Bazel学习笔记如何评价 Google 开源的 Bazel ?Bazel使用了解编译构建工具-bazel如何挖掘 Bazel 的极致性能 如何挖掘 Bazel 的极致性能_其它网站Bazel入门(4. Remote Cache)Google Open Source Live "Bazel day"Bazel 和 AOSP 介绍
2023-09-02 11:30:26
285
原创 bazel使用中存在的问题
4、提取kernel中的bazel命令,本地重复编译两次,第二次可以全部命中本地缓存,秒级构建。但清理本地缓存,只使用远端缓存,本地重复编译两次,第二次无法全部远端缓存。3、$HOME/.bazelrc中指定分析日志保存文件用于分析。但由于无法指定相对路径,同一工程中全部bazel分析结果都保存在kernel根路径下,造成覆盖。1、Action 详情二进制文件解析为文本文件时报错,无法进一步比较分析导致缓存不命中的原因。2、远端缓存全部命中时间收益不明显 ---需分析是否为网络原因。
2023-09-02 11:28:11
668
1
原创 bazel高效使用和调优
Bazel 为了正确性和高性能,做了很多优秀的设计,那么我们如何正确的使用这些能力,让我们的构建性能“起飞”呢, 我们将从本地研发和 CI pipeline 两种场景进行分析。
2023-09-02 11:25:30
800
原创 bazel外部依赖管理
Bazel 会将下载的依赖,以 CAS 的方式存储在内置的 repository_cache 目录下。除此之外,Bazel 也支持通过 1.0.0 这样的 SerVer 版本号来声明依赖,这是 Bazel6.0 版本加入的功能,也是官方推荐使用的,具体做法可以查看官网 相关部分。Bazel 认为通过 checksum 机制,外部依赖应该是全局共享的,因此无论你的本地有多少个工程,哪怕使用的是不同的 Bazel 版本,都可以共享一份外部依赖。现在让我们看看 Bazel 是如何管理外部依赖的。
2023-09-02 11:20:20
736
原创 bazel远程构建(Remote Execution)
既然 ActionResult 可以被不同的 Bazel 任务共享,说明 ActionResult 和 Action 在哪里执行并没有关系。因此,Bazel 在构建时,可以把 Action 发送给另一台服务器执行,对方执行完,向 CAS 上传 ActionResult,然后本地再下载。这种做法减少了本地执行 Action 的开销,使得我们设置更高的构建并发度。
2023-09-02 11:18:58
672
原创 bazel远程缓存(Remote Cache)
您可以将服务器设置为构建输出(即这些操作输出)的远程缓存。这些输出由输出文件名列表及其内容的哈希值组成。借助远程缓存,您可以重复使用其他用户的 build 中的构建输出,而不是在本地构建每个新输出。增量构建极大的提升了本地研发的构建效率,但有些场合它的效果不是很好,例如 CI 环境通常采用“干净”的容器,此时没有上一次的构建数据,只能全量构建。即使是本地研发,如果从远端同步代码时修改了全局参数,也会导致增量构建失效。
2023-09-02 11:14:22
1901
原创 bazel构建原理
传统构建系统有很多是基于任务的,例如 Ant,Maven,Gradle。用户可以自定义"任务"(Task),例如执行一段 shell 脚本。用户配置它们的依赖关系,构建系统则按照顺序调度。基于 Task 的调度模型这种模式对使用者很友好,他可以专注任务的定义,而不用关心复杂的调度逻辑。构建系统通常给予任务制定者极大的"权利",比如 Gradle 允许用户用 Java 代码编写任务,原则上可以做任何事。
2023-09-02 10:58:37
811
原创 bazel工程介绍和demo构建
软件包是目标软件包的容器,在软件包的BUILD文件中定义。大多数目标是两种主要类型之一:文件和规则。如示例中的hello-world和hello-greet等。文件进一步分为两种。源文件通常由用户编写并签入代码库。生成的文件(有时称为派生文件或输出文件)不会被签入,但是从源文件生成的。第二种目标使用规则声明。每个规则实例都用于指定一组输入文件与一组输出文件之间的关系。规则的输入可以是源文件,但也可以是其他规则的输出。
2023-09-02 10:48:43
875
原创 bazel安装
采取“使用二进制安装程序”,参考:https://bazel.build/install/ubuntu?本文属于如下文章中的子章节。
2023-09-02 10:32:16
1443
原创 bazel介绍以及其发展历史
Bazel Google开源的,是一款与 Make、Maven 和 Gradle 类似的开源构建和测试工具。它使用人类可读的高级构建语言。Bazel 支持多种语言的项目,可为多个平台构建输出。Bazel支持任意大小的构建目标,并支持跨多个代码库和大量用户的大型代码库。是Google主推的一种构建工具。
2023-09-02 10:23:53
1524
原创 安全错误攻击
近年来基于错误的密码分析(fault-based cryptanalysis)已成为检测智能卡(Smartcard)安全的重要因素。这种基于错误的密码分析,假设攻击者可以向智能卡中导入一定数量的、某种类型的错误,那么智能卡会输出错误的信息,攻击者有可能利用这些错误信息揭露出嵌入在智能卡中的秘密参数(如密钥)。为此,一些研究者提出了通过检验计算结果的正确性来防止这种攻击,即如果检验结果不正确,那么拒绝输出,从而使攻击者无法得到想要的错误信息。然而,仅通过检验计算结果来防止这种攻击的方法不可行。
2023-09-01 11:20:01
1068
原创 RSA算法与错误敏感攻击
本文分析了RSA算法的加解密流程。然后指出了目前较为流行的针对RSA算法的侧信道攻击,其有别于传统的数学分析方法,核心思想是通过获取密码设备运行过程中泄露的物理信息,然后结合各种分析统计方法来获取和密钥相关的敏感信息。针对RSA的侧信道攻击,功耗攻击和故障攻击这两种较为成熟的攻击方法进行了详细的分析。对错误敏感攻击原理进行了详细的分析。
2023-08-31 23:46:14
487
原创 常见的功耗曲线预处理方法
侧信道采集到的曲线往往需要正确的预处理方式才能进行进一步得分析,本文介绍了常见的功耗曲线预处理方法:滤波、对齐以及压缩。
2023-08-15 15:43:25
795
原创 常见侧信道攻击方法
侧信道攻击方法需要采集到密码设备的能量泄露信息然后建立对应的能量消耗模型,之后使用特定的攻击方法来破解密钥。常见的侧信道攻击方法有简单能量(或电磁)攻击(SPA)、差分功耗(或电磁)攻击(DPA)和故障注入攻击。
2023-08-15 09:10:28
1998
原创 SM2算法侧信道攻击缓解技术详解
对SM2的侧信道分析,攻击者一般选择与私钥直接相关的计算进行攻击,只要通过攻击破解出私钥,就可以解密获取用户的全部明文信息,或者伪造用户的签名信息。因此重点关注SM2算法的签名运算和解密运算。
2023-08-14 11:07:28
649
原创 MIMO-NOMA系统MATLAB仿真实现
简单来说MIMO-NOMA 就是指将MIMO 与NOMA 两者相结合,充分发挥各自优势进一步提升通信质量的一项技术。
2023-08-13 00:02:35
2561
原创 RFID系统数据编码方式仿真实现
射频识别技术(RFID,即,Radio Frequency Identification)是一种非接触自动识别技术,它利用无线通信的方式自动的从目标中读取信息。典型的RFID射频识别系统包括标签和读写器两部分。是一块集成了几个主要模块的芯片,通过这几个模块来与通信,完成数据信息的交换。芯片中的是用来储存标签识别号码或其他数据,容量不大,通常为几十Kbits,芯片还有,在外部连接发射接收天线。根据不同行业的应用需要,可以把标签中的芯片设计成不同的形式以便使用。
2023-08-08 10:40:44
1305
原创 SM2算法的抗侧信道攻击
本文分为三部分,底层抗侧信道模块,标量乘抗侧信道模块以及针对数字签名里重要步骤,提出变换公式法。具有抗功耗攻击措施的倍点与点加时一种通用方法,适用于所有的标量乘。随机 NAF 窗口方法基于对 标量k 进行随机处理。改进的蒙哥马利算法,不论是1还是0都需做1次点加和1次倍点,可抗SPA。添加随机点 R 与随机坐标 Zl,使得中间值含有随机成分,可抗DPA。此外变换公式法可抗DPA,且在运算速度上也有提升。
2023-08-07 10:53:07
693
原创 一种针对RSA-CRT的功耗分析攻击方法
RSA 作为主要的公钥密码算法之一,其安全性依赖于大整数的因子分解,是被研究最为广泛的公钥算法。但由于RSA 进行的都是大数计算,RSA 加密最快的情况也比DES 慢100 倍,无论是软件还是硬件实现,速度一直是RSA 的缺陷。为此在RSA 中引入中国剩余定理(CRT),来减小求模的运算量,缩小算法所需存储表的空间,同时还减小了算法中乘法的运算量。经研究发现,在对模余操作的分析中,如果根据分析过程中得到的结果选择合适的输入再做下一步的分析,就可以减少进行DPA 攻击所需的功耗波形条数,进而提高攻击效果。
2023-07-17 11:19:33
213
原创 基于改进型灰狼算法的RFID网络规划
灰狼算法(Grey Wolf Optimizer, GWO)最早由Mirijili 等2014年提出,其思想主要来源于灰狼的捕猎行为和社会等级。但中后期存在收敛速度慢和容易陷入局部最优的问题。对此,提出一种基于惯性常数策略的搜索机制,并引入高斯算子来提高种群的多样性。下面介绍这种求解RFID网络规划问题的改进型灰狼算法,实现了在RFID网络规划问题上的应用。
2023-07-15 16:54:24
185
原创 AES算法的DFA攻击方法
在针对AES进行DFA分析时,研究者们采取的是先获取轮加密过程中某一轮次的密钥结果,得到轮密钥后根据其与初始提供的密钥之间的数学关系,逆推得到数学模型然后进行初始密钥的破译。进行差分故障攻击时,其原理主要是利用了数学分析方法和AES迭代密码的差分特性。在实施DFA分析时,统计同样的明文信息在正常执行下的输出结果和受攻击注入干扰而错误执行后的异常结果。通过对(CC∗)之间的差分值进行分析,根据此差分值信息进行部分轮密钥信息的猜测运算。下面介绍一种针对AES的DFA的具体攻击过程。
2023-07-11 16:31:56
1507
原创 我的创作纪念日
首先,手中有太多的原创资料需要整理,想通过分享发博客的方式,达到归纳整理的目的。其次,工作需要学习新的技术,想通过分享发博客的方式,进行知识梳理。最后,是想构成自己的知识体系,更方便查询与回忆。坚持这么久的创作,培养了我耐心细致地整理知识点能力。掌握了系统地学习知识的方法。以及丰富了我闲余时间的生活。希望日后能够持续坚持,对我的工作、生活都有一定的帮助。我现在工作之余都会想着阅读知识,来丰富我的知识结构。
2023-06-21 09:23:05
53
MATLAB学习课件,英文版
2023-12-13
CLEAN-SC波束形成声源识别及改进
2023-09-09
雷达有源干扰信号产生与分类
2023-09-06
RFID系统数据编码方式的MATLAB仿真实现
2023-08-08
算法与数据结构设计课件-UniversalPerfectHashing.pdf
2023-06-12
算法与数据结构设计课件-Basics
2023-06-12
各类密码算法实现 Elgamal 公钥加密,Miller-Rabin,RSA+CRT, ECDH
2023-06-12
通信信道仿真,包括无线信道传播特性仿真,OFDM系统仿真以及MIMO-OFDM系统仿真
2023-03-09
基于多素数RSA加解密算法实现,以及中国剩余定理来解密
2023-03-07
ADS-B报文的编译码算法及仿真实现
2023-01-30
基于SM2的环签名和代理签名的python代码实现
2023-01-03
高铁运营公司的列车开行方案的目标优化问题,包括MATLAB解决方案及结果
2022-12-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人