APP开发实战42-非对称加密介绍

转载 2016年05月30日 21:55:57

12.3非对称加密

非对称加密需要两个密钥公开密钥(publickey)和私有密钥(privatekey)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。因为加密和解密使用的是两个不同的密钥,所以叫非对称加密。

在非对称加密中使用的主要算法有:RSAElgamal、背包算法、Rabin、D-H、ECC(椭圆曲线加密算法)等。

非对称加密工作过程示意图:

(1)乙方生成一对密钥(公钥和私钥)并将公钥向其它方公开。

(2)得到该公钥的甲方使用该密钥对机密信息进行加密后再发送给乙方。

(3)乙方再用自己保存的另一把专用密钥(私钥)对加密后的信息进行解密。乙方只能用其专用密钥(私钥)解密由对应的公钥加密后的信息。

    在传输过程中,即使攻击者截获了传输的密文,并得到了乙的公钥,也无法破解密文,因为只有乙的私钥才能解密密文。

    同样,如果乙要回复加密信息给甲,那么需要甲先公布甲的公钥给乙用于加密,甲自己保存甲的私钥用于解密。

    非对称加密与对称加密相比,其安全性更好:对称加密的通信双方使用相同的秘钥,如果一方的秘钥遭泄露,那么整个通信就会被破解。而非对称加密使用一对秘钥,一个用来加密,一个用来解密,而且公钥是公开的,秘钥是自己保存的,不需要像对称加密那样在通信之前要先同步秘钥。

    非对称加密的缺点是加密和解密花费时间长、速度慢,只适合对少量数据进行加密。

    APP和服务器间传输数据的加密,适合用非对称加密。

非对称加密 RSA加密算法原理简述

估计密码学一段时间内多不会有什么更新了。 非对称加密: 非对称加密是与对称加密完全相反的概念,对称加密指的是加密解密使用的是同样的密钥Key,如流加密,块加密,一次性密码本之类的。而非对称...
  • jerry81333
  • jerry81333
  • 2016年10月24日 08:54
  • 2110

Java实现对称式和非对称式加密

1.       什么是对称式加密和非对称式加密 对称式加密:解密方式是加密方式的逆运算,即加密和解密使用的是同一个密钥(初等加密算法)。 非对称式加密:加密和解密需要两个密钥进行,这两个密钥是公钥和...
  • ziqi_han
  • ziqi_han
  • 2015年06月13日 14:18
  • 2951

对称加密和非对称加密介绍和区别

转自:http://blog.sina.com.cn/s/blog_56d8ea900100bzpr.html 什么是对称加密技术?   对称加密采用了对称密码编码技术,它的特...
  • csCrazybing
  • csCrazybing
  • 2015年07月28日 20:48
  • 6348

openssl 非对称加密DSA,RSA区别与使用介绍(转)

在日常系统管理工作中,需要作一些加解密的工作,通过openssl工具包就能完成我们很多需求! 1. openssl RSA 加解密 RSA是基于数论中大素数的乘积难分解理论上的非对称加密法,使...
  • down177
  • down177
  • 2015年01月21日 20:54
  • 213

openssl 非对称加密DSA,RSA区别与使用介绍

在日常系统管理工作中,需要作一些加解密的工作,通过openssl工具包就能完成我们很多需求! 1. openssl RSA 加解密 RSA是基于数论中大素数的乘积难分解理论上的非对称加...
  • Buaaroid
  • Buaaroid
  • 2015年10月26日 19:34
  • 756

RSA非对称加密工具类-java

  • 2017年03月09日 09:17
  • 9KB
  • 下载

C#和Java关于RSA非对称加密互通类

  • 2015年07月25日 09:39
  • 1KB
  • 下载

c# 非对称加密解密

  • 2011年06月28日 11:34
  • 48KB
  • 下载

RSA非对称加密帮助类

  • 2016年12月22日 16:17
  • 89KB
  • 下载

Java源码非对称加密.rar

  • 2013年11月01日 16:28
  • 9KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:APP开发实战42-非对称加密介绍
举报原因:
原因补充:

(最多只允许输入30个字)