密码学

2019-2020-1 20175310 20175317 20175320 实验二 固件程序设计

ぃ、小莉子 提交于 2019-12-04 18:38:19
2019-2020-1 20175310 20175317 20175320 实验二 固件程序设计 小组成员 20175310 奚晨妍 20175317 钟睿文 20175320 龚仕杰 实验步骤 一、固件程序设计-1-MDK 实验要求: 1.参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.1-1.5安装MDK,JLink驱动,注意,要用系统管理员身分运行uVision4,破解MDK(破解程序中target一定选ARM) 2.提交破解程序中产生LIC的截图 3.提交破解成功的截图 步骤: 按照实验指导书进行安装以及破解即可,类似的破解操作我们在数字电路的实验中也进行过,在过程中没有遇到较大的问题。破解成功截图如下: 二、固件程序设计-2-LED 实验要求: 1.参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.4” KEIL-MDK 中添加 Z32 SC-000 芯片库,提交安装截图 2.参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.9”完成LED实验,注意“打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,进行下载调试。提交运行结果截图 3.实验报告中分析代码 步骤: 1.将试验箱与电脑之间连好线,这里需要使用串口线以及usb线。 2.在KEIL-MDK 中添加 Z32 SC-000

2019-2020-2-20175301 20175305 20175318-实验二固件程序设计

非 Y 不嫁゛ 提交于 2019-12-04 18:16:44
实验一 开发环境的熟悉 本小组成员 20175301 20175305 20175318 一、实验步骤 1-MDK 实验要求 1.参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.1-1.5安装MDK,JLink驱动,注意,要用系统管理员身分运行uVision4,破解MDK(破解程序中target一定选ARM) 2.提交破解程序中产生LIC的截图 3.提交破解成功的截图 实验步骤 按照实验指导书上的操作进行软件安装-->运行 uVision4,点 File>>License Management-->复制 CID-->运行keil-MDK注册机(在“Z32开发指南\2.软件资料\keil-MDK 注册机”双击“keil mdk474注册机”)-->粘贴 CID 并选择 ARM。 2-LED 实验要求 1.参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.4” KEIL-MDK 中添加 Z32 SC-000 芯片库,提交安装截图 2.参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.9”完成LED实验,注意“打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,进行下载调试。提交运行结果截图 3.实验报告中分析代码 实验步骤 首先先在 KEIL-MDK 中添加 Z32 SC-000 芯片库,操作过程为

2019-2020-1 20175301 20175305 20175318 实验二 固件程序设计

家住魔仙堡 提交于 2019-12-04 18:16:16
实验一 开发环境的熟悉 本小组成员 20175301 20175305 20175318 一、实验步骤 1-MDK 实验要求 1.参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.1-1.5安装MDK,JLink驱动,注意,要用系统管理员身分运行uVision4,破解MDK(破解程序中target一定选ARM) 2.提交破解程序中产生LIC的截图 3.提交破解成功的截图 实验步骤 按照实验指导书上的操作进行软件安装-->运行 uVision4,点 File>>License Management-->复制 CID-->运行keil-MDK注册机(在“Z32开发指南\2.软件资料\keil-MDK 注册机”双击“keil mdk474注册机”)-->粘贴 CID 并选择 ARM。 2-LED 实验要求 1.参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.4” KEIL-MDK 中添加 Z32 SC-000 芯片库,提交安装截图 2.参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.9”完成LED实验,注意“打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,进行下载调试。提交运行结果截图 3.实验报告中分析代码 实验步骤 首先先在 KEIL-MDK 中添加 Z32 SC-000 芯片库,操作过程为

2019-2020-1 20175307 20175308 20175319 实验二 固件程序设计

好久不见. 提交于 2019-12-04 16:36:35
2019-2020-1 20175307 20175308 20175319 实验二 固件程序设计 小组成员 20175307高士淳 20175308杨元 20175319江野 实验步骤 1.MDK 实验要求 0.注意不经老师允许不准烧写自己修改的代码 1.三人一组 2.参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.1-1.5安装MDK,JLink驱动,注意,要用系统管理员身分运行uVision4,破解MDK(破解程序中target一定选ARM) 3.提交破解程序中产生LIC的截图 4.提交破解成功的截图 实验步骤 下载并运行安装程序,安装MDK MDK安装结束页面,点击安装ULINK驱动 Ulink安装结束后自动退出,安装结束 运行uVision4,点击 文件>>许可证管理 ,复制CID 运行keil-MDK注册机,粘贴CID并选择 ARM ,点击 generate 生成 LIC 将生成的LIC复制到keil4中的LIC输入框中,点击 Add LIC ,破解完成。 2.LED 实验要求 0.注意不经老师允许不准烧写自己修改的代码 1.参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.4” KEIL-MDK 中添加 Z32 SC-000 芯片库,提交安装截图 2.参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.9”完成LED实验

CTF密码学常见加解密总结

给你一囗甜甜゛ 提交于 2019-12-04 15:52:59
CTF密码学常见加解密总结 2018年03月10日 19:35:06 adversity` 本文链接: https://blog.csdn.net/qq_40836553/article/details/79383488 CTF密码学总结 之前拜读了各路大神关于密码学的文章,讲解的十分透彻,感觉顿时领悟。但是后来需要用时,脑子里一片空白,空白,白,白,白......所以写篇文章以记之,以免再次忘记23333。废话少说,上正文。 1.base64编码 Base64是网络上最常见的用于传输8Bit 字节码 的编码方式之一,base64就是一种基于64个可打印字符来表示二进制数据的表示方法。由于2的6次方等于64,所以每6个比特为一个单元,对应某个可打印字符。三个字节有24个比特,对应4个base64单元,即3个字节可表示4个可打印字符。它可用来作为电子邮件的传输编码。在base64中的可打印字符包括字母A-Z、a-z、数字0-9,这样共有62个字符,此外两个可打印符号在不同系统中而不同。 例如:编码‘Man' 在此例中,base64算法将3个字符编码转为4个字符 base64索引表: 如果要编码的字节数不能被3整除,最后会多出1个或2个字节,那么可以使用下面的方法进行处理:先使用0字节值在末尾补足,使其能够被3整除,然后再进行base64的编码

2019-2020-1 20175203 20175206 实验二 固件程序设计

送分小仙女□ 提交于 2019-12-04 13:06:11
实验二 固件程序设计-1-MDK 0. 注意不经老师允许不准烧写自己修改的代码 1. 三人一组 2. 参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.1-1.5安装MDK,JLink驱动,注意,要用系统管理员身分运行uVision4,破解MDK(破解程序中target一定选ARM) 3. 提交破解程序中产生LIC的截图 4. 提交破解成功的截图 破解方式与诸多软件破解方式类似,将网卡信息拉入注册机进行分析,即所谓的CID码,将CID码输入注册机,得到LIC码反输入软件即可破解: MDK成功破解截图如下: 实验二 固件程序设计-2-LED 0. 注意不经老师允许不准烧写自己修改的代码 1. 参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.4” KEIL-MDK 中添加 Z32 SC-000 芯片库,提交安装截图 2. 参考云班课资源中“信息安全系统实验箱指导书.pdf “第一章,1.9”完成LED实验,注意“打开Z32的电源开关前,按住Reboot按键不放,两次打开电源开关,Z32即可被电脑识别,进行下载调试。提交运行结果截图 3. 实验报告中分析代码 按照信息安全系统实验箱指导书安装芯片库即可,需要注意以管理员的身份运行软件即可完成: LED灯闪烁效果: Z32下载成功界面: Main.c代码如下: #include "Main.h"

分组密码体制【密码学笔记】

与世无争的帅哥 提交于 2019-12-04 01:58:36
分组密码的基本概念 ​ 分组密码在加密过程中不是将明文按字符逐位加密,而是首先要将待加密的明文进行分组,每组的长度相同,然后对每组明文分别加密得到密文。加密和解密过程采用相同的密钥,称为对称密码体制。 ​ 例如将明文分为 \(m\) 块: \(P_{0},P_{1},P_2,…,P_{m-1}\) ,每个块在密钥作用下执行相同的变换,生成 \(m\) 个密文块: \(C_0,C_1,C_2,…,C_{m-1}\) ,每块的大小可以是任意长度,但通常是每块的大小大于等于64位(块大小为1比特位时,分组密码就变为序列密码)。 如下图所示是通信双方最常用的分组密码基本通信模型。 ​ 一个分组密码系统(Block Cipher System,简称BCS)可以用一个五元组来表示: \(BCS=\{P,C,K,E,D\}\) 。其中,P(plaintext)、C(ciphertext)、K(key)、E(encryption)、D(decode)分别代表明文空间、密文空间、密钥空间、加密算法、解密算法。 设 \(X=\{x_0,x_1,…,x_{n-2},x_{n-1}\}\) 为一组长度为 \(n\) 的明文块,在密钥 \(K=\{k_0,k_1,…,k_{t-1}\}\) 的加密作用下得到密文块 \(Y=\{y_0,y_1,…,y_{m-2},y_{m-1}\}\) ,其中 \(x_i,y

湖湘杯 两道密码学题目 以及 红帽杯的部分re

南笙酒味 提交于 2019-12-03 10:20:25
挑几道好玩的题目说一说 第一道 Easy rsa 这个题目给了dp 那么就很简单了 直接dp攻击就可以了 题目脚本 from Crypto.Util.number import * import libnum import gmpy2 flag = open("flag.txt","rb").read() m=libnum.s2n(flag) p=getPrime(1024) q=getPrime(1024) n=p*q e=65537 c=pow(m,e,n) phi=(p-1)*(q-1) d=gmpy2.invert(e,phi) dp=d%(p-1) print dp,n,e,c

Android 加密算法归纳

匿名 (未验证) 提交于 2019-12-03 00:33:02
密钥:分为加密密钥和解密密钥。 明文:没有进行加密,能够直接代表原文含义的信息。 密文:经过加密处理处理之后,隐藏原文含义的信息。 加密:将明文转换成密文的实施过程。 解密:将密文转换成明文的实施过程。 密码是通信双方按约定的法则进行信息特殊变换的一种重要保密手段。依照这些法则,变明文为密文,称为加密变换;变密文为明文,称为脱密变换。密码在早期仅对文字或数码进行加、脱密变换,随着通信技术的发展,对语音、图像、数据等都可实施加、脱密变换。 为安全框架提供类和接口,如解析和管理证书、密钥生成、算法参数。 java.security java.security.acl java.security.cert java.security.interfaces java.security.spec 2.为加密操作提供类和接口,如加密操作包括加密,密钥生成和密钥协议以及消息认证码(MAC)生成。 支持加密包括对称,非对称,块和流密码。 javax.crypto javax.crypto.interfaces javax.crypto.spec 可参考谷歌开发者文档: https://developer.android.com/reference/packages Base64 Base64只是一种编码方式,将二进制数据转化为字符

带你揭开区块链中密码学的神秘面纱

匿名 (未验证) 提交于 2019-12-03 00:26:01
一、什么是区块链技术? 区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点公式算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式 。狭义来讲, 区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构,并以密码学方式保证的不可篡改和不可伪造的分布式账本 。我们对此做一个总结,可以发现区块链中有四项不可缺的核心技术,分别是分布式存储、共识机制、密码学原理和智能合约。而我将主要从密码学的角度来解析区块链技术。 图片来源(中国工控网) 二、区块链中的密码学 数字签名 ,每一位所有者通过对前一次交易和下一位拥有者的 公钥 签署一个 随机散列 的数字签名,并将这个签名附加在这枚电子货币的末尾,电子货币就发送给了下一位所有者。而收款人通过对签名进行校验,就能够验证该链条的所有者。这里就涉及了非对称加密算法以及数字签名技术。 非对称密码学 非对称密码学由一对不同的公钥和私钥对组成,如果用公钥对数据进行加密则只能用对应的私钥才能进行解密,反之如果用私钥进行加密,那么只有用对应的公钥去进行解密。由于可以对密钥进行公开,因此也叫公开密钥加密算法。 目前常见的非对称密码算法有RSA算法、ECC(椭圆曲线加密算法)、 Diffie-Hellman 算法、Elgamal算法等