zoukankan      html  css  js  c++  java
  • RSA

    RSA 简介

    RSA加密是一种非对称加密。可以在不直接传递密钥的情况下,完成解密。

    这能够确保信息的安全性,避免了直接传递密钥所造成的被破解的风险。

    是由一对密钥来进行加解密的过程,分别称为公钥和私钥。

    公钥加密,私钥解密

    两者之间有数学相关,该加密算法的原理就是对一极大整数做因数分解的困难性来保证安全性。

    通常个人保存私钥,公钥是公开的(可能同时多人持有)


    RSA加密、签名区别

      加密和签名都是为了安全性考虑,但略有不同。常有人问加密和签名是用私钥还是公钥?其实都是对加密和签名的作用有所混淆。简单的说,加密是为了防止信息被泄露,而签名是为了防止信息被篡改


    加解密

    import rsa
    import base64
    
    rsa_pubkey, rsa_privkey = rsa.newkeys(2048)  # 生成密钥对,返回(PublicKey(n,e), PrivateKey(n,e,d,p,q)),即(公钥对象,私钥对象)
    
    # 加密
    text = 'hello world'
    crypto_text_e = base64.b64encode(rsa.encrypt(text.encode('utf-8'), rsa_pubkey))
    print(crypto_text_e.decode('utf-8'))
    
    # 解密
    crypto_text_d = rsa.decrypt(base64.b64decode(crypto_text_e), rsa_privkey)
    print(crypto_text_d.decode('utf-8'))
    
    #  base64.b64encode(),base64.b64decode() 返回类型都是bytes,打印时添加.decode()将bytes转为str.
    
  • 相关阅读:
    杀毒软件工作原理
    IP地址
    网络操作系统功能和基本任务
    计算机网络技术知识点总结
    对称密钥密码体制的主要特点
    无线局域网(WLAN)
    文件传输协议(FTP)
    万维网(WWW)
    简单网络管理协议(SNMP)
    防火墙技术
  • 原文地址:https://www.cnblogs.com/kai-/p/14659517.html
Copyright © 2011-2022 走看看