java安全架构____java 秘钥对原理
来源:互联网 发布:不出门便知天下事言语 编辑:程序博客网 时间:2024/05/29 11:16
转自:http://baike.baidu.com/link?url=kT8XO4k45HDC2JInSANaJ4tsjYhIbtzb_bsoB4zTJwLl4BD629F3fJyDwT4JKeiS9DUiHQuoiEIvWs94lYN_6UqtSfyftBVsNmxZxhFOinm中国通信学会,非科学
收藏
1485有用+1已投票查看我的收藏
密钥
编辑锁定
密钥是一种参数,它是在明文转换为密文或将密文转换为明文的算法中输入的参数。密钥分为对称密钥与非对称密钥。
- 中文名
- 密钥
- 外文名
- secret key
- 读 作
- mì yào
- 性 质
- 密码学常用术语
- 用 法
- 名词,少量情况用作动词
- 相 关
- 密码学,公钥,私钥
- 密码学中解释
- 秘密的钥匙,秘密的代码
- 古语解释
- 紧密的锁闭
目录
- 1读法函义
- 2密钥分类
密钥读法函义
非对称密钥
密码学中:密钥(secret key)——秘密的钥匙;私钥(private key)——私有的钥匙;公钥(public key)——公开的钥匙。密钥就是秘密钥匙的简称,故读作【 mì yào】无误。密钥密钥分类
密钥分为两种:对称密钥与非对称密钥
两种密钥
根据密码算法所使用的加密密钥和解密密钥是否相同、能否由加密过程推导出解密过程(或者由解密过程推导出加密过程),可将密码体制分为对称密码体制(也叫作单钥密码体制、秘密密钥密码体制、对称密钥密码体制)和非对称密码体制(也叫作双钥密码体制、公开密钥密码体制、非对称密钥密码体制)。[1]
对称密钥加密,又称私钥加密或会话密钥加密算法,即信息的发送方和接收方使用同一个密钥去加密和解密数据。它的最大优势是加/解密速度快,适合于对大数据量进行加密,但密钥管理困难。
非对称密钥加密系统,又称公钥密钥加密。它需要使用不同的密钥来分别完成加密和解密操作,一个公开发布,即公开密钥,另一个由用户自己秘密保存,即私用密钥。信息发送者用公开密钥去加密,而信息接收者则用私用密钥去解密。公钥机制灵活,但加密和解密速度却比对称密钥加密慢得多。
所以在实际的应用中,人们通常将两者结合在一起使用,例如,对称密钥加密系统用于存储大量数据信息,而公开密钥加密系统则用于加密密钥。
对于普通的对称密码学,加密运算与解密运算使用同样的密钥。通常,使用的对称加密算法比较简便高效,密钥简短,破译极其困难,由于系统的保密性主要取决于密钥的安全性,所以,在公开的计算机网络上安全地传送和保管密钥是一个严峻的问题。正是由于对称密码学中双方都使用相同的密钥,因此无法实现数据签名和不可否认性等功能。
20世纪70年代以来,一些学者提出了公开密钥体制,即运用单向函数的数学原理,以实现加、解密密钥的分离。加密密钥是公开的,解密密钥是保密的。这种新的密码体制,引起了密码学界的广泛注意和探讨。
不像普通的对称密码学中采用相同的密钥加密、解密数据,非对称密钥加密技术采用一对匹配的密钥进行加密、解密,具有两个密钥,一个是公钥一个是私钥,它们具有这种性质:每把密钥执行一种对数据的单向处理,每把的功能恰恰与另一把相反,一把用于加密时,则另一把就用于解密。用公钥加密的文件只能用私钥解密,而私钥加密的文件只能用公钥解密。 公共密钥是由其主人加以公开的,而私人密钥必须保密存放。为发送一份保密报文,发送者必须使用接收者的公共密钥对数据进行加密,一旦加密,只有接收方用其私人密钥才能加以解密。 相反地,用户也能用自己私人密钥对数据加以处理。换句话说,密钥对的工作是可以任选方向的。这提供了"数字签名"的基础,如果要一个用户用自己的私人密钥对数据进行了处理,别人可以用他提供的公共密钥对数据加以处理。由于仅仅拥有者本人知道私人密钥,这种被处理过的报文就形成了一种电子签名----一种别人无法产生的文件。数字证书中包含了公共密钥信息,从而确认了拥有密钥对的用户的身份。
简单的公共密钥例子可以用素数表示,将素数相乘的算法作为公钥,将所得的乘积分解成原来的素数的算法就是私钥,加密就是将想要传递的信息在编码时加入素数,编码之后传送给收信人,任何人收到此信息后,若没有此收信人所拥有的私钥,则解密的过程中(实为寻找素数的过程),将会因为找素数的过程(分解质因数)过久而无法解读信息。
- 参考资料
- 1. 对称密码体制和非对称密码体制 .上海市密码管理局.2008年12月23日[引用日期2014-09-25]
词条标签:
0 0
- java安全架构____java 秘钥对原理
- java安全架构____java 秘钥对生成
- java安全架构____java SHA加密原理
- java安全架构____java HMAC原理
- java安全架构____java Base64原理分析
- java安全架构____java DSA数字签名原理
- java安全架构____java DSA签名原理
- java安全架构____java MD5加密
- java安全架构____java SHA加密
- java安全架构____java HMAC加密
- java安全架构____java Base64加密
- java安全架构____java DSA加密解密
- Java安全架构____java的Keytool工具Oracle官方说明文档
- java安全架构____DH秘钥一致性原理(1)
- java安全架构____DH秘钥一致性原理(2)
- Java安全框架____Java读取.pfx证书(pkcs12)信息
- Java安全架构____LinuxSSH公钥登录原理
- java安全架构____X.509原理
- 关于C++合成的默认构造函数
- ReactNative嵌入到安卓原生中遇到的坑
- 安卓开发学习心得-------关于软键盘的那些知识与技巧
- 在RHEL7的vnc中调出Oracle的OUI
- BZOJ 4028: [HEOI2015]公约数数列 分块
- java安全架构____java 秘钥对原理
- 浅谈Activiti Modeler 的扩展
- Sorting It All Out POJ-1094
- 蓝桥杯-矩阵乘法
- SSL 证书购买以及Nginx配置相关问题
- 最大公约数算法GCD
- 对于linux中管道的认识
- EOF
- 层次聚类算法(三)