首页 > 编程语言 >前端加密算法之RSA

前端加密算法之RSA

时间:2022-09-27 22:45:32浏览次数:41  
标签:公钥 file 前端 RSA ----- key public 加密算法

1、简介

  RSA为非对称加密算法,即加密解密密钥不一致,公私钥成对出现。一般而言,公钥是公开的,在前端页面我们都是可以看到的,而私钥则是不公开的,用于在后端对前端发来的密文进行解密。公钥(以“-----BEGIN PUBLIC KEY-----”开头 “-----END PUBLIC KEY-----” 结尾)

2、实现

import base64
from Crypto.PublicKey import RSA
from Crypto.Cipher import PKCS1_v1_5 as Cipher_pkcs1_v1_5

def encrypt(password, public_key):
    """
        - rsa 算法加密
    :param password:
    :param public_key:
    :return:
    """
    # 导入公钥
    public_key = (
        "-----BEGIN PUBLIC KEY-----\n" + public_key + "\n-----END PUBLIC KEY-----"
    )
    rsakey = RSA.importKey(public_key)
    # 生成新公钥
    cipher = Cipher_pkcs1_v1_5.new(rsakey)
    # 加密
    cipher_text = base64.b64encode(cipher.encrypt(password.encode()))
    return cipher_text.decode()

3、调用

  正常传入待加密字符串、公钥(项目中我是直接在被破解页面找到的,RSA其实本身也支持生成密钥对)

key = RSA.generate(2048)

# 提取私钥并存入文件
private_key = key.export_key()
file_out = open("private_key.pem", "wb")
file_out.write(private_key)

# 提取公钥存入文件
public_key = key.publickey().export_key()
file_out = open("public_key.pem", "wb")
file_out.write(public_key)

 

标签:公钥,file,前端,RSA,-----,key,public,加密算法
From: https://www.cnblogs.com/shixiaogu/p/16736265.html

相关文章

  • Vue、React、Angular之三国杀,web前端入坑第六篇(上)
      「懒癌引发血案 」目前前端技术栈发生了翻天覆地的变化,上篇刚写了只会jquery要失业,再不学新的你就要被淘汰,虽然有点危言耸听,不过现实情况确实是这样。vue、react、an......
  • 我要去 Google 前端组工作了
    都这么晚了,我才给大家发文祝贺各位节日快乐!是的,今天就算加班也要把这篇文章发出去,因为:我要去Google前端组工作了Google一直是我接触计算机开始,我最敬仰的一个公司,没有之......
  • #yyds干货盘点# 前端歌谣的刷题之路-第九十七题-symbol
    前言我是歌谣我有个兄弟巅峰的时候排名c站总榜19叫前端小歌谣曾经我花了三年的时间创作了他现在我要用五年的时间超越他今天又是接近兄弟的一天人生难免坎坷大不了从......
  • 基于Ant Design Pro开发管理系统的前端部分
    一、概述AntDesignPro是一种由阿里蚂蚁团队开发的中台前端设计解决方案,很适合作为后台管理系统的前端框架。框架提供了齐全的路由菜单、布局、UI、组件等开发管理系统前端......
  • 前端加密算法之CBC-AES
    1、简介CBC模式的AES加密相比较于ECB模式,多了一个偏移量,所以安全性要比ECB模式高2、核心加密js注:和前篇ECB模式一样这里都是直接采用调用js的方式实现了加密,当......
  • 前端面试总结08-WebApi-Bom
    知识点:(1:navigator:识别浏览器类型  (2:sreen  (3:location:拆解url各个部分  (4:history ......
  • 前端面试总结08-WebApi-Dom
    1.Dom的本质:树结构(Dom树)   2.Dom常见获取结点操作(1:document.getElementById('');(2:document.getElementsByTagName('');//集合(3:document.getElementsByClassName......
  • MD5 加密算法 All In One
    MD5加密算法AllInOneMD5算法是Hash算法的一种,叫做讯息摘要算法Message-DigestAlgorithm/消息摘要算法https://zh.wikipedia.org/wiki/MD5https://en.wikipe......
  • 好用的前端开发工具都有什么突出优势?
    好用的前端开发工具可以给企业创造更高的效益,提升工作效率的同时,也可以提高开发效率。我们都知道前端开发工具种类比较多,为了帮助粉丝朋友捋清楚前端开发工具的优势特点,小......
  • 雪花算法导致前端精度丢失的配置
    步骤一:importcom.fasterxml.jackson.databind.DeserializationFeature;importcom.fasterxml.jackson.databind.ObjectMapper;importcom.fasterxml.jackson.databind.mo......