Spring Boot + Vue3 RSA 加密解密示例代码 - 前后端完整实现
以下是一个使用 Spring Boot 和 Vue3 进行 RSA 加解密的示例代码:\n\n后端代码(Spring Boot):\njava\nimport org.springframework.security.crypto.encrypt.RsaEncryptor;\nimport org.springframework.security.crypto.encrypt.RsaSecretEncryptor;\nimport org.springframework.util.Base64Utils;\nimport org.springframework.web.bind.annotation.PostMapping;\nimport org.springframework.web.bind.annotation.RequestBody;\nimport org.springframework.web.bind.annotation.RestController;\n\n@RestController\npublic class RsaController {\n\n private final RsaEncryptor rsaEncryptor;\n\n public RsaController(RsaEncryptor rsaEncryptor) {\n this.rsaEncryptor = rsaEncryptor;\n }\n\n @PostMapping("/encrypt")\n public String encrypt(@RequestBody String plainText) {\n byte[] encryptedBytes = rsaEncryptor.encrypt(plainText.getBytes());\n return Base64Utils.encodeToString(encryptedBytes);\n }\n\n @PostMapping("/decrypt")\n public String decrypt(@RequestBody String encryptedText) {\n byte[] encryptedBytes = Base64Utils.decodeFromString(encryptedText);\n byte[] decryptedBytes = rsaEncryptor.decrypt(encryptedBytes);\n return new String(decryptedBytes);\n }\n}\n\n\n前端代码(Vue3):\nvue\n<template>\n <div>\n <input v-model="plainText" type="text" placeholder="Plain Text" />\n <button @click="encrypt">Encrypt</button>\n <input v-model="encryptedText" type="text" placeholder="Encrypted Text" />\n <button @click="decrypt">Decrypt</button>\n <input v-model="decryptedText" type="text" placeholder="Decrypted Text" />\n </div>\n</template>\n\n<script>\nimport axios from 'axios';\n\nexport default {\n data() {\n return {\n plainText: '',\n encryptedText: '',\n decryptedText: '',\n };\n },\n methods: {\n async encrypt() {\n try {\n const response = await axios.post('/encrypt', this.plainText);\n this.encryptedText = response.data;\n } catch (error) {\n console.error(error);\n }\n },\n async decrypt() {\n try {\n const response = await axios.post('/decrypt', this.encryptedText);\n this.decryptedText = response.data;\n } catch (error) {\n console.error(error);\n }\n },\n },\n};\n</script>\n\n\n在上述代码中,后端使用了 Spring Boot 的 RsaEncryptor 来进行 RSA 加密和解密操作。前端使用了 Vue3 框架,并使用 axios 库发送加密和解密请求。\n\n请注意,上述代码仅提供了一个基本的示例,实际应用中需要根据具体的需求进行适当的修改和调整。\n\n相关资源\n\n* Spring Boot 文档: https://docs.spring.io/spring-boot/docs/current/reference/html/ \n* Vue3 文档: https://vuejs.org/ \n* Axios 文档: https://axios-http.com/docs/api_intro\n\n更多信息\n\n您可以参考以下资源了解更多关于 RSA 加密解密的知识:\n\n* RSA 加密算法简介: https://en.wikipedia.org/wiki/RSA_(cryptosystem)\n* RSA 加密解密的应用场景: https://www.geeksforgeeks.org/rsa-algorithm-cryptography/
原文地址: http://www.cveoy.top/t/topic/pYD5 著作权归作者所有。请勿转载和采集!