密码学
文章平均质量分 59
极客剑
专注+坚持
展开
-
密码破译游戏
密文:8-7-2-2-0-2-001-00-1-3-7-2-01-3-7-001-02提示1:莱布尼茨->电报->法语提示2:摩尔斯电码表原创 2013-11-19 21:38:26 · 1430 阅读 · 1 评论 -
RSA算法C语言实现
一、源文件三个rsa.h , rsa.c , main.c//rsa.h#include #define MAX_NUM 63001#define MAX_PRIME 251//! 返回代码#define OK 100#define ERROR_NOEACHPRIME 101#define ERROR_NOPUBLICKEY 102#define ERROR_GENERROR原创 2013-11-13 13:07:06 · 4294 阅读 · 0 评论 -
用CBC加密模式实现IDEA算法
分组加密算法加密的数据块长度是固定的。为了安全地加密任意长度的数据,人们引入了加密模式。通过加密模式,加密算法可加密任意长度的数据。密文反馈模式(CBC)是一种常用的加密模式,它首先将输入数据分块,每块的长度为加密算法可处理的块长度,最后一块若不到块长度,则通过填充0比特使其达到块长。上图给出了CBC的原理。其中+代表异或操作,Ek代表使用密钥k进行加密的操作,Dk代表使用密钥k解密的操作。图中上原创 2013-11-13 13:07:04 · 1787 阅读 · 1 评论 -
HMAC_MD5
HMAC_MD51、实验要求:编写基于md5和sha1的HMAC程序。要求Md5和sha1算法的源码使用实验系统中提供的代码。程序的功能是给定密钥计算任意长度的文件的HMAC值,验证一个文件的HMAC值是否是一个给定值。程序的使用接口不限,HMAC的计算和验证功能在一个单独的程序中实现,实验每个人独立完成,实验报告附主要源码。 2、实验原理:HMAC(K,m) = H((K原创 2013-11-13 13:07:02 · 3213 阅读 · 0 评论 -
C语言条件语句优化
#includeint main(){ int a=1; int z=7; int t=-a; intk=(t>>31)^(a>>31); k=k-1; int r=(93&k); printf("%d\n",r);}原创 2013-11-13 13:06:31 · 861 阅读 · 0 评论 -
俄国农民算法(C语言)
//俄国农民算法#includeint Right_Left(int g,int x,int p);int main(){ //r=g^x mod p int g,x,p; printf("The program is to compute r=g^x modp\n"); printf("Input thearguments:(form:g,x,p)\n"); scanf("原创 2013-11-13 13:06:29 · 1639 阅读 · 0 评论 -
求 v=(a^e)mod p
#includeunsigned long Func(unsigned long a,unsigned long e,unsigned longp);int main(){ unsigned long p,a,e,v; //求v=(a^e)mod p printf("Theprogram is to compute v=(a^e)mod p\n\n"); print原创 2013-11-13 13:06:23 · 895 阅读 · 0 评论 -
密码学作业 流加密(C语言)
#include #includevoid Encrypt(char *filename);void Decrypt(char *filename);int main(){ char filename[20]; int select; printf("1:Encryption \n2:Decryption \n Pleaseselect:"); scanf("%d",&sel原创 2013-11-13 13:06:16 · 2260 阅读 · 0 评论 -
溢出判断(C语言)
#include#define N 3void Mul(int T[N][N],int X[N][N],int Y[N][N]);int main(){ long intA[N][N]={ {23,53,4},{9,23,4},{43,63,45}};//long占4个字节 long intB[N][N]={ {13,23,23},{19,23,44},{23,3,37}};原创 2013-11-13 13:06:14 · 1994 阅读 · 0 评论 -
用扩展欧几里德算法来求乘法逆元(…
#include int ExtendedEuclid( int f,int d ,int *result);int main(){ intn,b,z; z = 0; printf("输入两个数:\n"); scanf("%d%d",&b,&n); if(ExtendedEuclid(n,b,&z)) printf("%d和原创 2013-11-13 13:06:10 · 1075 阅读 · 0 评论 -
密码学—椭圆曲线-求P的周期
#includeint Ni(int m,int p)//模p下m的乘法逆元{ int n,i; if(m==1) { n=1; return n; } while(mm+=p; for( i=1;i { if((m*i)%p==1) { n=i; returnn; } } }int Lmn(int x1,int y1,int x2,i原创 2013-11-13 13:06:06 · 1396 阅读 · 0 评论 -
椭圆曲线密码的C语言设计与实现
基于TOM算法库的ECC加密算法的C语言设计与实现 研究生 徐立均 内容: 一、源代码下载二、ECC算法的设计思想三、椭圆曲线参数的选取和基点的确定 四、椭圆曲线的点加和纯量乘法 五、加密文件的读入与输出六、密文的存取和读入 七、ECC加密的实现八、ECC解密的实现 九、测试结果及分析 一、源代码下载本文使用了TOM算法库实现了椭圆曲线公钥密码体制,能对各类不同的磁盘文件进行加密原创 2013-11-13 13:05:45 · 5858 阅读 · 1 评论 -
DES算法的C实现代码
英文网页:DES算法的C实现代码中文网页:DES算法的C实现代码(详解)原创 2013-11-13 13:05:38 · 1607 阅读 · 0 评论 -
Rijndael算法C源码
Rijndael算法C源码原创 2013-11-13 13:05:36 · 1246 阅读 · 0 评论 -
密码学作业——流加密(加密,解密两…
//加密文件encryption.c#include #includevoid main(){ charch; unsigned ints; //密钥种子 unsignedchar k; //密钥流 FILE*fp1,*fp2,*fp3; printf("请输入密钥种子:"); scanf("%u",&s); sr原创 2013-11-13 13:05:34 · 1658 阅读 · 0 评论 -
密码学作业——分组加密
#include#include #define N 5 //矩阵阶数int hanglieshi(int n,int x[N][N]);int yuzishi(int n,int x[N][N],int i,int j);void Inverse(int n, int x[N][N] , int y[N][N]);void Multiply(int n,int tem原创 2013-11-13 13:05:31 · 1542 阅读 · 0 评论 -
大整数乘法(C语言)
大整数乘法一、C程序源码#include#include#include"string.h"#define len 20int main(){int i,j,t,n,temp;char mult1[len];char mult2[len];printf("Input two big numbers:\n");scanf("%s %s",mult1,mult2);in原创 2013-11-13 13:07:10 · 1660 阅读 · 0 评论