菜鸟教程小白 发表于 2022-12-13 16:37:25

ios - 在 iOS 编程中使用 JWT 使用 Javascript 对象签名和加密 (JOSE) 进行加密?


                                            <p><p>我正在尝试集成 <a href="http://jose.readthedocs.io/en/latest/index.html#id8" rel="noreferrer noopener nofollow">Javascript Object Signing and Encryption (JOSE) jose</a>使用我的 iOS 应用程序。</p>

<p>引用 <a href="https://github.com/hongkongkiwi/ObjectiveC-JOSE" rel="noreferrer noopener nofollow">This Sample code : hongkongkiwi/ObjectiveC-JOSE</a> ..使用这个试图将我的输入参数作为加密格式发送到服务器。 </p>

<p>如果有人集成了 JOSE,请提供流程。</p>

<p>目前我已经实现了:</p>

<pre><code>   NSURLSessionDataTask *dataTask =[ dataTaskWithRequest:request completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {

    if (error) {
      completionHandler(nil,error);
      return ;
    }

    id responseObject = ;

    NSLog(@&#34;response object :%@&#34;,responseObject);
}
</code></pre>

<p>其实我找到了一个使用 JOSE 进行解码的片段:</p>

<p> <a href="http://popdevelop.com/2013/12/decode-json-web-token-jwt-in-ios-objective-c/" rel="noreferrer noopener nofollow">http://popdevelop.com/2013/12/decode-json-web-token-jwt-in-ios-objective-c/</a>
但没有找到任何用于编码的库。所以我怀疑是否可以在 iOS 上使用 JOSE 进行编码?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>使用 <strong>JSON WEB TOKEN</strong> <strong>cocoa pods</strong> 示例解决了问题。</p>

<p>安装 cocoapod :</p>

<blockquote>
<p><strong>pod &#34;JWT&#34;</strong></p>
</blockquote>

<p>要对 JWT 进行编码和解码,请在 JWTBuilder 界面中使用流畅的样式</p>

<ul>
<li>(JWTBuilder *)encodePayload:(NSDictionary *)payload;</li>
<li>(JWTBuilder *)encodeClaimsSet:(JWTClaimsSet *)claimsSet;</li>
<li>(JWTBuilder *)decodeMessage:(NSString *)message;</li>
</ul>

<p><strong>您可以像这样对任意负载进行编码:</strong></p>

<pre><code> NSDictionary *payload = @{@&#34;foo&#34; : @&#34;bar&#34;};
NSString *secret = @&#34;your secret key&#34;;
id&lt;JWTAlgorithm&gt; algorithm = ;

.secret(@&#34;secret&#34;).algorithm(algorithm).encode;
</code></pre>

<p>JWTtoken 将是这样的示例:</p>

<blockquote>
<p>&#34;eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJVc2VySWQiOiI1NmY2YWUxYjYwZDc0MTBjZjRkOWU1YjMiLCJyZXF1ZXN0X3R5cGUiOiIxIn0.AFK3zGF5HvIEl2Qr0cNHmmS97zJmfolipuUKOGdJzUY&#34;</p>
</blockquote>

<p><strong>您可以在此处检查编码和解码值:</strong></p>

<p> <a href="https://jwt.io/#debugger" rel="noreferrer noopener nofollow">https://jwt.io/#debugger</a> <a href="/image/z9NuA.png" rel="noreferrer noopener nofollow"><img src="/image/z9NuA.png" alt="enter image description here"/></a> </p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 在 iOS 编程中使用 JWT 使用 Javascript 对象签名和加密 (JOSE) 进行加密?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/37322585/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/37322585/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 在 iOS 编程中使用 JWT 使用 Javascript 对象签名和加密 (JOSE) 进行加密?