资讯详情

JWT使用公钥解密

添加JWT工具包

<dependency> <groupId>io.jsonwebtoken</groupId>  <artifactId>jjwt-api</artifactId>  <version>0.10.5</version> </dependency> <dependency>  <groupId>io.jsonwebtoken</groupId>  <artifactId>jjwt-impl</artifactId>  <version>0.10.5</version>  <scope>runtime</scope> </dependency> <dependency>  <groupId>io.jsonwebtoken</groupId>  <artifactId>jjwt-jackson</artifactId>  <version>0.10.5</version>  <scope>runtime</scope> </dependency> 

代码


      
       public 
       class 
       JwtTest 
       { 
         
       // 公钥 
       public 
       static 
       String publicKey 
       = 
       "-----BEGIN CERTIFICATE-----\n" 
       + 
       "MIIDmzCCAoOgAwIBAgIEHnAgtDANBgkqhkiG9w0BAQsFADB+MQswCQYDVQQGEwJDQTEQMA4GA1UE\n" 
       + 
       "CBMHT250YXJpbzEUMBIGA1UEBxMLTWlzc2lzc2F1Z2ExJjAkBgNVBAoTHU5ldHdvcmsgTmV3IFRl\n" 
       + 
       "Y2hub2xvZ2llcyBJbmMuMQwwCgYDVQQLEwNERVYxETAPBgNVBAMTCFN0ZXZlIEh1MB4XDTE2MDkw\n" 
       + 
       "MTE2MTYxNVoXDTI2MDcxMTE2MTYxNVowfjELMAkGA1UEBhMCQ0ExEDAOBgNVBAgTB09udGFyaW8x\n" 
       + 
       "FDASBgNVBAcTC01pc3Npc3NhdWdhMSYwJAYDVQQKEx1OZXR3b3JrIE5ldyBUZWNobm9sb2dpZXMg\n" 
       + 
       "SW5jLjEMMAoGA1UECxMDREVWMREwDwYDVQQDEwhTdGV2ZSBIdTCCASIwDQYJKoZIhvcNAQEBBQAD\n" 
       + 
       "ggEPADCCAQoCggEBALrlxMtDb60DogElf4TBz504tRheZimAE0dJL/Yby4nacJdqvc5l4z+WWpDf\n" 
       + 
       "rI9krQ2Yi9yvhwAP+PrR6gWcIqWP4cpNE7XIAUDgr4CtyI7CptT/lpjtbkz4DGCMmaeDn0jqHqJt\n" 
       + 
       "SeSZGfwVu5zAGm8n4sHatjnnxBI/iWzkTII3V4xv0WeK37szNTEd+ly2ag7n2IV5zNnYmqZTeMQm\n" 
       + 
       "J2ENS+IwAG3ENtiVtrVTx/2bGtqutJjtdxsN58/cUG/guRyMT6OPI8Yi3ZzevdvRbxadyhEl/Kaw\n" 
       + 
       "6vJcdxmJI3tp4lx+p6sAxOWa7aapJe4JxutAQqzv0GKdVjoHKQ1wB60CAwEAAaMhMB8wHQYDVR0O\n" 
       + 
       "BBYEFIPF9SBd06RWU1eDL73CKfy01lavMA0GCSqGSIb3DQEBCwUAA4IBAQAoaKZGOak3Upz/ordF\n" 
       + 
       "slZoJuZlCu7jnKQEjYwHf3DNxcd1WmgFPtMcna6pW0VUxPIfidEA6VCMsGoK1RvshB0SjrRdCht6\n" 
       + 
       "5qPXs9kV3NW0WvMiwDSYZZ9HgaZ9efTe5E9Fzc7ltKrE43L6k8NJcaEEWEdpdjFbrAqH4I+j/Vro\n" 
       + 
       "K3OhIo062fXjas5ipL4gF+3ECImjWzirQP8UiAfM0/36x7rtAu3btH/qI9hSyx39LBPPE5AsDJZ4\n" 
       + 
       "dSMwNTW1gqmBAZIj+zQ/RD5dyWfPwON7Q+t96YbK6WBuYo0xy+I+PjcUgrWYWP3N24hlq8ZBIei+\n" 
       + 
       "BudoEVJlIlmS0aRCuP8n\n" 
       + 
       "-----END CERTIFICATE-----"
       ; 
       public 
       static 
       String jwt_token 
       = 
       "eyJraWQiOiIxMDAiLCJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJ1cm46Y29tOm5ldHdvcmtudDpvYXV0aDI6djEiLCJhdWQiOiJ1cm46Y29tLm5ldHdvcmtudCIsImV4cCI6MTU2MjU2NjYxMywianRpIjoiSzZrcDJQMnN2RDhVbVNOTmdqT3ZXdyIsImlhdCI6MTU2MjU2NjAxMywibmJmIjoxNTYyNTY1ODkzLCJ2ZXJzaW9uIjoiMS4wIiwidXNlcl9pZCI6ImNoZW5taW5nIiwidXNlcl90eXBlIjpudWxsLCJjbGllbnRfaWQiOiI3NTk5OTYyOC1mNjcxLTQ4NzQtOWEyZi0xNDliM2IxZDA2YzIiLCJzY29wZSI6WyJhY3QuciIsImFjdC53Il19.c-PFcbiFvNl02wNNOgGn9uvEAQv3_EwTPVhmNM14IcokcdufYHUUVsPrbIfU-9gd4DlTuKUEWc4ry3PEggIZBs2gVKjN4Fvbs7WdRBBRWZhNxfMiiXT9z-4OxDs5GhOA06JFi4eul1jy-JPOtN2KSKlDrp09xQyFtVNQRCbgF7Klp_XDRbw9Pmjtm0OHTvtMd4dDsgsbwhEcYG6jHgEfhPHbgWTWGndzazW_4Z2kLIi-CukwT0_UCt3MUsy_lMlKbxSs-VUyV47NGqfE7PoEalIaY_iG4dNze8OtPwtY4YAIn3P3Qv3YvZnlrCzocE-REDAG916hT-kAZWBe7wMs_w"
       ; 
       public 
       static 
       void 
       main
       (
       String
       [
       ] args
       ) 
       throws 
       Exception 
       { 
         
       PublicKey publicKey 
       = 
       CertificateFactory
       .
       getInstance
       (
       "X.509"
       ) 
       .
       generateCertificate
       (
       new 
       ByteArrayInputStream
       (
       JwtTest
       .publicKey
       .
       getBytes
       (
       )
       )
       ) 
       .
       getPublicKey
       (
       )
       ; 
       Claims claims 
       = 
       null
       ; 
       try 
       { 
         claims 
       = 
       Jwts
       .
       parser
       (
       )
       .
       setSigningKey
       (publicKey
       ) 
       .
       parseClaimsJws
       (jwt_token
       )
       .
       getBody
       (
       )
       ; 
       } 
       catch 
       (
       ExpiredJwtException e
       ) 
       { 
         
       System
       .out
       .
       println
       (e
       .
       getMessage
       (
       )
       )
       ; 
       } 
       catch 
       (
       Exception e
       ) 
       { 
         
       System
       .out
       .
       println
       (e
       .
       getMessage
       (
       )
       )
       ; 
       } 
       System
       .out
       .
       println
       (claims
       .
       get
       (
       "user_id"
       )
       )
       ; 
       } 
       } 
      

标签: 电感磁珠upz1005d121

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台