< dependency> < groupId> </ groupId> < artifactId> </ artifactId> < version> </ version> </ dependency> rsa : encrypt : open :  true showLog :  true publicKey :  MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAn0MVxeKJM36xHVlivHBMfr5hY+UwLGGJ6H32zV5rruX38grA46CeZWncTEKq2QYrrvsyN6FU+gQeA9vXyeXypeAe8Hmv2dfVo2o+5vLO4E13KBoqT6iADEmfPkA/fkg32r/qzxK/DzMUBkkil8cqqH5+QSsLpvTB/F4FalNoB6k7Fov83Pqlc19f6nXDfWoFr4+fAONcwnBzSMr2JhLNIZsM2WPmu3JdxaVUX9a6lpSrlsFU1uDszWmLjI8nwKdudISqqGLDyaATlm88z4xaqVPlbPNeG4Ht+TNNRHGFXfD6XlTb9O9AhQ2S6Rmc/N+lg3pT8oJ9z9KndkdkuphHfQIDAQABprivateKey :  MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCfQxXF4okzfrEdWWK8cEx+vmFj5TAsYYnoffbNXmuu5ffyCsDjoJ5ladxMQqrZBiuu+zI3oVT6BB4D29fJ5fKl4B7wea/Z19Wjaj7m8s7gTXcoGipPqIAMSZ8+QD9+SDfav+rPEr8PMxQGSSKXxyqofn5BKwum9MH8XgVqU2gHqTsWi/zc+qVzX1/qdcN9agWvj58A41zCcHNIyvYmEs0hmwzZY+a7cl3FpVRf1rqWlKuWwVTW4OzNaYuMjyfAp250hKqoYsPJoBOWbzzPjFqpU+Vs814bge35M01EcYVd8PpeVNv070CFDZLpGZz836WDelPygn3P0qd2R2S6mEd9AgMBAAECggEABtuWpmy4x7Te34qny8FyKcr82pZV2rNggthZtkIolOFmKc/4ulSCPY+vYsFEJhAz9VbvtKGHzTQ8LqJaymDSb/4UlvpGbjTzCBRdHQi7i8EKLnnh9Igm62CIMOAHW+K0NQEqlTwTag4jAJpJmQuEdLjtqtS1rbzAVaOezBNHWX0IisgKL1TP6naHn/mJPujx7zodquTy3PwrXbwv/E2gwLeTCjLBcbHBuq4Z9MQ8vA7ztMgbwILtIPcEVtNLIxUKFGXZQUgzwirTNPHJDYVcuzsi4mx10BwPy0Uyw2OdH/k6B85OQS9lps6Bv5mOng4xRBD2EODXM3QDnIE8UTtkKQKBgQDe8sYTlq/MnKc5VcQWsLSezHtmibd2CZ55Q7c6iRO+fgCYKHGmXosmik8X/mISijq65jUR6vUrGJaZ4SBLG4Vdu4hs0RwPtGyHf3OXmKecwYYiypf0xfG9DQbiKw+OuRiJXeT4InZxPDrZKH41OKHoL/eTEpeHoE9MZ90epQX6awKBgQC231IR+Ol8jkmmoDNJspCtFeARjCliGflQwLfFuprPpqhyt1Cg1/x+245sBLoCMWRNm1ZT638cnQsRzB/C2QGqQ8l44pL95Ffj7HAf7NTvM3kFcOK87Cmw5Hae73ARiIKft6cKJoGfuxxWIwGIGLb/WAakZ4viYgW1XLd9MnIPtwKBgAp8DEibi4Tp0QtnNyOCB9x37U2zKEeKyEMXpiRAkgchUdHWBRI32/9h/bo5Ik+Q5JYpgVFoZUMzktGFvskJcEoqKY5EfzdV2sy8d6knaqp6h15XfLHsJSQo2qwELmUd20OKgNwSctN8a6AOwXCrSyHqL5BhDXM5XMFRGRr508AlAoGALNrsG4JtauLPx/Ilgl8tQ3dJJaS2hdyPHbKXoQVbcbGUQccbHMi9ozQhY/do1J7e1nZSn3T1EcSncW8bH0TxNp037tHMckAvGrXk7r+9nwqGFcKRqvtWYpA3VFawq2xLdferHj9BrjdMBQjDGGnPgSRLRMotMpMOiWS7kRbtiVMCgYBmQKXaPHjkXtreFG8XJFsCTLV0aV4yTMF5mqqkxHmXm+PZq+qvJf8F0NZollj7AKOrIkTEcw6waeHwu2zD8j+xQP4AjU8SMZZfwnj9Sr5Vc6AFFZHYHr6n9VfSF+puoDcmaU6MLqcOI9qpJmHKe5F2+HhgDlVGDVH60BrjQwGUnw==package  com. qiangesoft. encryption ; import  cn. shuibo. annotation.  EnableSecurity ; 
import  org. springframework. boot.  SpringApplication ; 
import  org. springframework. boot. autoconfigure.  SpringBootApplication ; 
@EnableSecurity 
@SpringBootApplication 
public  class  EncryptionApplication  { public  static  void  main ( String [ ]  args)  { SpringApplication . run ( EncryptionApplication . class ,  args) ; } } package  com. qiangesoft. encryption. controller ; import  cn. shuibo. annotation.  Decrypt ; 
import  cn. shuibo. annotation.  Encrypt ; 
import  lombok. extern. slf4j.  Slf4j ; 
import  org. springframework. web. bind. annotation.  * ; 
@Slf4j 
@RequestMapping ( "/test" ) 
@RestController 
public  class  TestController  { @Encrypt @GetMapping ( "/encryption" ) public  UserDTO  encryption ( )  { UserDTO  userDTO =  new  UserDTO ( ) ; userDTO. setUsername ( "admin" ) ; userDTO. setPassword ( "123456" ) ; userDTO. setNickname ( "超级管理员" ) ; userDTO. setSex ( "男" ) ; userDTO. setAge ( 29 ) ; userDTO. setTelephone ( "13333333333" ) ; userDTO. setAddress ( "北京市西城区" ) ; return  userDTO; } @Decrypt @PostMapping ( "/decryption" ) public  UserDTO  decryption ( @RequestBody  UserDTO  userDTO)  { return  userDTO; } } <! DOCTYPE  html > < htmllang = " en" > < head> < metacharset = " UTF-8" > < title> </ title> </ head> < body> < buttononclick = " encryption ( ) " > </ button> < buttononclick = " decryption ( ) " > </ button> < scriptsrc = " https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.js" > </ script> < scriptsrc = " https://cdn.bootcdn.net/ajax/libs/jsencrypt/3.0.0-rc.1/jsencrypt.js" > </ script> < script> const  PUBLIC_KEY  =  'MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAn0MVxeKJM36xHVlivHBMfr5hY+UwLGGJ6H32zV5rruX38grA46CeZWncTEKq2QYrrvsyN6FU+gQeA9vXyeXypeAe8Hmv2dfVo2o+5vLO4E13KBoqT6iADEmfPkA/fkg32r/qzxK/DzMUBkkil8cqqH5+QSsLpvTB/F4FalNoB6k7Fov83Pqlc19f6nXDfWoFr4+fAONcwnBzSMr2JhLNIZsM2WPmu3JdxaVUX9a6lpSrlsFU1uDszWmLjI8nwKdudISqqGLDyaATlm88z4xaqVPlbPNeG4Ht+TNNRHGFXfD6XlTb9O9AhQ2S6Rmc/N+lg3pT8oJ9z9KndkdkuphHfQIDAQAB' ; const  PRIVATE_KEY  =  'MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCfQxXF4okzfrEdWWK8cEx+vmFj5TAsYYnoffbNXmuu5ffyCsDjoJ5ladxMQqrZBiuu+zI3oVT6BB4D29fJ5fKl4B7wea/Z19Wjaj7m8s7gTXcoGipPqIAMSZ8+QD9+SDfav+rPEr8PMxQGSSKXxyqofn5BKwum9MH8XgVqU2gHqTsWi/zc+qVzX1/qdcN9agWvj58A41zCcHNIyvYmEs0hmwzZY+a7cl3FpVRf1rqWlKuWwVTW4OzNaYuMjyfAp250hKqoYsPJoBOWbzzPjFqpU+Vs814bge35M01EcYVd8PpeVNv070CFDZLpGZz836WDelPygn3P0qd2R2S6mEd9AgMBAAECggEABtuWpmy4x7Te34qny8FyKcr82pZV2rNggthZtkIolOFmKc/4ulSCPY+vYsFEJhAz9VbvtKGHzTQ8LqJaymDSb/4UlvpGbjTzCBRdHQi7i8EKLnnh9Igm62CIMOAHW+K0NQEqlTwTag4jAJpJmQuEdLjtqtS1rbzAVaOezBNHWX0IisgKL1TP6naHn/mJPujx7zodquTy3PwrXbwv/E2gwLeTCjLBcbHBuq4Z9MQ8vA7ztMgbwILtIPcEVtNLIxUKFGXZQUgzwirTNPHJDYVcuzsi4mx10BwPy0Uyw2OdH/k6B85OQS9lps6Bv5mOng4xRBD2EODXM3QDnIE8UTtkKQKBgQDe8sYTlq/MnKc5VcQWsLSezHtmibd2CZ55Q7c6iRO+fgCYKHGmXosmik8X/mISijq65jUR6vUrGJaZ4SBLG4Vdu4hs0RwPtGyHf3OXmKecwYYiypf0xfG9DQbiKw+OuRiJXeT4InZxPDrZKH41OKHoL/eTEpeHoE9MZ90epQX6awKBgQC231IR+Ol8jkmmoDNJspCtFeARjCliGflQwLfFuprPpqhyt1Cg1/x+245sBLoCMWRNm1ZT638cnQsRzB/C2QGqQ8l44pL95Ffj7HAf7NTvM3kFcOK87Cmw5Hae73ARiIKft6cKJoGfuxxWIwGIGLb/WAakZ4viYgW1XLd9MnIPtwKBgAp8DEibi4Tp0QtnNyOCB9x37U2zKEeKyEMXpiRAkgchUdHWBRI32/9h/bo5Ik+Q5JYpgVFoZUMzktGFvskJcEoqKY5EfzdV2sy8d6knaqp6h15XfLHsJSQo2qwELmUd20OKgNwSctN8a6AOwXCrSyHqL5BhDXM5XMFRGRr508AlAoGALNrsG4JtauLPx/Ilgl8tQ3dJJaS2hdyPHbKXoQVbcbGUQccbHMi9ozQhY/do1J7e1nZSn3T1EcSncW8bH0TxNp037tHMckAvGrXk7r+9nwqGFcKRqvtWYpA3VFawq2xLdferHj9BrjdMBQjDGGnPgSRLRMotMpMOiWS7kRbtiVMCgYBmQKXaPHjkXtreFG8XJFsCTLV0aV4yTMF5mqqkxHmXm+PZq+qvJf8F0NZollj7AKOrIkTEcw6waeHwu2zD8j+xQP4AjU8SMZZfwnj9Sr5Vc6AFFZHYHr6n9VfSF+puoDcmaU6MLqcOI9qpJmHKe5F2+HhgDlVGDVH60BrjQwGUnw==' ; function  encryption ( )  { var  data =  { username :  "admin" , password :  "123456" , nickname :  "超级管理员" , sex :  "男" , age :  "29" , telephone :  "13111111111" , address :  "北京市西城区" } ; var  encrypt =  new  JSEncrypt ( ) ; encrypt. setPublicKey ( PUBLIC_KEY ) ; var  encrypted =  encrypt. encrypt ( JSON . stringify ( data) ) ; console. log ( '加密前数据:%o' ,  data) ; console. log ( '加密后数据:%o' ,  encrypted) ; $. ajax ( { url :  "/test/decryption" , type :  "POST" , contentType :  "application/json;charset=utf-8" , data :  encrypted, success :  function  ( data )  { console. log ( JSON . stringify ( data) ) } } ) } function  decryption ( )  { $. ajax ( { url :  "/test/encryption" , type :  "GET" , contentType :  "application/json;charset=utf-8" , success :  function  ( data )  { var  decrypt =  new  JSEncrypt ( ) ; decrypt. setPrivateKey ( PRIVATE_KEY ) ; var  relData =  decrypt. decrypt ( data) ; console. log ( '加密前数据:%o' ,  data) ; console. log ( '加密后数据:%o' ,  relData) ; } } ) } 
</ script> </ body> </ html> 
 
2024 - 05 - 22  15 : 40 : 50.778   INFO  5500  -- -  [ nio- 8033 - exec- 3 ]  c. shuibo. advice.  DecryptHttpInputMessage:  Encrypted  data received:il2zExRKOcC4XMT2TQwSdnejCkPtxOx1K+ T5hrsmFmIohxbS8xwXl3O4ypHwSsgKUnAPPAUJV0OnSaNBuoi / KcoeHAjhJb6GugWm / VJCejw0mC0tg3onoPVUOUjRm + lHlymzSXiculpvz8qee+ WaKjRRRW 
 
2024 - 05 - 22  15 : 43 : 17.334   INFO  5500  -- -  [ nio- 8033 - exec- 5 ]  c. s. advice.  EncryptResponseBodyAdvice:  Pre - encrypted data:{ "address" : "北京市西城区" , "age" : 29 , "nickname" : "超级管理员" , "password" : "123456" , "sex" : "男" , "telephone" : "13333333333" , "username" : "admin" } ,After  encryption:HhZx25AZgh + d7MIu0rh07zZam2boxDFNNMO/ hWssCsYDR4Qf2+ / 6 Z5KVIQcP3Bf73uGEQD81tRznUasMvYIt1Kt8MAomOhz2GIkauJw1ZwnD03kyLVwlGrFWote3giwj8LiJ4knjlFDbHsYgHN/ 3 PWpCbWIm0IjWgv0T98MZFWSyGOaR+ ZBr8ckdQrCAN3XMd3zwICxitQ4aYc0asElTwMybj + 8 u5p4Jla1WwpJ+ VeB7UYXhvNWM06mQK / JwXGrZ / YN3thDUGu1GAxCMtnkIGFk5jNCFzaC8pvAavW4H1WIppO0JFzbrQWcVU2dtr61VKwsn / V3FVGFbG7HmrhZ8yJgGXtzE8eDTBliN / CpOF975BQjQT49i89DYozr76kdDgjIYdLna / 9 P6ESC9fR2hYqaYKs1kOmiWS+ OLwr97Nz + 3 EViYOCgfdYO/ Il6lXMeuGksddBls9m0RWXgKAkxLq6P / UyLM6I3PZk + lkc5YrPg7swaRE3yySRBIzIq1NalELXZ+ 3 yfywbfKhDYrR8dAW7sFbwDkHu3LjqQ7u3cKfYTvxLUK20XgQCr2APWlNnbASkn6/ 3 GXwt3ZeDp9lCl/ bXXsX8GiArcRPiV5/ Qb8CZJUE2 / YpU1haq / J9rPwa8L5y / 1 O3yLyt/ aWQi1r+ G / eQbXJzYACqp954My8bNwDVhg=