1import{_ as e,r as p,o,c,a as n,b as a,d as t,e as i}from"./app-16c86cfc.js";const l={},r=i(`<h1 id="ã»ãã·ã§ã³idã¨ããã·ãã¿ã«ç½²å" tabindex="-1"><a class="header-anchor" href="#ã»ãã·ã§ã³idã¨ããã·ãã¿ã«ç½²å" aria-hidden="true">#</a> ã»ãã·ã§ã³IDã¨ãã¸ã¿ã«ç½²å</h1><p>VerseEngineã¯ãæ¥ç¶ã¦ã¼ã¶ã¼ã䏿ã«èå¥ããããã®ã»ãã·ã§ã³IDãå é¨ã§ç®¡çãã¾ãã</p><p>ãã®ã»ãã·ã§ã³IDã¯ä»¥ä¸ã®ç¹æ§ãæã£ã¦ãã¾ãï¼</p><ul><li>æ°ããæ¥ç¶ï¼ã¾ãã¯ãã©ã¦ã¶ã®ãªãã¼ãï¼ãã¨ã«ç°ãªãã»ãã·ã§ã³IDãçæããã¾ãã</li><li>ã»ãã·ã§ã³IDã¯å ¬ééµã¨ãã¦æ©è½ãããã¼ã¿ã®ç½²åããã³æ¤è¨¼ãå¯è½ã§ãã <ul><li>ç§å¯éµã¯ãã¼ã«ã«ãã©ã¦ã¶ã®ã¡ã¢ãªå ã«ã®ã¿ä¿åããã¾ãã</li><li>ãã¸ã¿ã«ç½²åã®ã¢ã«ã´ãªãºã ã«ã¯ãED25519ãæ¡ç¨ããã¦ãã¾ãã</li></ul></li></ul><p>ã»ãã·ã§ã³IDãç¨ãã¦ç½²åãçæãããã¨ã§ãå¤é¨ãµã¼ãã¼ã¨VerseEngineã®ã¦ã¼ã¶ã¼éã®éä¿¡ãå®å ¨ã«ç´ã¥ãããã¨ãå¯è½ã¨ãªãã¾ãã</p><h2 id="ç½²åã®ä½æ" tabindex="-1"><a class="header-anchor" href="#ç½²åã®ä½æ" aria-hidden="true">#</a> ç½²åã®ä½æ</h2><div class="language-typescript line-numbers-mode" data-ext="ts"><pre class="language-typescript"><code><span class="token keyword">const</span> <span class="token punctuation">{</span> player <span class="token punctuation">}</span> <span class="token operator">=</span> <span class="token keyword">await</span> VerseThree<span class="token punctuation">.</span><span class="token function">start</span><span class="token punctuation">(</span><span class="token operator">...</span><span class="token punctuation">)</span><span class="token punctuation">;</span> 2<span class="token operator">...</span> 3<span class="token keyword">const</span> data <span class="token operator">=</span> <span class="token operator">...</span><span class="token punctuation">;</span> 4<span class="token keyword">const</span> signature <span class="token operator">=</span> player<span class="token punctuation">.</span><span class="token function">signString</span><span class="token punctuation">(</span>data<span class="token punctuation">)</span><span class="token punctuation">;</span> 5<span class="token keyword">await</span> <span class="token function">fetch</span><span class="token punctuation">(</span><span class="token string">'...'</span><span class="token punctuation">,</span> 6 headers<span class="token operator">:</span> <span class="token punctuation">{</span> 7 <span class="token string-property property">'Content-Type'</span><span class="token operator">:</span> <span class="token string">'application/json'</span> 8 <span class="token punctuation">}</span><span class="token punctuation">,</span> 9 body<span class="token operator">:</span> <span class="token constant">JSON</span><span class="token punctuation">.</span><span class="token function">stringify</span><span class="token punctuation">(</span><span class="token punctuation">{</span> 10 <span class="token string-property property">'sessionID'</span><span class="token operator">:</span> player<span class="token punctuation">.</span>sessionID<span class="token punctuation">,</span> 11 signature<span class="token punctuation">,</span> 12 data 13 <span class="token punctuation">}</span><span class="token punctuation">)</span> 14<span class="token punctuation">}</span><span class="token punctuation">)</span><span class="token punctuation">;</span> 15</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="ç½²åã®æ¤è¨¼-webããã©ã¦ãµã" tabindex="-1"><a class="header-anchor" href="#ç½²åã®æ¤è¨¼-webããã©ã¦ãµã" aria-hidden="true">
15#</a> ç½²åã®æ¤è¨¼ - Webãã©ã¦ã¶</h2><div class="language-typescript line-numbers-mode" data-ext="ts"><pre class="language-typescript"><code><span class="token keyword">const</span> valid <span class="token operator">=</span> otherPerson<span class="token punctuation">.</span><span class="token function">verifyString</span><span class="token punctuation">(</span>signature<span class="token punctuation">,</span> data<span class="token punctuation">)</span><span class="token punctuation">;</span> 16<span class="token comment">// or</span> 17<span class="token keyword">const</span> valid <span class="token operator">=</span> VerseThree<span class="token punctuation">.</span><span class="token function">verifyString</span><span class="token punctuation">(</span>otherPerson<span class="token punctuation">.</span>sessionID<span class="token punctuation">,</span> signature<span class="token punctuation">,</span> data<span class="token punctuation">)</span><span class="token punctuation">;</span> 18<span class="token keyword">if</span><span class="token punctuation">(</span><span class="token operator">!</span>valid<span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token keyword">throw</span> <span class="token keyword">new</span> <span class="token class-name">Error</span><span class="token punctuation">(</span><span class="token string">'invalid data'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token punctuation">}</span> 19</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="ç½²åã®æ¤è¨¼-ãµã¼ããã¼-rust" tabindex="-1"><a class="header-anchor" href="#ç½²åã®æ¤è¨¼-ãµã¼ããã¼-rust" aria-hidden="true">#</a> ç½²åã®æ¤è¨¼ - ãµã¼ãã¼(rust)</h2><div class="language-rust line-numbers-mode" data-ext="rs"><pre class="language-rust"><code><span class="token keyword">
19use</span> <span class="token namespace">verse_session_id<span class="token punctuation">::</span></span><span class="token operator">*</span><span class="token punctuation">;</span> 20 21<span class="token punctuation">...</span> 22<span class="token keyword">pub</span> <span class="token keyword">fn</span> <span class="token function-definition function">verify_string</span><span class="token punctuation">(</span>session_id<span class="token punctuation">:</span> <span class="token operator">&</span><span class="token keyword">str</span><span class="token punctuation">,</span> signature<span class="token punctuation">:</span> <span class="token operator">&</span><span class="token keyword">str</span><span class="token punctuation">,</span> data<span class="token punctuation">:</span> <span class="token operator">&</span><span class="token keyword">str</span><span class="token punctuation">)</span> <span class="token punctuation">-></span> <span class="token keyword">bool</span> <span class="token punctuation">{</span> 23 <span class="token keyword">let</span> <span class="token class-name">Ok</span><span class="token punctuation">(</span>sid<span class="token punctuation">)</span> <span class="token operator">=</span> session_id<span class="token punctuation">.</span><span class="token function">parse</span><span class="token punctuation">::</span><span class="token operator"><</span><span class="token class-name">SessionId</span><span class="token operator">></span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token keyword">else</span> <span class="token punctuation">{</span> 24 <span class="token keyword">return</span> <span class="token boolean">false</span><span class="token punctuation">;</span> 25 <span class="token punctuation">}</span><span class="token punctuation">;</span> 26 <span class="token keyword">let</span> <span class="token class-name">Ok</span><span class="token punctuation">(</span>ss<span class="token punctuation">)</span> <span class="token operator">=</span> signature<span class="token punctuation">.</span><span class="token function">parse</span><span class="token punctuation">::</span><span class="token operator"><</span><span class="token class-name">SignatureSet</span><span class="token operator">></span><span class="token punctuation">(</span><span class="token punctuation">)</span> <span class="token keyword">else</span> <span class="token punctuation">{</span> 27 <span class="token keyword">return</span> <span class="token boolean">false</span><span class="token punctuation">;</span> 28 <span class="token punctuation">}</span><span class="token punctuation">;</span> 29 30 sid<span class="token punctuation">.</span><span class="token function">verify</span><span class="token punctuation">(</span><span class="token macro property">vec!</span><span class="token punctuation">[</span>data<span class="token punctuation">.</span><span class="token function">as_bytes</span><span class="token punctuation">(</span><span class="token punctuation">)</span><span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token operator">&</span>ss<span class="token punctuation">)</span><span class="token punctuation">.</span><span class="token function">is_ok</span><span class="token punctuation">(</span><span class="token punctuation">)</span> 31<span class="token punctuation">}</span> 32</code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><h2 id="é¢é£ãªã³ã¯" tabindex="-1"><a class="header-anchor" href="#é¢é£ãªã³ã¯" aria-hidden="true">#</a> é¢é£ãªã³ã¯</h2>`,12),u={href:"https://github.com/VerseEngine/verse-three/blob/main/docs/verse-three.player.signstring.md",target:"_blank",rel:"noopener noreferrer"},k={href:"https://github.com/VerseEngine/verse-core/blob/main/docs/verse-core.ver
32se.signstring.md",target:"_blank",rel:"noopener noreferrer"},d={href:"https://crates.io/crates/verse-session-id",target:"_blank",rel:"noopener noreferrer"};function v(m,b){const s=p("ExternalLinkIcon");return o(),c("div",null,[r,n("ul",null,[n("li",null,[n("a",u,[a("verse-three - ç½²å使ã®ãªãã¡ã¬ã³ã¹"),t(s)])]),n("li",null,[n("a",k,[a("verse-core - ç½²å使ã®ãªãã¡ã¬ã³ã¹"),t(s)])]),n("li",null,[n("a",d,[a("verse-session-id - crates.io"),t(s)])])])])}const g=e(l,[["render",v],["__file","digital-signatures.html.vue"]]);export{g as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.