自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (1)
  • 收藏
  • 关注

原创 默克尔树课设

代码结构代码分为3个文件,Merkle_Tree.h(附录1)、Merkle_Tree.cpp(附录2)、Demo.cpp(附录3)。将类的构造及类函数的声明放在了Merkle_Tree.h文件中;Merkle_Tree.cpp中是对Merkle_Tree.h里定义类函数的具体实现;Demo.cpp是最终的测试文件,即主函数。文件读取函数:void GetAllFiles(~),用于获取path路径下所有文件的相对路径及文件名。类:(1) class Word,作为hash算法的基本数..

2021-07-31 17:00:57 3922

原创 Java AES加解密(128/192/256位密钥)

做大作业写的,仅供学习参考,加密速度只有120kB/s的样子,有修改提速的空间。(1)加密时文件读写类ReadandWriteFileBynByte1用于AES加密的分组(最小单位为字32bits)文件读写IO,本软件将每组字数Nb设置为4,由于采用了PKCS5PADDING / PKCS7PADDING填充模式。所以分组大小限制在256/4=64个字以内。(2)解密时文件读写类ReadandWriteFileBynByte2用于AES解密的分组(最小单位为字32bits)文件读写IO,本软件将

2021-01-17 15:09:19 3173 5

原创 移位密码加密(仅带空格26英文字母)

#include <iostream>#include<iomanip>using namespace std;//密钥#define K 13int main(){ string plaintext="this is the message"; string ciphertext=""; cout << plaintext << endl; for (int i = 0; i < plaintext.length(); i++.

2020-10-12 21:48:22 1106

原创 仿射密码加密(仅带空格26英文字母)

#include <iostream>#include<iomanip>using namespace std;//密钥#define A 3#define B 7int main(){ string plaintext = "meet me at midnight";//明文 cout << plaintext << endl; string ciphertext; for (int i = 0; i < plaintext.

2020-10-12 21:40:24 286

原创 维吉尼亚密码(仅带空格26英文字母段)

#include <iostream>#include<iomanip>using namespace std;#define A 3#define B 7int main(){ string plaintext = "this cryptosystem is not secure";//明文 string secretKey = "cipher";//密钥 cout << plaintext << endl; string ciph.

2020-10-12 21:35:10 578 1

原创 置换密码加密(仅带空格的26英文段)

置换密码#include <iostream>#include<iomanip>using namespace std;#define N 6//密钥长度int main(){ string plaintext = "she sells seashells by the seashore";//明文 int secretKey[N] = { 3,5,1,6,4,2 };//密钥 cout << plaintext << endl.

2020-10-12 21:31:04 441 1

原创 图片压缩过程模拟:dct离散余弦变换+量化+哈夫曼编码+LZ编码+上述反变换及译码c++

《信息论》的课程设计,要求完成标题所述内容//仅供参考使用matlab或更方便简洁,但如果想过一遍流程的话可以参考下面的代码,编译需要安装opencv代码还有很大优化的空间,可以用向量解决代码中指针较多的问题。也可以用多线程优化运行速度,LZ编码类可以试着增加独立性,取消与霍夫曼编码的关联,建议试运行时使用较小的图片,过一下main函数。文中参考网址及部分代码来源:dct变换及逆变换的代码及量化部分的参考代码https://blog.csdn.net/u014518566/artic

2020-05-30 12:38:29 840

原创 c++高效的LZ编码以及LZ译码类(编码时引用了哈夫曼树统计概率,可另外补充)

//输出序列使用的是字符串//仅供参考//LZ编码结点class LZP;//LZ编码器//对霍夫曼编码具有依赖性class LZCODE;//LZ译码器class LZDECODE;class LZP {//加一个前置索引则可以将译码器优化public: int num;//信源符号 int lastposit;//前一个位置 int posit;//当前位置 int pnum;//尾巴个数 LZP** p;//尾巴指针 LZP(

2020-05-12 23:37:15 1083 1

原创 c++哈夫曼编码类

//可以使用向量优化代码中的realloc语句和malloc语句//曾用于课程设计,略显稚气//霍夫曼树结点class HFMP;//霍夫曼编码器class HFMCODE;//霍夫曼译码器class HFMDECODE;class HFMP {public: int num;//信源符号(数字) int count;//出现次数 double p;//概率 bool tag;//标签,默认为true,用于霍夫曼树中辨别是否为原概率 st

2020-05-12 23:33:35 494 1

原创 基于状态机的简单逻辑正方形矩阵的Z字扫描以及逆变换

//NUM可取任意自然数int Zscan(int datain[NUM][NUM], int dataout[NUM * NUM]){ int i, j, k, c; for (i = 0, j = 0, k = 0, c = 0; k < NUM * NUM; k++) { dataout[k] = datain[i][j]; if (i == 0 && j == 0) c = 0; .

2020-05-12 23:21:46 283 3

DS_CDMA.rar

不想打字了,自己研究,移动通信课设

2021-07-31

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除