首页 > 编程语言 >非对称加密算法

非对称加密算法

时间:2023-01-15 20:24:21浏览次数:38  
标签:公钥 加密 Alice --- 密钥 key 非对称 加密算法

非对称加密

密钥是成对出现的

  • 公钥:public key,公开给所有人,主要给别人加密使用
  • 私钥:secret key,private key自己留存,必须保证其私密性

特点:用公钥加密数据,只能使用与之配对的私钥解密;反之亦然

缺点:

  • 密钥长,算法复杂
  • 加密解密效率低

功能:

  • 数据加密:适合加密较小数据,比如:加密对称密钥
  • 数字签名:主要在于让接收方确认发送方身份

常见算法:

  • RSA:是一个支持变长密钥的公共密钥算法,需要加密的文件块的长度也是可变的,可实现加密和数字签名。
  • DSA(Digita Signature Algorithm):数据来源确认,即数字签名算法,是一种标准的DSS
  • ECC

实现数据加密

Alice:

public key (公开)                               Pa

secret key | private key (不公开)       Sa

 

Bob:

public key (公开)                               Pb

secret key | private key (不公开)       Sb

 

非对称密钥:key1<>key2

用任何一把密钥加密,只能用对应另一把密钥解密

 

Alice--->Bob  独发

Data--->加密(key1=Pb)--->data--->解密( key2=Sb)--->data

Bob想要收到Alice的数据文件,必须将Bob的公钥发送给Alice,之后再用自己的私钥解密

 

接收者:生成公钥/密钥:P和S

                 生成公钥P,保密密钥S

发送者:使用接收者的公钥来加密信息M

                 将P(M)发送给接收者

接收者:使用密钥S来解密:M=S(P(M))

数据来源确认(数字签名)

Alice--->Bob   群发

        --->Jack

data--->加密(key1=Sa)--->data--->解密(key2=Pa)--->data

只有Alice有私钥,Alice的公钥是公开的,任何人收到Alice数据文件都使用Alice的公钥解密,实现了数据来源只能是Alice的

 

发送者:生成公钥/密钥对:P和S

公开公钥P,保密密钥S

                 使用密钥S来加密信息M

                 发送给接收者S(M)

接收者:使用发送者的公钥来解密M=P(S(M))

标签:公钥,加密,Alice,---,密钥,key,非对称,加密算法
From: https://www.cnblogs.com/Lx-learner/p/17054051.html

相关文章

  • 对称加密算法
    Alice-->Bob对称算法:key1=key2data--->加密(key1)--->data’--->解密(key2)--->data特性:(1) 加密key1、解密key2相同,即使用同一个密钥,效率高,易实现,适合加密大量数据,如加......
  • AEAD加密算法简介
    copyfrom:https://ez.analog.com/ez-blogs/b/engineerzone-spotlight/posts/authenticated-encryption如果仅仅加密,显然只能保证confidentiality,不能证明message是否被......
  • RSA非对称加密和MD5不可逆加密代码示例
    加密算法可以分为三大类:对称加密算法:DES 非对称加密算法: RSAHash算法: MD5登陆密码加密流程:web端用公钥加密密码,server端用私钥解码,将解出的明文用MD5加密......
  • 电子设计教程43:流水灯电路-非对称式多谐振荡器
      接下来几篇将做一个流水灯电路,本文是流水灯电路的第一节,介绍用反相器产生非对称式多谐振荡器。  流水灯电路将以一定的速度来“流水”,必然需要周期变化的脉冲信号作为......
  • TEE非对称加解密算法RSA加密和解密开发实例
    /***自动分配存放秘钥对象**/TEE_Resultlge_utils_generate_keypair(TEE_ObjectHandle*rsa_key_obj){TEE_Resultret;ret=TEE_AllocateTransient......
  • TEE 非对称加密 RSA 签名验签实例
    /***自动分配存放秘钥对象**/TEE_Resultlge_utils_generate_keypair(TEE_ObjectHandle*rsa_key_obj){TEE_Resultret;ret=TEE_AllocateTransient......
  • 小程序 SHA1加密算法使用
    创建一个js文件,或写入util.js中//SHA1加密functionencodeUTF8(s){vari,r=[],c,x;for(i=0;i<s.length;i++)if((c=s.charCodeAt(i))<0x80)r.pu......
  • NIST宣布推出前4种抗量子加密算法
    近日,美商务部技术研究院(NIST)选择了第一套抗量子加密算法,旨在“抵御未来量子计算机的攻击”。后量子密码学(PQC)技术包括用于通用加密的CRYSTALS-Kyber算法,以及用于数字签名......
  • RSA非对称加解密算法填充方式(Padding)
    1.padding模式1.1三类常见填充方式RSA加密常用的填充模式有三种:​​RSA_PKCS1_PADDING,RSA_PKCS1_OAEP_PADDING,RSA_NO_PADDING。​​与对称加密算法DES,AES一样,RSA算法也......
  • openssl实现非对称加解密
    使用openssl实现非对称加、解密:一、生成密钥,该密钥使用des3加密opensslgenrsa-outprivate.key-des32048二、生成对应公钥opensslrsa-inprivate.key-pubout-......