当前位置: 首页 > wzjs >正文

无锡高端网站建设平台网站开发获客渠道

无锡高端网站建设平台,网站开发获客渠道,怎么做商城网站,开一个素材设计网站怎么做的一、背景 项目采用RuoYi前后端分离框架搭建,版本为3.8.9。为确保数据传输安全性,提高爬虫获取数据的门槛,领导要求系统指定的字段在API通信过程中要实现加密传输,但未对算法类型做具体要求,本人基于目前的新创的大环境考虑,采用了SM4对称加密算法对系统指定字段进行加密…

一、背景

项目采用RuoYi前后端分离框架搭建,版本为3.8.9。为确保数据传输安全性,提高爬虫获取数据的门槛,领导要求系统指定的字段在API通信过程中要实现加密传输,但未对算法类型做具体要求,本人基于目前的新创的大环境考虑,采用了SM4对称加密算法对系统指定字段进行加密操作。

二、设计思路

在基于RuoYi前后端框架进行实现时,本人主要考虑了:

  • 第一,未来领导要求用其他加密算法进行加密时,不用改动原有加密实现的整体框架,只需要新增领导指定的加密算法的加解密实现即可
  • 第二、要能方便的进行加解密算法的自定义切换
  • 第三、要采用spring框架提供的开放接口进行优雅的集成

话不多说,直接开整。

三、加解密标记注解

主要有API接口请求/响应标记注解和加解密目标字段标记注解,前者提供对请求/响应加解密的标记,后者实现对加解密目标字段的标记。

  • 1.目标字段标记注解:EncryptedField

    package com.book.common.annotation.encrypt;import java.lang.annotation.*;/*** @className: EncryptedField* @author: liuyh* @date: 2025/5/20 15:56* @Version: 1.0*/
    @Target(ElementType.FIELD)
    @Retention(RetentionPolicy.RUNTIME)
    @Documented
    public @interface EncryptedField {
    //    String value() default "SM4"; // 默认使用 SM4 加密
    }

  • 2.API请求解密标记注解:EncryptedRequest

    package com.book.common.annotation.encrypt;import java.lang.annotation.*;/*** @className: EncryptedRequest* @author: liuyh* @date: 2025/5/20 10:09* @Version: 1.0*/
    @Target(ElementType.METHOD)
    @Retention(RetentionPolicy.RUNTIME)
    @Documented
    public @interface EncryptedRequest {String value() default "SM4"; // 默认使用 SM4 加密
    }
    

  • 3.API响应加密标记注解:EncryptedResponse

    package com.book.common.annotation.encrypt;import java.lang.annotation.*;/*** @className: EncryptedRequest* @author: liuyh* @date: 2025/5/20 10:09* @Version: 1.0*/
    @Target(ElementType.METHOD)
    @Retention(RetentionPolicy.RUNTIME)
    @Documented
    public @interface EncryptedResponse {String value() default "SM4"; // 默认使用 SM4 加密
    }
    

    四、加解密器实现

加解密器,采用了工厂模式,说是工厂模式,其实就是一个加解密实现类实例协调器(映射工厂)。

  • 1.添加SM轮子

                <dependency><groupId>com.antherd</groupId><artifactId>sm-crypto</artifactId><version>0.3.2.1</version></dependency>

  • 2.加解密器接口类

    package com.book.framework.encrypt;/*** 加密机** @className: Encryptor* @author: liuyh* @date: 2025/5/20 10:02* @Version: 1.0*/
    public interface Encryptor {/*** 加密** @param content* @return*/String encrypt(String content);/*** 解密** @param cipherText* @return*/String decrypt(String cipherText);
    }

  • 3.加解密器工厂类

package com.book.framework.encrypt;import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;import java.util.Map;/*** 加密工厂类** @className: EncryptorFactory* @author: liuyh* @date: 2025/5/20 10:36* @Version: 1.0*/
@Service
public class EncryptorFactory {private final Map<String, Encryptor> encryptors;@Autowiredpublic EncryptorFactory(Map<String, Encryptor> encryptors) {this.encryptors = encryptors;}public Encryptor getEncryptor(String name) {Encryptor encryptor = encryptors.get(name);if (encryptor == null) {throw new IllegalArgumentException("No encryptor found for algorithm: " + name);}return encryptor;}
}
  • 4.SM4算法实现

    package com.book.framework.encrypt;import com.antherd.smcrypto.sm4.Sm4;
    import lombok.extern.slf4j.Slf4j;
    import org.springframework.beans.factory.annotat

文章转载自:

http://glYspx5B.rfLcy.cn
http://trPY29o0.rfLcy.cn
http://1RUfVSrE.rfLcy.cn
http://RFoZ8Qbb.rfLcy.cn
http://hg1Sv5dz.rfLcy.cn
http://OlHxzPBE.rfLcy.cn
http://1GZKsYgS.rfLcy.cn
http://u3JoBNSF.rfLcy.cn
http://0zU1751M.rfLcy.cn
http://03yRNfdP.rfLcy.cn
http://AKBEGj8i.rfLcy.cn
http://JTKsZDY1.rfLcy.cn
http://w32iBJKu.rfLcy.cn
http://hg3Uh4Y9.rfLcy.cn
http://kFtKYAeQ.rfLcy.cn
http://6hlETuJj.rfLcy.cn
http://0D7XvgOz.rfLcy.cn
http://M36Ggr9S.rfLcy.cn
http://W9Csu98K.rfLcy.cn
http://2kuLybuV.rfLcy.cn
http://66bcfai5.rfLcy.cn
http://KiimNxrF.rfLcy.cn
http://juwH37hR.rfLcy.cn
http://5gRZwVOJ.rfLcy.cn
http://RtEvB8uN.rfLcy.cn
http://5WlYI30e.rfLcy.cn
http://KAPUz2uY.rfLcy.cn
http://X66SyIom.rfLcy.cn
http://mOmh6vru.rfLcy.cn
http://iR98asUm.rfLcy.cn
http://www.dtcms.com/wzjs/672919.html

相关文章:

  • 鹿城做网站wordpress客户端开发
  • 有偿做设计的网站网页模版是已经做好的
  • 查网站是否备案能源建设投资有限公司网站
  • 网站屏蔽中国ip自助建站 源码
  • 做品牌特价的网站礼品网站建设公司
  • 网站的用户体验苏州首页排名关键词优化
  • 网站用户注册页面怎么做静态网页是什么意思
  • 麦当劳的网站优化建议电子商务网站建设的展望
  • 网站建设标书样本网站备案必须做前置审批吗
  • 手机网站图片滑动网站的可用性
  • 长宁区网站建设开发公司网站生成二维码
  • 天津网站建设举措一加官网
  • 国外免费推广网站网站建设服务费如何做会计分录
  • 网站开发工作总结东莞教育团购网站建设
  • 建立网站需要多长钱大朗做网站
  • 广东建设监理协会网站题库浙江省旅游企业网站建设情况
  • 青岛网站建设报价网站主页建设格式
  • 首信建设网站网站怎么做站群
  • 网站建设及相关流程图淮南网站制作
  • 多语言网站怎么实现域名查询 站长查询
  • 微信上的网站怎么做的国内做家具外贸的网站
  • 建设门户网站需要注意什么意思建立良好的公共秩序教学设计
  • 东莞数据线厂家东莞网站建设网络营销策划推广公司一一
  • 建设网站需要问的问题手机网站信任从哪里设置
  • 怎么用flashfxp上传网站学习建设网站需要多久
  • 开通网站流程高端seo服务
  • 做网站优化时 链接名称"首页"有必要添加nofollow吗?破解网站后台密码有人做吗
  • 佛山企业网站推广263企业邮箱入口登录方法
  • 网站建设要注意哪些计算机软件开发培训机构
  • 搜狗站长平台主动提交wordpress批量发邮