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

网站做外链什么意思城市建设单招网站

网站做外链什么意思,城市建设单招网站,网站建设中 html,做试管网站JWT提供了一种非常有趣的方式来表示可以验证和信任的应用程序之间的声明。 我的目标是展示一个小的样本#xff0c;它使用出色的Nimbus JOSE JWT库来生成和验证令牌。 总览 进行介绍的最佳地点之一是这里 。 简而言之#xff0c;要从jwt.io网站的资料中借用#xff0c;声明… JWT提供了一种非常有趣的方式来表示可以验证和信任的应用程序之间的声明。 我的目标是展示一个小的样本它使用出色的Nimbus JOSE JWT库来生成和验证令牌。 总览 进行介绍的最佳地点之一是这里 。 简而言之要从jwt.io网站的资料中借用声明将表示为一个编码的json分为三部分并用点。分隔 header.payload.signature 标头是json其中包含用于对内容进行签名的算法类型在本例中为RSA然后对内容进行url和Base64编码 {alg: RS512 } 负载是一个包含所有声明的json有保留的声明但也允许私有声明 {sub: samplesubject,name: John Doe,iss: sampleissueer,admin: true,exp: 1451849539 } 这里的“ sub”主题“ iss”发布者和“ exp”到期是保留的权利要求而“ name”和“ admin”是私人权利要求。 然后对内容进行Base64Url编码。 最后标头和有效负载一起使用共享密钥或私钥进行签名并且签名经过Base64 url​​编码并使用。分隔符附加到令牌中。 生成密钥对 我的样本是基于RSA的样本因此第一步是生成密钥对。 JWK是一种将密钥存储为JSON表示形式的灵巧方法Nimbus库对此提供了支持 import java.security.KeyPairGenerator import java.security.interfaces.{RSAPrivateKey, RSAPublicKey}import com.google.gson.{GsonBuilder, JsonElement, JsonParser} import com.nimbusds.jose.Algorithm import com.nimbusds.jose.jwk.{JWKSet, KeyUse, RSAKey}object JWKGenerator {def make(keySize: Integer, keyUse: KeyUse, keyAlg: Algorithm, keyId: String) {val generator KeyPairGenerator.getInstance(RSA)generator.initialize(keySize)val kp generator.generateKeyPair()val publicKey kp.getPublic().asInstanceOf[RSAPublicKey]val privateKey kp.getPrivate().asInstanceOf[RSAPrivateKey]new RSAKey.Builder(publicKey).privateKey(privateKey).keyUse(keyUse).algorithm(keyAlg).keyID(keyId).build()}...} 给定这个密钥对可以使用Gson从中生成一个JWK def generateJWKKeypair(rsaKey: RSAKey): JsonElement {val jwkSet new JWKSet(rsaKey)new JsonParser().parse(jwkSet.toJSONObject(false).toJSONString)}def generateJWKJson(rsaKey: RSAKey): String {val jsonElement generateJWKKeypair(rsaKey)val gson new GsonBuilder().setPrettyPrinting().create()gson.toJson(jsonElement)} 一个基于JWK的示例密钥对如下所示 {keys: [{p: 2_Fb6K50ayAsnnQl55pPegE_JNTeAjpDo9HThZPp6daX7Cm2s2fShtWuM8JBv42qelKIrypAAVOedLCM75VoRQ,kty: RSA,q: ye5BeGtkx_9z3V4ImX2Pfljhye7QT2rMhO8chMcCGI4JGMsaDBGUmGz56MHvWIlcqBcYbPXIWORidtMPdzp1wQ,d: gSjAIty6uDAm8ZjEHUU4wsJ8VVSJInk9iR2BSKVAAxJUQUrCVN---DKLr7tCKgWH0zlV0DjGtrfy7pO-5tcurKkK59489mOD4-1kYvnqSZmHC_zF9IrCyZWpOiHnI5VnJEeNwRz7EU8y47NjpUHWIaLl_Qsu6gOiku41Vpb14QE,e: AQAB,use: sig,kid: sample,qi: 0bbcYShpGL4XNhBVrMI8fKUpUw1bWghgoyp4XeZe-EZ-wsc43REE6ZItCe1B3u14RKU2J2G57Mi9f_gGIP_FqQ,dp: O_qF5d4tQUl04YErFQ2vvsW4QoMKR_E7oOEHndXIZExxAaYefK5DayG6b8L5yxMG-nSncZ1D9ximjYvX4z4LQQ,alg: RS512,dq: jCy-eg9i-IrWLZc3NQW6dKTSqFEFffvPWYB7NZjIVa9TlUh4HmSd2Gnd2bu2oKlKDs1pgUnk-AAicgX1uHh2gQ,n: rX0zzOEJOTtv7h39VbRBoLPQ4dRutCiRn5wnd73Z1gF_QBXYkrafKIIvSUcJbMLAozRn6suVXCd8cVivYoq5hkAmcRiy0v7C4VuB1_Fou7HHoi2ISbwlv-kiZwTmXCn9YSHDBVivCwfMI87L2143ZfYUcNxNTxPt9nY6HJrtJQU}] }生成JWT 现在我们有了一个很好的示例密钥对请加载私钥和公钥 import java.time.{LocalDateTime, ZoneOffset} import java.util.Dateimport com.nimbusds.jose._ import com.nimbusds.jose.crypto._ import com.nimbusds.jose.jwk.{JWKSet, RSAKey} import com.nimbusds.jwt.JWTClaimsSet.Builder import com.nimbusds.jwt._object JwtSample {def main(args: Array[String]): Unit {val jwkSet JWKSet.load(JwtSample.getClass.getResource(/sample.json).toURI.toURL)val jwk jwkSet.getKeyByKeyId(sample).asInstanceOf[RSAKey]val publicKey jwk.toRSAPublicKeyval privateKey jwk.toRSAPrivateKey... } 构建有效负载对其进行签名并生成JWT val claimsSetBuilder new Builder().subject(samplesubject).claim(name, John Doe).claim(admin, true).issuer(sampleissueer).expirationTime(Date.from(LocalDateTime.now().plusHours(1).toInstant(ZoneOffset.UTC)))val signer new RSASSASigner(privateKey)val signedJWT: SignedJWT new SignedJWT(new JWSHeader(JWSAlgorithm.RS512),claimsSetBuilder.build())signedJWT.sign(signer)val s signedJWT.serialize() 该JWT的使用者可以读取有效负载并使用公共密钥对其进行验证 val cSignedJWT SignedJWT.parse(s)val verifier new RSASSAVerifier(publicKey)println(cSignedJWT.verify(verifier))println(signedJWT.getJWTClaimsSet().getSubject())结论 该样本完全基于Nimbus JOSE JWT网站上提供的样本如果您有兴趣进一步研究此内容则绝对应参考Nimbus网站。 我的样品在这里 翻译自: https://www.javacodegeeks.com/2016/01/jwt-generating-validating-token-samples.html
http://www.yutouwan.com/news/310613/

相关文章:

  • 怎样做交互式网站深圳网站制作公司排名
  • 官网网站备案网络游戏排行榜2021前十名手游
  • 广州建网站技术2345浏览器手机版
  • 个人网站 flash鲜花类网站建设策划书范文
  • 用宝塔做网站步骤点点 网站建设
  • 网站建设推广市场wordpress 七牛不更新
  • 网页设计与网站建设电话python做网站优势
  • 做智能网站平台已购买域名 如何做网站
  • 最专业微网站首选公司免费html网站开发教程
  • 网站由哪些部分组成部分组成部分组成线下推广平台有哪些
  • 四川建设主管部门网站做网站贵么
  • 在线建站平台营销型网站制作哪个好薇
  • 建个公司网站要多少钱京东网页设计教程
  • 以前做视频的网站吗互联网门户网站是什么意思
  • 企业宣传网站设计论文绵阳市网站建立
  • 有服务器自己怎么做网站响应式表白网站源码
  • 成都网络优化网站建设电子商务网站的建设视频
  • 课程网站开发流程图及原型图做微信的网站有哪些
  • 中小学 网站建设 通知可以做网站的路由器
  • 郑州网站个人开发商业空间设计有限公司
  • 湘潭哪里做网站现在网站建站的主流语言是什么
  • 新农村建设在哪个网站申请微信公众号运营策划书范文
  • 长沙做互联网平台长沙百度网站排名优化
  • 网站建设预算策划个性化网站成功的案例
  • 中国精品课程网站网络设计工资高吗
  • 湖北商城网站建设做网站的论文摘要
  • php网站模板开源今天的新闻内容
  • 重庆的网站设计公司价格知乎 做网站的公司 中企动力
  • 除了Joomla用什么做网站好网站pv uv有什么作用
  • 怎么做网站发货福州关键词搜索排名