小组成员姓名 | 学号 | Github账户名称 |
---|---|---|
安茂祥 | 202000180071 | **hellowoe23 (Maoxiang An) ** |
尹文浩 | 202000180069 | wynneyin (尹文浩) |
张佳宁 | 202000161013 | zjn-wsc-ywh-amx |
王思程 | 202000111024 | **hsj10 (何斩斩) ** |
项目及完成情况:
(右4列为小组成员每个人的贡献以及排序① ,②, ③, ④依次递减)
分 | 工 | |||||
---|---|---|---|---|---|---|
项目序号 | 项目名称 | 文件夹对应 | 王思程 | 张佳宁 | 尹文浩 | 安茂祥 |
SM3 | ||||||
1 | Implement the naïve birthday attack of reduced SM3 | 生日攻击 | ②查找sm3_hash算法 | ②文档编写排版 | ①编写生日攻击 | ③查找生日攻击资料 |
2 | Implement the Rho method of reduced SM3 | sm3_rho_demo\SM3 | ①完成SM3中的Rho攻击 | ①完成SM3中的Rho攻击 | ①共同完成sm3 rho demo | ①共同完成sm3 rho demo |
3 | Implement length extension attack for SM3, SHA256, etc | SM3_Length_Extension_Attack | ①完成代码实现 | ③查阅相关资料,参与讨论 | ③查阅相关资料,参与讨论 | ②修改sm3代码 |
4 | Do your best to optimize SM3 implementation (software) | sm3 (基础实现)\ sm3_SMID(优化和的sm3) | ②协助完成SIMD优化 | ②协助完成SIMD优化 | ③查阅相关资料,参与讨论 | ①完成代码主体部分 |
5 | Impl Merkle Tree following RFC6962 | Merkle | ③编写排版 | ②RFC6962文档阅读 | ①编写merkle tree | ③Merkel tree资料寻找 |
6 | Try to Implement this scheme | hashwires | ①完成主体代码 | ②查阅相关资料,参与讨论 | ②查阅相关资料,参与讨论 | ②查阅相关资料,参与讨论 |
SM2 | ||||||
7 | Report on the application of this deduce technique in Ethereum with ECDSA | ECDSA_Deduce_publickey | ①完成推算公钥代码编写以及文档 | |||
8 | Impl sm2 with RFC6979 | impl_sm2_with_RFC6979 | ①完成代码实现 | ②对sm2函数进行适配 | ③参与讨论,查阅资料 | ③参与讨论,查阅资料 |
9 | Verify the above pitfalls with proof-of-concept code | pitfalls | ①完成代码主体实现 | ③查阅资料 | ②参与讨论攻击思路 | ③查阅资料 |
10 | Implement the above ECMH scheme | [UTXOcommit hash](https://github.com/zjn-wsc-ywh-amx/practice/tree/master/UTXOcommit hash) | ③参与讨论,查阅资料 | ③参与讨论,查阅资料 | ②完成椭圆曲线部分代码 | ①完成代码主体部分 |
11 | Implement a PGP scheme with SM2 | [PGP in SM2](https://github.com/zjn-wsc-ywh-amx/practice/tree/master/PGP in SM2) | ②椭圆曲线代码部分查找编写 | ①整合代码、编写密钥协商加密部分 | ② 椭圆曲线代码部分查找编写 | ②椭圆曲线代码部分修改 |
12 | Implement sm2 2P sign with real network communication | sm2_2P__SIG | ②完成socket部分代码 | ②完成socket部分代码 | ②完成椭圆曲线部分代码 | ①完成协议主体代码 |
13 | Implement sm2 2P decrypt with real network communication | 2P_decrypt | ②椭圆曲线代码部分查找编写 | ①完成两方加密主要部分 | ②椭圆曲线代码部分查找编写 | ②椭圆曲线代码部分修改 |
Bitcoin | ||||||
14 | PoC impl of the scheme, or do implement analysis by Google | |||||
15 | Send a tx on Bitcoin testnet, and parse the tx data down to every bit, better write script yourself | 比特币交易分析 | ②编写文档 | ①交易比特分析 | ①交易比特分析 | ②寻找比特币交易测试网 |
16 | Forge a signature to pretend that you are Satoshi | Forged_Satoshi_Signature | ①Satoshi 信息寻找 | ①伪造资料寻找 | ①伪造签名代码 | ①文档编写 |
17 | Create a Cryptocurrency Blockchain | Set up easy blockchain | ①完成代码主体实现 | ②查找资料 | ③参与讨论 | ③参与讨论 |
Ethereum | ||||||
18 | Research report on MPT | MPT_report | ①MPT资料查找 | ①阅读源码 | ①阅读源码 | ①文档编写和排版 |
Real Hash Cryptanalysis | ||||||
19 | Find a key with hash value sdu_cst_20220610 under a message composed of your name followed by your student ID. For example, San Zhan 202000460001 |
|||||
20 | Find a 64-byte message under some k fulfilling that their hash value is symmetrical | |||||
Zero Knowledge | ||||||
21.1 | Write a circuit to prove that your CET6 grade is larger than 425. | |||||
21.2 | The commitment scheme used by MoE is SHA256-based. | |||||
SM4 | ||||||
22 | Impl sm4(基础实现) | SM4_ | ②SM4轮函数代码编写 | ①SM4代码整合 | ③SM4代码讨论底层实现 | ③SM4代码讨论底层实现 |
23 | Impl sm4(t_table) | SM4_ | ③讨论主要思路 | ① 代码完成部分 | ③讨论主要思路 | ②协助完成t_table实现 |
24 | Impl sm4(SIMD) | SM4_ | ③SIMD知识学习讨论思路 | ①主要代码完成 | ②协助完成SIMD优化 | ③SIMD知识学习讨论思路 |
1、对于Find a 64-byte message under some k fulfilling that their hash value is symmetrical该项目以及Find a 64-byte message under some k fulfilling that their hash value is symmetrical不知道如何去调用merow hash中的API来实现。
2、对于零知识证明部分:
a、不知道如何去设计电路
b、对零知识证明并没有完全理解清除,存在很多模糊的地方。
3、对于Pitfalls验证部分,查阅资料后发现DER编码问题在目前的区块链版本中已经被解决,没有查找到充分的资料,因此没有实现本攻击。