网站关键词优化推荐贵阳方舟网络6网站开发视频是存储的

张小明 2026/1/10 8:42:56
网站关键词优化推荐贵阳方舟网络6,网站开发视频是存储的,php外贸网站,免费软件库下载对称加密 和 非对称加密 对称加密 原理#xff1a;对称加密是一种加密方法#xff0c;使用相同的密钥进行加密和解密数据。加密过程是通过特定的加密算法#xff0c;将明文数据按照密钥规则转换为密文#xff1b;解密过程则是使用相同的密钥将密文还原为明文。这种加密方法…对称加密 和 非对称加密对称加密原理对称加密是一种加密方法使用相同的密钥进行加密和解密数据。加密过程是通过特定的加密算法将明文数据按照密钥规则转换为密文解密过程则是使用相同的密钥将密文还原为明文。这种加密方法快速高效适用于加密大量数据但密钥的安全分发和存储至关重要因为一旦密钥泄露加密的数据就可能被轻易解密。应用常用于对大量数据的加密如文件加密、数据库加密等。例如在需要对数据库中的敏感信息进行加密存储时可使用对称加密算法对数据进行加密提高数据的安全性。Java 加密项目中的使用在 Java 中常见的对称加密算法有 AES、DES 等。以下是一个 Java 实现 AES 对称加密的示例代码importjavax.crypto.Cipher;importjavax.crypto.KeyGenerator;importjavax.crypto.SecretKey;importjava.nio.charset.StandardCharsets;importjava.util.Base64;publicclassAESEncryptionExample{publicstaticStringencrypt(StringplainText,SecretKeysecretKey)throwsException{CiphercipherCipher.getInstance(AES);cipher.init(Cipher.ENCRYPT_MODE,secretKey);byte[]encryptedBytescipher.doFinal(plainText.getBytes(StandardCharsets.UTF_8));returnBase64.getEncoder().encodeToString(encryptedBytes);}publicstaticStringdecrypt(StringencryptedText,SecretKeysecretKey)throwsException{CiphercipherCipher.getInstance(AES);cipher.init(Cipher.DECRYPT_MODE,secretKey);byte[]decodedBytesBase64.getDecoder().decode(encryptedText);byte[]decryptedBytescipher.doFinal(decodedBytes);returnnewString(decryptedBytes,StandardCharsets.UTF_8);}publicstaticvoidmain(String[]args)throwsException{KeyGeneratorkeyGeneratorKeyGenerator.getInstance(AES);keyGenerator.init(128);SecretKeysecretKeykeyGenerator.generateKey();StringplainTextHello, Java Encryption!;StringencryptedTextencrypt(plainText,secretKey);StringdecryptedTextdecrypt(encryptedText,secretKey);System.out.println(Plain Text: plainText);System.out.println(Encrypted Text: encryptedText);System.out.println(Decrypted Text: decryptedText);}}非对称加密原理非对称加密算法需要一对密钥即一把私钥和一把公钥。公钥用于加密数据私钥用于解密数据或进行数字签名。数据使用公钥加密后只有对应的私钥才能解密私钥进行签名后公钥可以验证签名的真实性。非对称加密可以避免对称加密算法中密钥传输安全性的问题但加解密速度较慢。应用常用于数字签名、密钥协商、身份验证等方面。例如在数字证书中使用非对称加密算法进行签名确保证书的真实性和完整性在 SSL/TLS 协议中使用非对称加密算法进行密钥协商生成对称加密的密钥。Java 加密项目中的使用在 Java 中常见的非对称加密算法有 RSA、ECC 等。以下是一个 Java 实现 RSA 非对称加密的示例代码importjavax.crypto.Cipher;importjava.nio.charset.StandardCharsets;importjava.security.*;importjava.util.Base64;publicclassRSAEncryptionExample{publicstaticKeyPairgenerateKeyPair()throwsNoSuchAlgorithmException{KeyPairGeneratorkeyPairGeneratorKeyPairGenerator.getInstance(RSA);keyPairGenerator.initialize(2048);returnkeyPairGenerator.generateKeyPair();}publicstaticStringencrypt(StringplainText,PublicKeypublicKey)throwsException{CiphercipherCipher.getInstance(RSA);cipher.init(Cipher.ENCRYPT_MODE,publicKey);byte[]encryptedBytescipher.doFinal(plainText.getBytes(StandardCharsets.UTF_8));returnBase64.getEncoder().encodeToString(encryptedBytes);}publicstaticStringdecrypt(StringencryptedText,PrivateKeyprivateKey)throwsException{CiphercipherCipher.getInstance(RSA);cipher.init(Cipher.DECRYPT_MODE,privateKey);byte[]decodedBytesBase64.getDecoder().decode(encryptedText);byte[]decryptedBytescipher.doFinal(decodedBytes);returnnewString(decryptedBytes,StandardCharsets.UTF_8);}publicstaticvoidmain(String[]args)throwsException{KeyPairkeyPairgenerateKeyPair();PublicKeypublicKeykeyPair.getPublic();PrivateKeyprivateKeykeyPair.getPrivate();StringplainTextHello, Java Encryption!;StringencryptedTextencrypt(plainText,publicKey);StringdecryptedTextdecrypt(encryptedText,privateKey);System.out.println(Plain Text: plainText);System.out.println(Encrypted Text: encryptedText);System.out.println(Decrypted Text: decryptedText);}}spring 拦截器使用方法在 Spring 开发中使用拦截器通常需要以下几个步骤。首先创建一个实现HandlerInterceptor接口的拦截器类该接口有三个方法preHandle在请求处理之前调用、postHandle在请求处理之后视图渲染之前调用和afterCompletion在整个请求完成之后调用。以下是一个简单的拦截器示例importorg.springframework.web.servlet.HandlerInterceptor;importjavax.servlet.http.HttpServletRequest;importjavax.servlet.http.HttpServletResponse;publicclassCustomInterceptorimplementsHandlerInterceptor{OverridepublicbooleanpreHandle(HttpServletRequestrequest,HttpServletResponseresponse,Objecthandler)throwsException{// 在请求处理之前执行的逻辑System.out.println(Pre-handle method is called);returntrue;// 返回 true 表示继续执行请求处理流程}OverridepublicvoidpostHandle(HttpServletRequestrequest,HttpServletResponseresponse,Objecthandler,org.springframework.web.servlet.ModelAndViewmodelAndView)throwsException{// 在请求处理之后视图渲染之前执行的逻辑System.out.println(Post-handle method is called);}OverridepublicvoidafterCompletion(HttpServletRequestrequest,HttpServletResponseresponse,Objecthandler,Exceptionex)throwsException{// 在整个请求完成之后执行的逻辑System.out.println(After-completion method is called);}}然后需要将这个拦截器注册到 Spring 配置中。可以通过继承WebMvcConfigurerAdapterSpring Boot 2.0 之前或实现WebMvcConfigurerSpring Boot 2.0 及之后来完成注册importorg.springframework.context.annotation.Configuration;importorg.springframework.web.servlet.config.annotation.InterceptorRegistry;importorg.springframework.web.servlet.config.annotation.WebMvcConfigurer;ConfigurationpublicclassWebConfigimplementsWebMvcConfigurer{OverridepublicvoidaddInterceptors(InterceptorRegistryregistry){registry.addInterceptor(newCustomInterceptor()).addPathPatterns(/**);// 拦截所有请求}}原理Spring 拦截器是基于 Java 的反射机制和 Spring 的 AOP面向切面编程思想实现的。在 Spring MVC 中DispatcherServlet是核心控制器它负责接收客户端请求并将请求分发给相应的处理器。当请求到达DispatcherServlet后DispatcherServlet会根据请求的 URL 找到对应的处理器映射器然后通过处理器映射器找到处理该请求的处理器通常是一个控制器方法。在执行处理器之前DispatcherServlet会调用拦截器的preHandle方法如果preHandle方法返回true则继续执行处理器如果返回false则请求处理流程终止。在处理器执行完成后DispatcherServlet会调用拦截器的postHandle方法最后在整个请求完成后调用afterCompletion方法。应用场景Spring 拦截器在企业级应用中有广泛的应用场景。例如权限校验方面在preHandle方法中可以检查用户是否具有访问某个资源的权限如果没有权限则可以直接返回错误信息阻止请求继续处理日志记录方面可以在preHandle方法中记录请求的相关信息如请求的 URL、请求参数等在afterCompletion方法中记录请求的处理结果和执行时间性能监控方面可以在preHandle方法中记录请求开始时间在afterCompletion方法中计算请求的执行时间从而监控系统的性能。spring 过滤器介绍Spring 过滤器是 Java Web 应用中的一种组件它放在 web 资源之前可以在请求抵达它所应用的 web 资源可以是一个 Servlet、一个 Jsp 页面甚至是一个 HTML 页面之前截获进入的请求并且在它返回到客户之前截获输出请求。其目的是重用代码处于客户端与被请求资源之间可对请求和响应进行预处理和后处理。使用方法以下是一个简单的 Spring 过滤器使用示例importjavax.servlet.*;importjavax.servlet.annotation.WebFilter;importjava.io.IOException;// 使用 WebFilter 注解来定义过滤器WebFilter(filterNamecustomFilter,urlPatterns/*)publicclassCustomFilterimplementsFilter{Overridepublicvoidinit(FilterConfigfilterConfig)throwsServletException{// 初始化方法在过滤器启动时调用System.out.println(CustomFilter initialized);}OverridepublicvoiddoFilter(ServletRequestrequest,ServletResponseresponse,FilterChainchain)throwsIOException,ServletException{// 在请求处理之前执行的逻辑System.out.println(Pre-processing request in CustomFilter);// 调用 FilterChain 的 doFilter 方法将请求传递给下一个过滤器或目标资源chain.doFilter(request,response);// 在请求处理之后执行的逻辑System.out.println(Post-processing request in CustomFilter);}Overridepublicvoiddestroy(){// 销毁方法在过滤器销毁时调用System.out.println(CustomFilter destroyed);}}要使这个过滤器生效还需要在 Spring Boot 主类上添加ServletComponentScan注解importorg.springframework.boot.SpringApplication;importorg.springframework.boot.autoconfigure.SpringBootApplication;importorg.springframework.boot.web.servlet.ServletComponentScan;SpringBootApplicationServletComponentScanpublicclassApplication{publicstaticvoidmain(String[]args){SpringApplication.run(Application.class,args);}}原理Spring 过滤器基于 Java 的 Servlet 规范实现。当客户端发送请求时请求首先会到达过滤器。过滤器接收到请求和响应对象后可以对它们进行预处理例如修改请求参数、设置响应头信息等。在过滤器中通过FilterChain对象的doFilter方法将请求传递给下一个过滤器或目标资源。如果还有其他过滤器则继续执行下一个过滤器的doFilter方法如果没有其他过滤器则请求会到达目标资源如 Servlet 或 JSP。目标资源处理完请求后响应会沿着过滤器链反向返回此时过滤器可以对响应进行后处理例如修改响应内容、记录日志等。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

ps做网站首页导航栏新型电子产品代理加盟

AlwaysOnTop:解锁Windows多窗口操作的全新境界 【免费下载链接】AlwaysOnTop Make a Windows application always run on top 项目地址: https://gitcode.com/gh_mirrors/al/AlwaysOnTop 还在为桌面窗口杂乱无章而头疼吗?每次需要在不同应用间频繁…

张小明 2026/1/10 6:39:53 网站建设

dede网站入侵教程如何购买网站流量

暗黑破坏神2存档修改终极指南:3分钟掌握千件装备自由定制 【免费下载链接】d2s-editor 项目地址: https://gitcode.com/gh_mirrors/d2/d2s-editor 还在为暗黑破坏神2中反复刷装备而消耗大量时间吗?d2s-editor作为一款专业的暗黑2存档修改工具&am…

张小明 2026/1/10 7:50:52 网站建设

用自己照片做衣服 杯子的是哪个网站天津网站设计方案

威武纪 高集成RFMC7000模块 SDR软件无线电 AD9371 FMC子卡和拓展卡pcie 300MHz~6GHz频段 SDR 开发评估发射接收卡 双通道收发链路 智邮开源 5G通信验证 射频板卡 OXG-SDR4100 软件无线电 SDR开发板 搭载两颗AD9371 开源5G基站OAI pcie 4路发射 4路接收 300MHz~6GHz …

张小明 2026/1/10 6:48:51 网站建设

服装网站建设项目维护与评价书wordpress 菜单的主题

Cursor VIP智能编程助手实战配置:高效开发环境搭建指南 【免费下载链接】cursor-vip cursor IDE enjoy VIP 项目地址: https://gitcode.com/gh_mirrors/cu/cursor-vip Cursor VIP作为专业的AI编程工具,通过共享账号模式为开发者提供完整的VIP功能…

张小明 2026/1/10 6:39:54 网站建设

中国风格网站模板网页美工怎么做

消费级GPU微调210亿参数GPT-20b全指南:从零部署到高效训练 你有没有试过在自己的笔记本上跑一个210亿参数的大模型?不是推理,是微调——而且用的还是RTX 3060这种“老将”级别的显卡。听起来像天方夜谭?但随着 GPT-OSS-20B 的发布…

张小明 2026/1/10 6:39:57 网站建设

一个网站需要多大的空间网站建设课设心得体会

FaceFusion开源镜像上线:实现高保真人脸交换的终极工具在数字内容创作的浪潮中,一个微妙却极具挑战的问题始终存在:如何让一张脸“自然地”出现在另一个人的身体上?不是生硬替换,也不是卡通化处理,而是连皮…

张小明 2026/1/10 7:50:40 网站建设