密码学
文章平均质量分 55
密码学是研究加密和解密技术的科学和实践领域。它涉及设计和使用密码算法来保护信息的机密性、完整性和认证性。密码学的目标是确保只有授权的人可以访问信息,防止信息被未经授权的人篡改或伪造,并验证信息的来源。
归子莫
对什么都感兴趣的开发者。
展开
-
模逆运算(C语言)
模逆运算(C语言)简介使用扩展欧几里得算法代码实现#include <stdio.h>int main(){ int temp,q,t1,t2,t3,i=1; int a,b,swap=0; int x1,x2,x3,y1,y2,y3; /**欢迎**/ printf("--------欢迎使用模逆运算-----------\n")...原创 2020-03-06 13:04:26 · 4066 阅读 · 1 评论 -
希尔(Hill)密码(C语言)
希尔(Hill)密码(C语言)简介是运用基本矩阵论原理的替换密码,每个字母当作26进制数字:A=0, B=1, C=2… 一串字母当成n维向量,跟一个n×n的矩阵相乘,再将得出的结果mod26。用作加密的矩阵(即密匙)必须是可逆的,否则就不可能译码。只有矩阵的行列式和26互质,才是可逆的。C语言实现#include <stdio.h>#include <string.h...原创 2020-02-24 18:49:32 · 6718 阅读 · 1 评论 -
仿射密码(C语言实现)
仿射密码(C语言实现)简介仿射密码是一种表单代换密码,字母表的每个字母相应的值使用一个简单的数学函数对应一个数值,再把对应数值转换成字母。加解密公式加密函数:Y =(AX+B)%26解密函数:X =(A的逆元)*(Y-B)%26来个官方一点的加密函数:E(x) = (ax + b) (mod m),其中 a与b互质,m是编码系统中字母的个数(通常都是26)。解密函数:D(x) ...原创 2020-02-24 16:22:36 · 15784 阅读 · 2 评论 -
Vigenere密码(维吉尼亚密码)c语言实现
Vigenere密码(维吉尼亚密码)c语言实现简介Vigenere密码是基于关键词的加密系统。算法解释Vigenere密码技术使用一个词组作为密钥,词组中的每一个字母都作为移位替换密码的密钥并确定一个替换表,然后循环地使用每一个替换表完成明文字母到密文字母的转换.加解密函数加密函数:Ci=Pi+Ki(mod 26)解密函数:Pi=Ci-Ki(mod 26)c语言实现#incl...原创 2020-02-24 13:49:57 · 26117 阅读 · 10 评论 -
PlayFair算法
PlayFair算法简介PlayFair算法是古典密码学中的多表代替算法步骤1、将给出的密钥去重与26个字母拼接成后,生成5X5的矩阵也称作密码表(矩阵中I和J位置相同)2、将明文两个两个为一对儿3、利用加密方法来将明文加密加密详解P1、P2同行:对应的C1和C2分别是紧靠P1、P2右端的字母。其中第一列被看作是最后一列的右方。(解密时反向)P1、P2同列:对应的C1和C2分...原创 2020-02-23 19:49:49 · 4226 阅读 · 3 评论 -
凯撒密码(Caesar)的原理和算法实现(C语言)
凯撒密码(Caesar)的原理和算法实现1.凯撒密码的原理:它是一种古典密码体质下的一种密码,是一种移位密码,具有单表密码的性质,密文和明文都使用同一个映射,为了保证加密的可逆性,要求映射都是一一对应。2.凯撒密码的公式:加密公式: f(a)=(a+N) mod 26解密公式: f(a)=(a+(26-N)) mod 26其中N代表的是位移数,也可以算是k;3.代码实现:#incl...原创 2019-09-03 17:38:24 · 34802 阅读 · 5 评论