diff options
Diffstat (limited to 'OpenSSL/PKey/DSA.html')
| -rw-r--r-- | OpenSSL/PKey/DSA.html | 40 |
1 files changed, 19 insertions, 21 deletions
diff --git a/OpenSSL/PKey/DSA.html b/OpenSSL/PKey/DSA.html index d13cec6..d2e9f04 100644 --- a/OpenSSL/PKey/DSA.html +++ b/OpenSSL/PKey/DSA.html @@ -4,7 +4,7 @@ <head> <meta charset="UTF-8"> -<title>class OpenSSL::PKey::DSA - net-ssh 4.2.0</title> +<title>class OpenSSL::PKey::DSA - net-ssh 6.0.0.beta1</title> <script type="text/javascript"> var rdoc_rel_prefix = "../../"; @@ -94,10 +94,10 @@ <section class="description"> -<p>This class is originally defined in the <a href="OpenSSL.html">OpenSSL</a> -module. As needed, methods have been added to it by the <a -href="../../Net/SSH.html">Net::SSH</a> module for convenience in dealing -with SSH functionality.</p> +<p>This class is originally defined in the <a +href="../../OpenSSL.html">OpenSSL</a> module. As needed, methods have been +added to it by the <a href="../../Net/SSH.html">Net::SSH</a> module for +convenience in dealing with SSH functionality.</p> </section> @@ -139,20 +139,18 @@ with SSH functionality.</p> <div class="method-source-code" id="ssh_do_sign-source"> - <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 115</span> + <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 108</span> <span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_do_sign</span>(<span class="ruby-identifier">data</span>) - <span class="ruby-identifier">sig</span> = <span class="ruby-identifier">sign</span>( <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">DSS1</span>.<span class="ruby-identifier">new</span>, <span class="ruby-identifier">data</span>) - <span class="ruby-identifier">a1sig</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span>.<span class="ruby-identifier">decode</span>( <span class="ruby-identifier">sig</span> ) + <span class="ruby-identifier">sig</span> = <span class="ruby-identifier">sign</span>(<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA1</span>.<span class="ruby-identifier">new</span>, <span class="ruby-identifier">data</span>) + <span class="ruby-identifier">a1sig</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span>.<span class="ruby-identifier">decode</span>(<span class="ruby-identifier">sig</span>) <span class="ruby-identifier">sig_r</span> = <span class="ruby-identifier">a1sig</span>.<span class="ruby-identifier">value</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">value</span>.<span class="ruby-identifier">to_s</span>(<span class="ruby-value">2</span>) <span class="ruby-identifier">sig_s</span> = <span class="ruby-identifier">a1sig</span>.<span class="ruby-identifier">value</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">value</span>.<span class="ruby-identifier">to_s</span>(<span class="ruby-value">2</span>) - <span class="ruby-keyword">if</span> <span class="ruby-identifier">sig_r</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-value">20</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">sig_s</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-value">20</span> - <span class="ruby-identifier">raise</span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">DSAError</span>, <span class="ruby-string">"bad sig size"</span> - <span class="ruby-keyword">end</span> + <span class="ruby-identifier">raise</span> <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">PKey</span><span class="ruby-operator">::</span><span class="ruby-constant">DSAError</span>, <span class="ruby-string">"bad sig size"</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">sig_r</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-value">20</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">sig_s</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">></span> <span class="ruby-value">20</span> - <span class="ruby-identifier">sig_r</span> = <span class="ruby-string">"\0"</span> <span class="ruby-operator">*</span> ( <span class="ruby-value">20</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">sig_r</span>.<span class="ruby-identifier">length</span> ) <span class="ruby-operator">+</span> <span class="ruby-identifier">sig_r</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">sig_r</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator"><</span> <span class="ruby-value">20</span> - <span class="ruby-identifier">sig_s</span> = <span class="ruby-string">"\0"</span> <span class="ruby-operator">*</span> ( <span class="ruby-value">20</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">sig_s</span>.<span class="ruby-identifier">length</span> ) <span class="ruby-operator">+</span> <span class="ruby-identifier">sig_s</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">sig_s</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator"><</span> <span class="ruby-value">20</span> + <span class="ruby-identifier">sig_r</span> = <span class="ruby-string">"\0"</span> <span class="ruby-operator">*</span> (<span class="ruby-value">20</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">sig_r</span>.<span class="ruby-identifier">length</span>) <span class="ruby-operator">+</span> <span class="ruby-identifier">sig_r</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">sig_r</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator"><</span> <span class="ruby-value">20</span> + <span class="ruby-identifier">sig_s</span> = <span class="ruby-string">"\0"</span> <span class="ruby-operator">*</span> (<span class="ruby-value">20</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">sig_s</span>.<span class="ruby-identifier">length</span>) <span class="ruby-operator">+</span> <span class="ruby-identifier">sig_s</span> <span class="ruby-keyword">if</span> <span class="ruby-identifier">sig_s</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator"><</span> <span class="ruby-value">20</span> <span class="ruby-keyword">return</span> <span class="ruby-identifier">sig_r</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">sig_s</span> <span class="ruby-keyword">end</span></pre> @@ -185,15 +183,15 @@ with SSH functionality.</p> <div class="method-source-code" id="ssh_do_verify-source"> - <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 104</span> + <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 97</span> <span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_do_verify</span>(<span class="ruby-identifier">sig</span>, <span class="ruby-identifier">data</span>) <span class="ruby-identifier">sig_r</span> = <span class="ruby-identifier">sig</span>[<span class="ruby-value">0</span>,<span class="ruby-value">20</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-string">"H*"</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_i</span>(<span class="ruby-value">16</span>) <span class="ruby-identifier">sig_s</span> = <span class="ruby-identifier">sig</span>[<span class="ruby-value">20</span>,<span class="ruby-value">20</span>].<span class="ruby-identifier">unpack</span>(<span class="ruby-string">"H*"</span>)[<span class="ruby-value">0</span>].<span class="ruby-identifier">to_i</span>(<span class="ruby-value">16</span>) <span class="ruby-identifier">a1sig</span> = <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span><span class="ruby-operator">::</span><span class="ruby-constant">Sequence</span>([ - <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span><span class="ruby-operator">::</span><span class="ruby-constant">Integer</span>(<span class="ruby-identifier">sig_r</span>), - <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span><span class="ruby-operator">::</span><span class="ruby-constant">Integer</span>(<span class="ruby-identifier">sig_s</span>) - ]) - <span class="ruby-keyword">return</span> <span class="ruby-identifier">verify</span>(<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">DSS1</span>.<span class="ruby-identifier">new</span>, <span class="ruby-identifier">a1sig</span>.<span class="ruby-identifier">to_der</span>, <span class="ruby-identifier">data</span>) + <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span><span class="ruby-operator">::</span><span class="ruby-constant">Integer</span>(<span class="ruby-identifier">sig_r</span>), + <span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">ASN1</span><span class="ruby-operator">::</span><span class="ruby-constant">Integer</span>(<span class="ruby-identifier">sig_s</span>) + ]) + <span class="ruby-keyword">return</span> <span class="ruby-identifier">verify</span>(<span class="ruby-constant">OpenSSL</span><span class="ruby-operator">::</span><span class="ruby-constant">Digest</span><span class="ruby-operator">::</span><span class="ruby-constant">SHA1</span>.<span class="ruby-identifier">new</span>, <span class="ruby-identifier">a1sig</span>.<span class="ruby-identifier">to_der</span>, <span class="ruby-identifier">data</span>) <span class="ruby-keyword">end</span></pre> </div> @@ -224,7 +222,7 @@ with SSH functionality.</p> <div class="method-source-code" id="ssh_signature_type-source"> - <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 93</span> + <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 86</span> <span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_signature_type</span> <span class="ruby-identifier">ssh_type</span> <span class="ruby-keyword">end</span></pre> @@ -258,7 +256,7 @@ SSH2 protocol.</p> <div class="method-source-code" id="ssh_type-source"> - <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 89</span> + <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 82</span> <span class="ruby-keyword">def</span> <span class="ruby-identifier">ssh_type</span> <span class="ruby-string">"ssh-dss"</span> <span class="ruby-keyword">end</span></pre> @@ -291,7 +289,7 @@ SSH2 protocol.</p> <div class="method-source-code" id="to_blob-source"> - <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 98</span> + <pre><span class="ruby-comment"># File lib/net/ssh/transport/openssl.rb, line 91</span> <span class="ruby-keyword">def</span> <span class="ruby-identifier">to_blob</span> <span class="ruby-ivar">@blob</span> <span class="ruby-operator">||=</span> <span class="ruby-constant">Net</span><span class="ruby-operator">::</span><span class="ruby-constant">SSH</span><span class="ruby-operator">::</span><span class="ruby-constant">Buffer</span>.<span class="ruby-identifier">from</span>(<span class="ruby-value">:string</span>, <span class="ruby-identifier">ssh_type</span>, <span class="ruby-value">:bignum</span>, <span class="ruby-identifier">p</span>, <span class="ruby-value">:bignum</span>, <span class="ruby-identifier">q</span>, <span class="ruby-value">:bignum</span>, <span class="ruby-identifier">g</span>, <span class="ruby-value">:bignum</span>, <span class="ruby-identifier">pub_key</span>).<span class="ruby-identifier">to_s</span> |
