密码体系的初步知识
发布日期:2021-10-02 00:05:38 浏览次数:1 分类:技术文章

本文共 954 字,大约阅读时间需要 3 分钟。

     今天在查找资料的时候,发现有个帖子是将密钥体系的,挺基础易懂的。把他摘抄下来。怎么说以前也是高加密机的。忘了不少了啦啊。

先是对称和非对称加密算法的概念。

1对称加密算法

在计算机专网系统中广泛使用的对称加密算法有DES和IDEA等。最初的原理包括字母的换位、替换。

 

2不对称加密算法

不对称加密算法有RSA算法和美国国家标准局提出的DSA。

然后是公钥和私钥的密钥体系

公开密钥密码体制的基本思想:

加密和解密密钥不同。在算法公开的情况下,在计算上不可能由加密密钥求解出解密密钥,因此加密密钥可以公开,解密密钥由接收方私有保存。即使是加密的一方,也不可能解密。

 

公开密钥密码体制的简单使用流程:

A、B两人通信,A欲发消息给B,则利用B的公开密钥加密数据,B获得加密数据后用自己的私有密钥解密,反之类似。

防止否认的作法是:A、B两人通信,A欲发消息给B,则利用B的公开密钥加密数据,同时,在数据中附带信息,该信息用A自己的私有密钥加密,B获得后用A的公开密钥解密(只能用A的公开密钥才能解)出正确的附带信息,则证明消息来自A。这即“电子签名”的简单原理,当然,实际要比这复杂得多。

 

RSA的简单示例:

RSA算法的数学基础是大整数分解的困难性。用到数论中的欧拉函数和欧拉定理。

最后是密钥的过程

一、密钥生成

随机选取两个大素数(例如200为十进制数)p和q;

令n=pq,则φ(n)=(p-1)(q-1)

选择一个与φ(n)互素的数e,即gcd{φ(n),e}=1

由e求出d,满足de º 1modφ(n)

e和n作为加密密钥(公开密钥)   public key

d和n作为解密密钥(私有密钥)   private key

二、对消息M进行分组

将明文M按bit串分组,分组长度L要保证    2L<=n,即L<=log2n。若用m表示分组后的消息的十进制表示,则0≤m<n 。将明文分组为m1 m2 … mr

三、加密

执行运算ci=E(mi)=miemod n (i是下标,e是指数)    

四、解密

执行运算mi=D(ci)=cidmod n (i是下标,d是指数),合并分组

公开密钥密码体制的优点:

1、密钥分发简单。避免加密密钥的保密问题。

2、秘密保存的密钥量减少。网络中的通信方只要保存好自己的私有密钥

转载地址:https://blog.csdn.net/jacky_zh/article/details/12710351 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:c#调用c++写成的dll文件,返回char*,返回数组,用ref接收,byte[] (zz)
下一篇:WPF combox不能获取到Text属性值

发表评论

最新留言

很好
[***.229.124.182]2024年03月30日 02时19分45秒