This commit is contained in:
bthomee
2025-05-20 18:10:54 +00:00
parent 39d241def5
commit 90cc35d381
3215 changed files with 96027 additions and 70734 deletions

View File

@@ -227,12 +227,12 @@ $(function() {
<div class="line"><a id="l00149" name="l00149"></a><span class="lineno"> 149</span> <a class="code hl_function" href="namespaceripple.html#ac124fe6744b7fe887dec949b56b16d50">to_string</a>(<a class="code hl_function" href="namespaceripple.html#aa2a27f242f6d150ff52f2ad0b2e2a512">calcNodeID</a>(publicKey)) ==</div>
<div class="line"><a id="l00150" name="l00150"></a><span class="lineno"> 150</span> <span class="stringliteral">&quot;7E59C17D50F5959C7B158FEC95C8F815BF653DC8&quot;</span>);</div>
<div class="line"><a id="l00151" name="l00151"></a><span class="lineno"> 151</span> </div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <span class="keyword">auto</span> sig = <a class="code hl_function" href="namespaceripple.html#a72ab42f87d2351b89ba8f47f5cfa70ba">sign</a>(publicKey, secretKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1));</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> BEAST_EXPECT(sig.size() != 0);</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> BEAST_EXPECT(<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(publicKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), sig));</div>
<div class="line"><a id="l00152" name="l00152"></a><span class="lineno"> 152</span> <span class="keyword">auto</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a> = <a class="code hl_function" href="namespaceripple.html#a72ab42f87d2351b89ba8f47f5cfa70ba">sign</a>(publicKey, secretKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1));</div>
<div class="line"><a id="l00153" name="l00153"></a><span class="lineno"> 153</span> BEAST_EXPECT(<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>.size() != 0);</div>
<div class="line"><a id="l00154" name="l00154"></a><span class="lineno"> 154</span> BEAST_EXPECT(<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(publicKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>));</div>
<div class="line"><a id="l00155" name="l00155"></a><span class="lineno"> 155</span> </div>
<div class="line"><a id="l00156" name="l00156"></a><span class="lineno"> 156</span> <span class="comment">// Correct public key but wrong message</span></div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(publicKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message2), sig));</div>
<div class="line"><a id="l00157" name="l00157"></a><span class="lineno"> 157</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(publicKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message2), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>));</div>
<div class="line"><a id="l00158" name="l00158"></a><span class="lineno"> 158</span> </div>
<div class="line"><a id="l00159" name="l00159"></a><span class="lineno"> 159</span> <span class="comment">// Verify with incorrect public key</span></div>
<div class="line"><a id="l00160" name="l00160"></a><span class="lineno"> 160</span> {</div>
@@ -241,16 +241,16 @@ $(function() {
<div class="line"><a id="l00163" name="l00163"></a><span class="lineno"> 163</span> <a class="code hl_function" href="namespaceripple.html#a71e61a96c4e0813a7b69b53f4b1d986f">generateSecretKey</a>(</div>
<div class="line"><a id="l00164" name="l00164"></a><span class="lineno"> 164</span> <a class="code hl_enumvalue" href="namespaceripple.html#a9de744cfdefe1132969eb982e57e4ddea82c2b7829b8129e5a2d53665ba4b4757">KeyType::secp256k1</a>, <a class="code hl_function" href="namespaceripple.html#adb9531b2a54f33b8227d9b029be9439b">generateSeed</a>(<span class="stringliteral">&quot;otherpassphrase&quot;</span>)));</div>
<div class="line"><a id="l00165" name="l00165"></a><span class="lineno"> 165</span> </div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(otherPublicKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), sig));</div>
<div class="line"><a id="l00166" name="l00166"></a><span class="lineno"> 166</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(otherPublicKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>));</div>
<div class="line"><a id="l00167" name="l00167"></a><span class="lineno"> 167</span> }</div>
<div class="line"><a id="l00168" name="l00168"></a><span class="lineno"> 168</span> </div>
<div class="line"><a id="l00169" name="l00169"></a><span class="lineno"> 169</span> <span class="comment">// Correct public key but wrong signature</span></div>
<div class="line"><a id="l00170" name="l00170"></a><span class="lineno"> 170</span> {</div>
<div class="line"><a id="l00171" name="l00171"></a><span class="lineno"> 171</span> <span class="comment">// Slightly change the signature:</span></div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> <span class="keywordflow">if</span> (<span class="keyword">auto</span> ptr = sig.data())</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> ptr[sig.size() / 2]++;</div>
<div class="line"><a id="l00172" name="l00172"></a><span class="lineno"> 172</span> <span class="keywordflow">if</span> (<span class="keyword">auto</span> ptr = <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>.data())</div>
<div class="line"><a id="l00173" name="l00173"></a><span class="lineno"> 173</span> ptr[<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>.size() / 2]++;</div>
<div class="line"><a id="l00174" name="l00174"></a><span class="lineno"> 174</span> </div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(publicKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), sig));</div>
<div class="line"><a id="l00175" name="l00175"></a><span class="lineno"> 175</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(publicKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>));</div>
<div class="line"><a id="l00176" name="l00176"></a><span class="lineno"> 176</span> }</div>
<div class="line"><a id="l00177" name="l00177"></a><span class="lineno"> 177</span> }</div>
<div class="line"><a id="l00178" name="l00178"></a><span class="lineno"> 178</span> </div>
@@ -271,12 +271,12 @@ $(function() {
<div class="line"><a id="l00193" name="l00193"></a><span class="lineno"> 193</span> <a class="code hl_function" href="namespaceripple.html#ac124fe6744b7fe887dec949b56b16d50">to_string</a>(<a class="code hl_function" href="namespaceripple.html#aa2a27f242f6d150ff52f2ad0b2e2a512">calcNodeID</a>(publicKey)) ==</div>
<div class="line"><a id="l00194" name="l00194"></a><span class="lineno"> 194</span> <span class="stringliteral">&quot;AA066C988C712815CC37AF71472B7CBBBD4E2A0A&quot;</span>);</div>
<div class="line"><a id="l00195" name="l00195"></a><span class="lineno"> 195</span> </div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> <span class="keyword">auto</span> sig = <a class="code hl_function" href="namespaceripple.html#a72ab42f87d2351b89ba8f47f5cfa70ba">sign</a>(publicKey, secretKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1));</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> BEAST_EXPECT(sig.size() != 0);</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> BEAST_EXPECT(<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(publicKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), sig));</div>
<div class="line"><a id="l00196" name="l00196"></a><span class="lineno"> 196</span> <span class="keyword">auto</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a> = <a class="code hl_function" href="namespaceripple.html#a72ab42f87d2351b89ba8f47f5cfa70ba">sign</a>(publicKey, secretKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1));</div>
<div class="line"><a id="l00197" name="l00197"></a><span class="lineno"> 197</span> BEAST_EXPECT(<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>.size() != 0);</div>
<div class="line"><a id="l00198" name="l00198"></a><span class="lineno"> 198</span> BEAST_EXPECT(<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(publicKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>));</div>
<div class="line"><a id="l00199" name="l00199"></a><span class="lineno"> 199</span> </div>
<div class="line"><a id="l00200" name="l00200"></a><span class="lineno"> 200</span> <span class="comment">// Correct public key but wrong message</span></div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(publicKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message2), sig));</div>
<div class="line"><a id="l00201" name="l00201"></a><span class="lineno"> 201</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(publicKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message2), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>));</div>
<div class="line"><a id="l00202" name="l00202"></a><span class="lineno"> 202</span> </div>
<div class="line"><a id="l00203" name="l00203"></a><span class="lineno"> 203</span> <span class="comment">// Verify with incorrect public key</span></div>
<div class="line"><a id="l00204" name="l00204"></a><span class="lineno"> 204</span> {</div>
@@ -285,16 +285,16 @@ $(function() {
<div class="line"><a id="l00207" name="l00207"></a><span class="lineno"> 207</span> <a class="code hl_function" href="namespaceripple.html#a71e61a96c4e0813a7b69b53f4b1d986f">generateSecretKey</a>(</div>
<div class="line"><a id="l00208" name="l00208"></a><span class="lineno"> 208</span> <a class="code hl_enumvalue" href="namespaceripple.html#a9de744cfdefe1132969eb982e57e4ddea8183aa2c95dc1385c8f58bf1917fcb0b">KeyType::ed25519</a>, <a class="code hl_function" href="namespaceripple.html#adb9531b2a54f33b8227d9b029be9439b">generateSeed</a>(<span class="stringliteral">&quot;otherpassphrase&quot;</span>)));</div>
<div class="line"><a id="l00209" name="l00209"></a><span class="lineno"> 209</span> </div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(otherPublicKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), sig));</div>
<div class="line"><a id="l00210" name="l00210"></a><span class="lineno"> 210</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(otherPublicKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>));</div>
<div class="line"><a id="l00211" name="l00211"></a><span class="lineno"> 211</span> }</div>
<div class="line"><a id="l00212" name="l00212"></a><span class="lineno"> 212</span> </div>
<div class="line"><a id="l00213" name="l00213"></a><span class="lineno"> 213</span> <span class="comment">// Correct public key but wrong signature</span></div>
<div class="line"><a id="l00214" name="l00214"></a><span class="lineno"> 214</span> {</div>
<div class="line"><a id="l00215" name="l00215"></a><span class="lineno"> 215</span> <span class="comment">// Slightly change the signature:</span></div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span> <span class="keywordflow">if</span> (<span class="keyword">auto</span> ptr = sig.data())</div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> ptr[sig.size() / 2]++;</div>
<div class="line"><a id="l00216" name="l00216"></a><span class="lineno"> 216</span> <span class="keywordflow">if</span> (<span class="keyword">auto</span> ptr = <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>.data())</div>
<div class="line"><a id="l00217" name="l00217"></a><span class="lineno"> 217</span> ptr[<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>.size() / 2]++;</div>
<div class="line"><a id="l00218" name="l00218"></a><span class="lineno"> 218</span> </div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(publicKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), sig));</div>
<div class="line"><a id="l00219" name="l00219"></a><span class="lineno"> 219</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(publicKey, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>));</div>
<div class="line"><a id="l00220" name="l00220"></a><span class="lineno"> 220</span> }</div>
<div class="line"><a id="l00221" name="l00221"></a><span class="lineno"> 221</span> }</div>
<div class="line"><a id="l00222" name="l00222"></a><span class="lineno"> 222</span> </div>
@@ -314,12 +314,12 @@ $(function() {
<div class="line"><a id="l00236" name="l00236"></a><span class="lineno"> 236</span> <a class="code hl_function" href="namespaceripple.html#a08a13b62b18272366f788632359e8793">toBase58</a>(<a class="code hl_enumvalue" href="namespaceripple.html#a1bf8df553d36589191c8057c136cce03a7dc33e2284f98dd03358e2fe25eed241">TokenType::AccountSecret</a>, sk) ==</div>
<div class="line"><a id="l00237" name="l00237"></a><span class="lineno"> 237</span> <span class="stringliteral">&quot;p9JfM6HHi64m6mvB6v5k7G2b1cXzGmYiCNJf6GHPKvFTWdeRVjh&quot;</span>);</div>
<div class="line"><a id="l00238" name="l00238"></a><span class="lineno"> 238</span> </div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span> <span class="keyword">auto</span> sig = <a class="code hl_function" href="namespaceripple.html#a72ab42f87d2351b89ba8f47f5cfa70ba">sign</a>(pk, sk, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1));</div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> BEAST_EXPECT(sig.size() != 0);</div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> BEAST_EXPECT(<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(pk, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), sig));</div>
<div class="line"><a id="l00239" name="l00239"></a><span class="lineno"> 239</span> <span class="keyword">auto</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a> = <a class="code hl_function" href="namespaceripple.html#a72ab42f87d2351b89ba8f47f5cfa70ba">sign</a>(pk, sk, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1));</div>
<div class="line"><a id="l00240" name="l00240"></a><span class="lineno"> 240</span> BEAST_EXPECT(<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>.size() != 0);</div>
<div class="line"><a id="l00241" name="l00241"></a><span class="lineno"> 241</span> BEAST_EXPECT(<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(pk, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>));</div>
<div class="line"><a id="l00242" name="l00242"></a><span class="lineno"> 242</span> </div>
<div class="line"><a id="l00243" name="l00243"></a><span class="lineno"> 243</span> <span class="comment">// Correct public key but wrong message</span></div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(pk, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message2), sig));</div>
<div class="line"><a id="l00244" name="l00244"></a><span class="lineno"> 244</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(pk, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message2), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>));</div>
<div class="line"><a id="l00245" name="l00245"></a><span class="lineno"> 245</span> </div>
<div class="line"><a id="l00246" name="l00246"></a><span class="lineno"> 246</span> <span class="comment">// Verify with incorrect public key</span></div>
<div class="line"><a id="l00247" name="l00247"></a><span class="lineno"> 247</span> {</div>
@@ -327,16 +327,16 @@ $(function() {
<div class="line"><a id="l00249" name="l00249"></a><span class="lineno"> 249</span> <a class="code hl_enumvalue" href="namespaceripple.html#a9de744cfdefe1132969eb982e57e4ddea82c2b7829b8129e5a2d53665ba4b4757">KeyType::secp256k1</a>, <a class="code hl_function" href="namespaceripple.html#adb9531b2a54f33b8227d9b029be9439b">generateSeed</a>(<span class="stringliteral">&quot;otherpassphrase&quot;</span>));</div>
<div class="line"><a id="l00250" name="l00250"></a><span class="lineno"> 250</span> </div>
<div class="line"><a id="l00251" name="l00251"></a><span class="lineno"> 251</span> BEAST_EXPECT(</div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span> !<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(otherKeyPair.first, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), sig));</div>
<div class="line"><a id="l00252" name="l00252"></a><span class="lineno"> 252</span> !<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(otherKeyPair.first, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>));</div>
<div class="line"><a id="l00253" name="l00253"></a><span class="lineno"> 253</span> }</div>
<div class="line"><a id="l00254" name="l00254"></a><span class="lineno"> 254</span> </div>
<div class="line"><a id="l00255" name="l00255"></a><span class="lineno"> 255</span> <span class="comment">// Correct public key but wrong signature</span></div>
<div class="line"><a id="l00256" name="l00256"></a><span class="lineno"> 256</span> {</div>
<div class="line"><a id="l00257" name="l00257"></a><span class="lineno"> 257</span> <span class="comment">// Slightly change the signature:</span></div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> <span class="keywordflow">if</span> (<span class="keyword">auto</span> ptr = sig.data())</div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> ptr[sig.size() / 2]++;</div>
<div class="line"><a id="l00258" name="l00258"></a><span class="lineno"> 258</span> <span class="keywordflow">if</span> (<span class="keyword">auto</span> ptr = <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>.data())</div>
<div class="line"><a id="l00259" name="l00259"></a><span class="lineno"> 259</span> ptr[<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>.size() / 2]++;</div>
<div class="line"><a id="l00260" name="l00260"></a><span class="lineno"> 260</span> </div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(pk, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), sig));</div>
<div class="line"><a id="l00261" name="l00261"></a><span class="lineno"> 261</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(pk, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>));</div>
<div class="line"><a id="l00262" name="l00262"></a><span class="lineno"> 262</span> }</div>
<div class="line"><a id="l00263" name="l00263"></a><span class="lineno"> 263</span> }</div>
<div class="line"><a id="l00264" name="l00264"></a><span class="lineno"> 264</span> </div>
@@ -356,12 +356,12 @@ $(function() {
<div class="line"><a id="l00278" name="l00278"></a><span class="lineno"> 278</span> <a class="code hl_function" href="namespaceripple.html#a08a13b62b18272366f788632359e8793">toBase58</a>(<a class="code hl_enumvalue" href="namespaceripple.html#a1bf8df553d36589191c8057c136cce03a7dc33e2284f98dd03358e2fe25eed241">TokenType::AccountSecret</a>, sk) ==</div>
<div class="line"><a id="l00279" name="l00279"></a><span class="lineno"> 279</span> <span class="stringliteral">&quot;pwDQjwEhbUBmPuEjFpEG75bFhv2obkCB7NxQsfFxM7xGHBMVPu9&quot;</span>);</div>
<div class="line"><a id="l00280" name="l00280"></a><span class="lineno"> 280</span> </div>
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno"> 281</span> <span class="keyword">auto</span> sig = <a class="code hl_function" href="namespaceripple.html#a72ab42f87d2351b89ba8f47f5cfa70ba">sign</a>(pk, sk, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1));</div>
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno"> 282</span> BEAST_EXPECT(sig.size() != 0);</div>
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span> BEAST_EXPECT(<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(pk, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), sig));</div>
<div class="line"><a id="l00281" name="l00281"></a><span class="lineno"> 281</span> <span class="keyword">auto</span> <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a> = <a class="code hl_function" href="namespaceripple.html#a72ab42f87d2351b89ba8f47f5cfa70ba">sign</a>(pk, sk, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1));</div>
<div class="line"><a id="l00282" name="l00282"></a><span class="lineno"> 282</span> BEAST_EXPECT(<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>.size() != 0);</div>
<div class="line"><a id="l00283" name="l00283"></a><span class="lineno"> 283</span> BEAST_EXPECT(<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(pk, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>));</div>
<div class="line"><a id="l00284" name="l00284"></a><span class="lineno"> 284</span> </div>
<div class="line"><a id="l00285" name="l00285"></a><span class="lineno"> 285</span> <span class="comment">// Correct public key but wrong message</span></div>
<div class="line"><a id="l00286" name="l00286"></a><span class="lineno"> 286</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(pk, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message2), sig));</div>
<div class="line"><a id="l00286" name="l00286"></a><span class="lineno"> 286</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(pk, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message2), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>));</div>
<div class="line"><a id="l00287" name="l00287"></a><span class="lineno"> 287</span> </div>
<div class="line"><a id="l00288" name="l00288"></a><span class="lineno"> 288</span> <span class="comment">// Verify with incorrect public key</span></div>
<div class="line"><a id="l00289" name="l00289"></a><span class="lineno"> 289</span> {</div>
@@ -369,16 +369,16 @@ $(function() {
<div class="line"><a id="l00291" name="l00291"></a><span class="lineno"> 291</span> <a class="code hl_enumvalue" href="namespaceripple.html#a9de744cfdefe1132969eb982e57e4ddea8183aa2c95dc1385c8f58bf1917fcb0b">KeyType::ed25519</a>, <a class="code hl_function" href="namespaceripple.html#adb9531b2a54f33b8227d9b029be9439b">generateSeed</a>(<span class="stringliteral">&quot;otherpassphrase&quot;</span>));</div>
<div class="line"><a id="l00292" name="l00292"></a><span class="lineno"> 292</span> </div>
<div class="line"><a id="l00293" name="l00293"></a><span class="lineno"> 293</span> BEAST_EXPECT(</div>
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"> 294</span> !<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(otherKeyPair.first, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), sig));</div>
<div class="line"><a id="l00294" name="l00294"></a><span class="lineno"> 294</span> !<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(otherKeyPair.first, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>));</div>
<div class="line"><a id="l00295" name="l00295"></a><span class="lineno"> 295</span> }</div>
<div class="line"><a id="l00296" name="l00296"></a><span class="lineno"> 296</span> </div>
<div class="line"><a id="l00297" name="l00297"></a><span class="lineno"> 297</span> <span class="comment">// Correct public key but wrong signature</span></div>
<div class="line"><a id="l00298" name="l00298"></a><span class="lineno"> 298</span> {</div>
<div class="line"><a id="l00299" name="l00299"></a><span class="lineno"> 299</span> <span class="comment">// Slightly change the signature:</span></div>
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"> 300</span> <span class="keywordflow">if</span> (<span class="keyword">auto</span> ptr = sig.data())</div>
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno"> 301</span> ptr[sig.size() / 2]++;</div>
<div class="line"><a id="l00300" name="l00300"></a><span class="lineno"> 300</span> <span class="keywordflow">if</span> (<span class="keyword">auto</span> ptr = <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>.data())</div>
<div class="line"><a id="l00301" name="l00301"></a><span class="lineno"> 301</span> ptr[<a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>.size() / 2]++;</div>
<div class="line"><a id="l00302" name="l00302"></a><span class="lineno"> 302</span> </div>
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"> 303</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(pk, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), sig));</div>
<div class="line"><a id="l00303" name="l00303"></a><span class="lineno"> 303</span> BEAST_EXPECT(!<a class="code hl_function" href="namespaceripple.html#a3549cb4c3d81efe240ad20c147e48ac7">verify</a>(pk, <a class="code hl_function" href="namespaceripple.html#a93f2333b362ee67694b78f55eadf7805">makeSlice</a>(message1), <a class="code hl_class" href="classripple_1_1test_1_1jtx_1_1sig.html">sig</a>));</div>
<div class="line"><a id="l00304" name="l00304"></a><span class="lineno"> 304</span> }</div>
<div class="line"><a id="l00305" name="l00305"></a><span class="lineno"> 305</span> }</div>
<div class="line"><a id="l00306" name="l00306"></a><span class="lineno"> 306</span> }</div>
@@ -459,6 +459,7 @@ $(function() {
<div class="ttc" id="aclassripple_1_1base__uint_html"><div class="ttname"><a href="classripple_1_1base__uint.html">ripple::base_uint</a></div><div class="ttdoc">Integers of any length that is a multiple of 32-bits.</div><div class="ttdef"><b>Definition:</b> <a href="base__uint_8h_source.html#l00085">base_uint.h:86</a></div></div>
<div class="ttc" id="aclassripple_1_1base__uint_html_a5342507fe2fb5ac55d578e7e98863f70"><div class="ttname"><a href="classripple_1_1base__uint.html#a5342507fe2fb5ac55d578e7e98863f70">ripple::base_uint::data</a></div><div class="ttdeci">pointer data()</div><div class="ttdef"><b>Definition:</b> <a href="base__uint_8h_source.html#l00125">base_uint.h:125</a></div></div>
<div class="ttc" id="aclassripple_1_1base__uint_html_a64d93405f8d7ba89f0a406b32015758f"><div class="ttname"><a href="classripple_1_1base__uint.html#a64d93405f8d7ba89f0a406b32015758f">ripple::base_uint::size</a></div><div class="ttdeci">static constexpr std::size_t size()</div><div class="ttdef"><b>Definition:</b> <a href="base__uint_8h_source.html#l00526">base_uint.h:526</a></div></div>
<div class="ttc" id="aclassripple_1_1test_1_1jtx_1_1sig_html"><div class="ttname"><a href="classripple_1_1test_1_1jtx_1_1sig.html">ripple::test::jtx::sig</a></div><div class="ttdoc">Set the regular signature on a JTx.</div><div class="ttdef"><b>Definition:</b> <a href="sig_8h_source.html#l00034">sig.h:35</a></div></div>
<div class="ttc" id="aequal_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/algorithm/equal.html">std::equal</a></div><div class="ttdeci">T equal(T... args)</div></div>
<div class="ttc" id="ainteger_html"><div class="ttname"><a href="http://en.cppreference.com/w/cpp/types/integer.html">std::uint8_t</a></div></div>
<div class="ttc" id="anamespacebeast_html_a6894f6dcd09bceda3986ebb1ea7a3eed"><div class="ttname"><a href="namespacebeast.html#a6894f6dcd09bceda3986ebb1ea7a3eed">beast::rngfill</a></div><div class="ttdeci">void rngfill(void *buffer, std::size_t bytes, Generator &amp;g)</div><div class="ttdef"><b>Definition:</b> <a href="rngfill_8h_source.html#l00034">rngfill.h:34</a></div></div>