拖两个TextBox用来输入明文和k
string m=textbox1Text;
int[] res=0;
int count=0;
foreach (var v in m)
{
resSetValue((v-'A'+intParse(thistextbox2Text))%26,count);
count++;
}
最后res保存着密文数组
常用密钥算法
密钥算法用来对敏感数据、摘要、签名等信息进行加密,常用的密钥算法包括:
DES(Data Encryption Standard):数据加密标准,速度较快,适用于加密大量数据的场合;
3DES(Triple DES):是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高;
RC2和RC4:用变长密钥对大量数据进行加密,比DES快;
RSA:由RSA公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件快的长度也是可变的;
DSA(Digital Signature Algorithm):数字签名算法,是一种标准的DSS(数字签名标准);
AES(Advanced Encryption Standard):高级加密标准,是下一代的加密算法标准,速度快,安全级别高,目前AES标准的一个实现是 Rijndael算法;
BLOWFISH:它使用变长的密钥,长度可达448位,运行速度很快;
其它算法:如ElGamal、Deffie-Hellman、新型椭圆曲线算法ECC等。
常见加密算法
des(data
encryption
standard):数据加密标准,速度较快,适用于加密大量数据的场合;
3des(triple
des):是基于des,对一块数据用三个不同的密钥进行三次加密,强度更高;
rc2和
rc4:用变长密钥对大量数据进行加密,比
des
快;
idea(international
data
encryption
algorithm)国际数据加密算法:使用
128
位密钥提供非常强的安全性;
rsa:由
rsa
公司发明,是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的;
dsa(digital
signature
algorithm):数字签名算法,是一种标准的
dss(数字签名标准);
aes(advanced
encryption
standard):高级加密标准,是下一代的加密算法标准,速度快,安全级别高,目前
aes
标准的一个实现是
rijndael
算法;
blowfish,它使用变长的密钥,长度可达448位,运行速度很快;
其它算法,如elgamal、deffie-hellman、新型椭圆曲线算法ecc等。
比如说,md5,你在一些比较正式而严格的网站下的东西一般都会有md5值给出,如安全焦点的软件工具,每个都有md5。
我对“恩尼格玛”密码机很感兴趣,趁着考完AP历史和物理休息的时间,整理一下我自己学到的东西,包括密码的历史和恩尼格玛的历史。
I am interested in the "Enigma" cipher machine While taking a break after AP history and physics exam I organized what I have learned, including the history of cipher and enigma
密码学是研究密码技术的科学,目的是研究保障信息安全的技术和手段。
密码在中外历史上古代就有广泛的应用,比如中国的狼烟,消息树,古罗马的凯撒密码等,这些密码都是利用简单的直接想象编制完成的。现代的密码学原理直到20世纪初都才逐渐形成,现代的密码学是数学+通信+计算机科学等学科于的交叉科学。
Cryptography is the study of the science of cryptography, the purpose of which is to study the technology and means to ensure information security
Passwords have been widely used in Chinese and foreign history, such as the Chinese "Wolf smoke", "message tree", and the ancient Roman "Caesar" ciphers
The principles of modern cryptography were not gradually formed until the early 20th century Modern cryptography is an interdisciplinary science of mathematics, communication and computer science
一、几个非常有意思的例子
唐朝武则天朝执政期间,宰相裴炎与徐敬业(就是骆宾王著名的檄文《为徐敬业讨武曌檄》中的徐敬业)勾搭造反,裴给徐送去一封密信,书信被武则天查获。信中只有“青鹅”两个字,武则天识破密信内容,“青”字可以拆分成“十二月”,繁体的“鹅”,可以拆分成“我自与”,断定裴炎十二月要造反,将裴炎处死于洛阳。
古罗马皇帝恺撒向前线司令官发出了一封密信:VWRS WUDIIF,密信的内容被敌方截获,但是敌方根本不了解这是什么意思,但罗马的前线司令官却很快明白了。因为古罗马皇帝同时发出的还有另外一封密信:前进三步,两封信结合到一起,VWRS WUDIIF就是STOP TRAFFIC。
二、古典密码
原始的加密方法,也被称为古典密码,大致有以下几种,
1、棋盘密码
公元前两世纪,一个希腊人提出了棋盘密码,原理是把26个字母放合5x5的方格里,其中i、j放在同一个格中,具体如下表:
如果α是该字母所在行的标号,β是列标号,那么每个字母就对应了由两个数字αβ构成的字符。如果接收到密文为:11、35、12、24、34、31、34、22、54,对应的明文就是:A P B I O L O G Y。
2、替代密码法
典型的替代密码法是凯撒密码,以上文的前进三步为例:“VWRS WUDIILF”+“前进三步”,按照字母表,前进三步,就出现了如下的转换:v—s、w—t、r—o、s—p、w—t、U—r、d—a……,最后解密为 STOP TRAFFIC。
法国人维吉尼亚1585年在凯撒密码基础上,使用一系列凯撒密码组成密码字母表的加密方法,被称作维吉尼亚密码。
假设明文为:
ATTACKLONDON
选择一个关键词作为密钥,关键词重复使用,如果关键词为LEMON,对应上述明文的密钥为:LEMONLEMONLE
明文的第一个字母A,对应密钥的第一个字母L,使用表格中L行字母表进行加密,得到密文第一个字母L。类似,明文第二个字母为T,在表格中使用对应的E行进行行加密,得到密文第二个字母X。如此类推,可以得到:
明文:ATTACKLONDON
密钥:LEMONLEMONLE
密文:LXFOPVPABOZE
3、一次性密码本
一次性密码本(One Time Pad,缩写为OTP)是古典密码学中的一种加密算法。以随机的密钥组成明文,且只使用一次。
理论上,此种密码具有完善保密性,是牢不可破的。
>
古典密码学的特点是手工加密和解密。
密码学(Cryptography),是一门将信息进行加密处理与传递,以及分析加密信息的学科。根据以 RSA 为代表的公钥加密体系的出现,可以将密码学的发展过程分为古典密码学与现代密码学两部分。
古典密码学以「置换法」与「替换法」为基础,多应用于军事与情报领域;现代密码学则建立在数学、计算机与通信科学的基础上,除了加密信息之外,数字签名、数据完整性、身份认证等也是现代密码学的研究课题。
古典密码学(Classic cryptography)和现代密码学(Modern cryptography)的主要差别在于计算机的使用,一般来说,古典密码学是基于字符的,而现代密码学是基于二进制位的。
密码学是研究编制密码和破译密码的技术科学。研究密码变化的客观规律,应用于编制密码以保守通信秘密的,称为编码学;应用于破译密码以获取通信情报的,称为破译学,总称密码学。
密码是通信双方按约定的法则进行信息特殊变换的一种重要保密手段。依照这些法则,变明文为密文,称为加密变换;变密文为明文,称为脱密变换。密码在早期仅对文字或数码进行加、脱密变换,随着通信技术的发展,对语音、图像、数据等都可实施加、脱密变换。
以上就是关于c#古典密码算法中的简单代替密码算法全部的内容,包括:c#古典密码算法中的简单代替密码算法、网络信息安全古典加密算法都有哪些、密码学和密码(古典密码) Cryptography and Classical Cipher等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)