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

平面设计素材网站有哪些怎么开一个无货源网店

平面设计素材网站有哪些,怎么开一个无货源网店,快速注销公司需3天,合肥情况通报jwt令牌JWT提供了一种非常有趣的方式来表示可以验证和信任的应用程序之间的声明。 我的目标是展示一个小的样本#xff0c;它使用出色的Nimbus JOSE JWT库来生成和验证令牌。 总览 进行介绍的最佳地点之一是这里 。 简而言之#xff0c;要从jwt.io网站的资料中借用#xf… jwt令牌 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.htmljwt令牌
http://www.zqtcl.cn/news/566470/

相关文章:

  • 厦门网站建设合同wordpress的设置网址
  • 澎湃动力网站建设公司门户类网站建设需要多少钱
  • 祭祖网站怎么做咨询类网站开发的意义
  • 简书网站开发热门电影推荐
  • 中学教材数字化学习资源的建设——教材配套网站的设计及发展趋势建网站 发信息 做推广
  • 怎么写网站建设方案书制做网站的公司
  • 服务网站 建设原则游戏服务器租用多少钱一年
  • 软件网站下载现在出入深圳最新规定
  • 长宁专业网站制作公司陕西网站建设哪家专业
  • 重庆做的好的房产网站衡水的网站建设
  • 宜春网站开发网页编辑器安卓版
  • 网站建设外包兼职建设工程合同可以分为
  • 我国网络营销现状分析重庆网站seo营销模板
  • 深圳建站公司网站免费推广预期效果
  • html5 国外网站后台网站要做权限前端还是后台做
  • 免费建自己的网站网站标题 关键词 描述之间的关系
  • 提供响应式网站建设wordpress怎么做背景图片
  • 相亲网与做网站做网站的目的与意义
  • 做网站字体大小网站建设是属于虚拟产品吗
  • 网站的内链怎么做校园网建设网站特色
  • 优化网站标题企业的网站一般做哪些维护
  • 聊天网站备案南阳定制网站制作价格低
  • 广州镭拓科技网站建设公司长春招聘
  • 视频网站app怎么做跨境贸易电子商务服务平台
  • 丽水网站seo餐饮vi设计案例
  • 娄底网站建设报价山东省住房和建设厅注册中心网站
  • 公司网站建设工作重点网站建设吉金手指专业11
  • vue做前台网站怎么做钓鱼网站吗
  • 个人建设网站如何定位烟台h5网站开发
  • 广州网站定制多少钱html5游戏开发