net-ssh 1.1.4 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (297) hide show
  1. data/CHANGELOG.rdoc +37 -0
  2. data/Manifest +101 -0
  3. data/README.rdoc +110 -0
  4. data/Rakefile +26 -0
  5. data/{THANKS → THANKS.rdoc} +2 -5
  6. data/lib/net/ssh.rb +189 -57
  7. data/lib/net/ssh/authentication/agent.rb +175 -0
  8. data/lib/net/ssh/authentication/constants.rb +18 -0
  9. data/lib/net/ssh/authentication/key_manager.rb +166 -0
  10. data/lib/net/ssh/authentication/methods/abstract.rb +60 -0
  11. data/lib/net/ssh/authentication/methods/hostbased.rb +71 -0
  12. data/lib/net/ssh/authentication/methods/keyboard_interactive.rb +66 -0
  13. data/lib/net/ssh/authentication/methods/password.rb +39 -0
  14. data/lib/net/ssh/authentication/methods/publickey.rb +92 -0
  15. data/lib/net/ssh/authentication/pageant.rb +176 -0
  16. data/lib/net/ssh/authentication/session.rb +116 -0
  17. data/lib/net/ssh/buffer.rb +339 -0
  18. data/lib/net/ssh/buffered_io.rb +149 -0
  19. data/lib/net/ssh/config.rb +173 -0
  20. data/lib/net/ssh/connection/channel.rb +575 -454
  21. data/lib/net/ssh/connection/constants.rb +31 -45
  22. data/lib/net/ssh/connection/session.rb +569 -0
  23. data/lib/net/ssh/connection/term.rb +176 -88
  24. data/lib/net/ssh/errors.rb +83 -61
  25. data/lib/net/ssh/key_factory.rb +85 -0
  26. data/lib/net/ssh/known_hosts.rb +129 -0
  27. data/lib/net/ssh/loggable.rb +61 -0
  28. data/lib/net/ssh/packet.rb +102 -0
  29. data/lib/net/ssh/prompt.rb +93 -0
  30. data/lib/net/ssh/proxy/errors.rb +8 -28
  31. data/lib/net/ssh/proxy/http.rb +75 -107
  32. data/lib/net/ssh/proxy/socks4.rb +35 -48
  33. data/lib/net/ssh/proxy/socks5.rb +76 -108
  34. data/lib/net/ssh/service/forward.rb +267 -0
  35. data/lib/net/ssh/test.rb +89 -0
  36. data/lib/net/ssh/test/channel.rb +129 -0
  37. data/lib/net/ssh/test/extensions.rb +152 -0
  38. data/lib/net/ssh/test/kex.rb +44 -0
  39. data/lib/net/ssh/test/local_packet.rb +51 -0
  40. data/lib/net/ssh/test/packet.rb +81 -0
  41. data/lib/net/ssh/test/remote_packet.rb +38 -0
  42. data/lib/net/ssh/test/script.rb +157 -0
  43. data/lib/net/ssh/test/socket.rb +59 -0
  44. data/lib/net/ssh/transport/algorithms.rb +384 -0
  45. data/lib/net/ssh/transport/cipher_factory.rb +72 -0
  46. data/lib/net/ssh/transport/constants.rb +22 -58
  47. data/lib/net/ssh/transport/hmac.rb +31 -0
  48. data/lib/net/ssh/transport/hmac/abstract.rb +48 -0
  49. data/lib/net/ssh/transport/hmac/md5.rb +12 -0
  50. data/lib/net/ssh/transport/hmac/md5_96.rb +11 -0
  51. data/lib/net/ssh/transport/hmac/none.rb +15 -0
  52. data/lib/net/ssh/transport/hmac/sha1.rb +13 -0
  53. data/lib/net/ssh/transport/hmac/sha1_96.rb +11 -0
  54. data/lib/net/ssh/transport/identity_cipher.rb +40 -0
  55. data/lib/net/ssh/transport/kex.rb +13 -0
  56. data/lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb +208 -0
  57. data/lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb +77 -0
  58. data/lib/net/ssh/{util → transport}/openssl.rb +22 -40
  59. data/lib/net/ssh/transport/packet_stream.rb +230 -0
  60. data/lib/net/ssh/transport/server_version.rb +61 -0
  61. data/lib/net/ssh/transport/session.rb +225 -303
  62. data/lib/net/ssh/transport/state.rb +170 -0
  63. data/lib/net/ssh/verifiers/lenient.rb +30 -0
  64. data/lib/net/ssh/verifiers/null.rb +12 -0
  65. data/lib/net/ssh/verifiers/strict.rb +53 -0
  66. data/lib/net/ssh/version.rb +57 -26
  67. data/net-ssh.gemspec +54 -0
  68. data/setup.rb +1585 -0
  69. data/test/authentication/methods/common.rb +28 -0
  70. data/test/authentication/methods/test_abstract.rb +51 -0
  71. data/test/authentication/methods/test_hostbased.rb +108 -0
  72. data/test/authentication/methods/test_keyboard_interactive.rb +98 -0
  73. data/test/authentication/methods/test_password.rb +50 -0
  74. data/test/authentication/methods/test_publickey.rb +123 -0
  75. data/test/authentication/test_agent.rb +205 -0
  76. data/test/authentication/test_key_manager.rb +100 -0
  77. data/test/authentication/test_session.rb +93 -0
  78. data/test/common.rb +106 -0
  79. data/test/configs/exact_match +8 -0
  80. data/test/configs/wild_cards +14 -0
  81. data/test/connection/test_channel.rb +452 -0
  82. data/test/connection/test_session.rb +483 -0
  83. data/test/test_all.rb +6 -0
  84. data/test/test_buffer.rb +336 -0
  85. data/test/test_buffered_io.rb +63 -0
  86. data/test/test_config.rb +78 -0
  87. data/test/test_key_factory.rb +67 -0
  88. data/test/transport/hmac/test_md5.rb +34 -0
  89. data/test/transport/hmac/test_md5_96.rb +25 -0
  90. data/test/transport/hmac/test_none.rb +34 -0
  91. data/test/transport/hmac/test_sha1.rb +34 -0
  92. data/test/transport/hmac/test_sha1_96.rb +25 -0
  93. data/test/transport/kex/test_diffie_hellman_group1_sha1.rb +146 -0
  94. data/test/transport/kex/test_diffie_hellman_group_exchange_sha1.rb +92 -0
  95. data/test/transport/test_algorithms.rb +302 -0
  96. data/test/transport/test_cipher_factory.rb +163 -0
  97. data/test/transport/test_hmac.rb +34 -0
  98. data/test/transport/test_identity_cipher.rb +40 -0
  99. data/test/transport/test_packet_stream.rb +433 -0
  100. data/test/transport/test_server_version.rb +55 -0
  101. data/test/transport/test_session.rb +312 -0
  102. data/test/transport/test_state.rb +173 -0
  103. metadata +102 -253
  104. data/ChangeLog +0 -560
  105. data/LICENSE +0 -7
  106. data/NEWS +0 -152
  107. data/README +0 -14
  108. data/bin/rb-keygen +0 -210
  109. data/doc/LICENSE-BSD +0 -27
  110. data/doc/LICENSE-GPL +0 -280
  111. data/doc/LICENSE-RUBY +0 -56
  112. data/doc/manual-html/chapter-1.html +0 -388
  113. data/doc/manual-html/chapter-2.html +0 -552
  114. data/doc/manual-html/chapter-3.html +0 -470
  115. data/doc/manual-html/chapter-4.html +0 -413
  116. data/doc/manual-html/chapter-5.html +0 -525
  117. data/doc/manual-html/chapter-6.html +0 -456
  118. data/doc/manual-html/chapter-7.html +0 -343
  119. data/doc/manual-html/index.html +0 -235
  120. data/doc/manual-html/stylesheets/manual.css +0 -270
  121. data/doc/manual-html/stylesheets/ruby.css +0 -17
  122. data/doc/manual/chapter.erb +0 -38
  123. data/doc/manual/example.erb +0 -18
  124. data/doc/manual/index.erb +0 -29
  125. data/doc/manual/manual.rb +0 -311
  126. data/doc/manual/manual.yml +0 -73
  127. data/doc/manual/page.erb +0 -87
  128. data/doc/manual/parts/0000.txt +0 -5
  129. data/doc/manual/parts/0001.txt +0 -3
  130. data/doc/manual/parts/0002.txt +0 -40
  131. data/doc/manual/parts/0003.txt +0 -6
  132. data/doc/manual/parts/0004.txt +0 -7
  133. data/doc/manual/parts/0005.txt +0 -1
  134. data/doc/manual/parts/0006.txt +0 -49
  135. data/doc/manual/parts/0007.txt +0 -67
  136. data/doc/manual/parts/0008.txt +0 -43
  137. data/doc/manual/parts/0009.txt +0 -14
  138. data/doc/manual/parts/0010.txt +0 -7
  139. data/doc/manual/parts/0011.txt +0 -14
  140. data/doc/manual/parts/0012.txt +0 -3
  141. data/doc/manual/parts/0013.txt +0 -20
  142. data/doc/manual/parts/0014.txt +0 -32
  143. data/doc/manual/parts/0015.txt +0 -14
  144. data/doc/manual/parts/0016.txt +0 -28
  145. data/doc/manual/parts/0017.txt +0 -50
  146. data/doc/manual/parts/0018.txt +0 -35
  147. data/doc/manual/parts/0019.txt +0 -7
  148. data/doc/manual/parts/0020.txt +0 -72
  149. data/doc/manual/parts/0021.txt +0 -50
  150. data/doc/manual/parts/0022.txt +0 -42
  151. data/doc/manual/parts/0023.txt +0 -51
  152. data/doc/manual/parts/0024.txt +0 -18
  153. data/doc/manual/parts/0025.txt +0 -18
  154. data/doc/manual/parts/0026.txt +0 -15
  155. data/doc/manual/parts/0027.txt +0 -37
  156. data/doc/manual/parts/0028.txt +0 -16
  157. data/doc/manual/parts/0029.txt +0 -1
  158. data/doc/manual/parts/0030.txt +0 -52
  159. data/doc/manual/parts/0031.txt +0 -25
  160. data/doc/manual/stylesheets/manual.css +0 -270
  161. data/doc/manual/stylesheets/ruby.css +0 -17
  162. data/doc/manual/tutorial.erb +0 -30
  163. data/examples/auth-forward.rb +0 -41
  164. data/examples/channel-demo.rb +0 -81
  165. data/examples/port-forward.rb +0 -51
  166. data/examples/process-demo.rb +0 -91
  167. data/examples/remote-net-port-forward.rb +0 -45
  168. data/examples/remote-port-forward.rb +0 -80
  169. data/examples/shell-demo.rb +0 -46
  170. data/examples/ssh-client.rb +0 -67
  171. data/examples/sync-shell-demo.rb +0 -69
  172. data/examples/tail-demo.rb +0 -49
  173. data/lib/net/ssh/connection/driver.rb +0 -446
  174. data/lib/net/ssh/connection/services.rb +0 -72
  175. data/lib/net/ssh/host-key-verifier.rb +0 -52
  176. data/lib/net/ssh/known-hosts.rb +0 -96
  177. data/lib/net/ssh/lenient-host-key-verifier.rb +0 -25
  178. data/lib/net/ssh/null-host-key-verifier.rb +0 -14
  179. data/lib/net/ssh/service/agentforward/driver.rb +0 -78
  180. data/lib/net/ssh/service/agentforward/services.rb +0 -41
  181. data/lib/net/ssh/service/forward/driver.rb +0 -319
  182. data/lib/net/ssh/service/forward/local-network-handler.rb +0 -71
  183. data/lib/net/ssh/service/forward/remote-network-handler.rb +0 -83
  184. data/lib/net/ssh/service/forward/services.rb +0 -76
  185. data/lib/net/ssh/service/process/driver.rb +0 -153
  186. data/lib/net/ssh/service/process/open.rb +0 -193
  187. data/lib/net/ssh/service/process/popen3.rb +0 -178
  188. data/lib/net/ssh/service/process/services.rb +0 -66
  189. data/lib/net/ssh/service/services.rb +0 -60
  190. data/lib/net/ssh/service/shell/driver.rb +0 -86
  191. data/lib/net/ssh/service/shell/services.rb +0 -54
  192. data/lib/net/ssh/service/shell/shell.rb +0 -222
  193. data/lib/net/ssh/service/shell/sync.rb +0 -114
  194. data/lib/net/ssh/session.rb +0 -305
  195. data/lib/net/ssh/transport/algorithm-negotiator.rb +0 -275
  196. data/lib/net/ssh/transport/compress/compressor.rb +0 -53
  197. data/lib/net/ssh/transport/compress/decompressor.rb +0 -53
  198. data/lib/net/ssh/transport/compress/none-compressor.rb +0 -39
  199. data/lib/net/ssh/transport/compress/none-decompressor.rb +0 -39
  200. data/lib/net/ssh/transport/compress/services.rb +0 -68
  201. data/lib/net/ssh/transport/compress/zlib-compressor.rb +0 -60
  202. data/lib/net/ssh/transport/compress/zlib-decompressor.rb +0 -52
  203. data/lib/net/ssh/transport/errors.rb +0 -47
  204. data/lib/net/ssh/transport/identity-cipher.rb +0 -61
  205. data/lib/net/ssh/transport/kex/dh-gex.rb +0 -106
  206. data/lib/net/ssh/transport/kex/dh.rb +0 -249
  207. data/lib/net/ssh/transport/kex/services.rb +0 -62
  208. data/lib/net/ssh/transport/ossl/buffer-factory.rb +0 -52
  209. data/lib/net/ssh/transport/ossl/buffer.rb +0 -87
  210. data/lib/net/ssh/transport/ossl/cipher-factory.rb +0 -98
  211. data/lib/net/ssh/transport/ossl/digest-factory.rb +0 -51
  212. data/lib/net/ssh/transport/ossl/hmac-factory.rb +0 -71
  213. data/lib/net/ssh/transport/ossl/hmac/hmac.rb +0 -62
  214. data/lib/net/ssh/transport/ossl/hmac/md5-96.rb +0 -44
  215. data/lib/net/ssh/transport/ossl/hmac/md5.rb +0 -46
  216. data/lib/net/ssh/transport/ossl/hmac/none.rb +0 -46
  217. data/lib/net/ssh/transport/ossl/hmac/services.rb +0 -68
  218. data/lib/net/ssh/transport/ossl/hmac/sha1-96.rb +0 -44
  219. data/lib/net/ssh/transport/ossl/hmac/sha1.rb +0 -45
  220. data/lib/net/ssh/transport/ossl/key-factory.rb +0 -116
  221. data/lib/net/ssh/transport/ossl/services.rb +0 -149
  222. data/lib/net/ssh/transport/packet-stream.rb +0 -236
  223. data/lib/net/ssh/transport/services.rb +0 -146
  224. data/lib/net/ssh/transport/version-negotiator.rb +0 -73
  225. data/lib/net/ssh/userauth/agent.rb +0 -222
  226. data/lib/net/ssh/userauth/constants.rb +0 -35
  227. data/lib/net/ssh/userauth/driver.rb +0 -183
  228. data/lib/net/ssh/userauth/methods/hostbased.rb +0 -119
  229. data/lib/net/ssh/userauth/methods/keyboard-interactive.rb +0 -104
  230. data/lib/net/ssh/userauth/methods/password.rb +0 -70
  231. data/lib/net/ssh/userauth/methods/publickey.rb +0 -137
  232. data/lib/net/ssh/userauth/methods/services.rb +0 -90
  233. data/lib/net/ssh/userauth/pageant.rb +0 -197
  234. data/lib/net/ssh/userauth/services.rb +0 -141
  235. data/lib/net/ssh/userauth/userkeys.rb +0 -258
  236. data/lib/net/ssh/util/buffer.rb +0 -274
  237. data/lib/net/ssh/util/prompter.rb +0 -73
  238. data/test/ALL-TESTS.rb +0 -18
  239. data/test/connection/tc_channel.rb +0 -136
  240. data/test/connection/tc_driver.rb +0 -287
  241. data/test/connection/tc_integration.rb +0 -87
  242. data/test/proxy/tc_http.rb +0 -209
  243. data/test/proxy/tc_socks4.rb +0 -148
  244. data/test/proxy/tc_socks5.rb +0 -214
  245. data/test/service/agentforward/tc_driver.rb +0 -138
  246. data/test/service/forward/tc_driver.rb +0 -289
  247. data/test/service/forward/tc_local_network_handler.rb +0 -123
  248. data/test/service/forward/tc_remote_network_handler.rb +0 -111
  249. data/test/service/process/tc_driver.rb +0 -79
  250. data/test/service/process/tc_integration.rb +0 -119
  251. data/test/service/process/tc_open.rb +0 -179
  252. data/test/service/process/tc_popen3.rb +0 -164
  253. data/test/tc_integration.rb +0 -80
  254. data/test/transport/compress/tc_none_compress.rb +0 -41
  255. data/test/transport/compress/tc_none_decompress.rb +0 -45
  256. data/test/transport/compress/tc_zlib_compress.rb +0 -61
  257. data/test/transport/compress/tc_zlib_decompress.rb +0 -48
  258. data/test/transport/kex/tc_dh.rb +0 -312
  259. data/test/transport/kex/tc_dh_gex.rb +0 -71
  260. data/test/transport/ossl/fixtures/dsa-encrypted +0 -15
  261. data/test/transport/ossl/fixtures/dsa-encrypted-bad +0 -15
  262. data/test/transport/ossl/fixtures/dsa-unencrypted +0 -12
  263. data/test/transport/ossl/fixtures/dsa-unencrypted-bad +0 -12
  264. data/test/transport/ossl/fixtures/dsa-unencrypted.pub +0 -1
  265. data/test/transport/ossl/fixtures/not-a-private-key +0 -4
  266. data/test/transport/ossl/fixtures/not-supported +0 -2
  267. data/test/transport/ossl/fixtures/rsa-encrypted +0 -18
  268. data/test/transport/ossl/fixtures/rsa-encrypted-bad +0 -18
  269. data/test/transport/ossl/fixtures/rsa-unencrypted +0 -15
  270. data/test/transport/ossl/fixtures/rsa-unencrypted-bad +0 -15
  271. data/test/transport/ossl/fixtures/rsa-unencrypted.pub +0 -1
  272. data/test/transport/ossl/hmac/tc_hmac.rb +0 -58
  273. data/test/transport/ossl/hmac/tc_md5.rb +0 -50
  274. data/test/transport/ossl/hmac/tc_md5_96.rb +0 -50
  275. data/test/transport/ossl/hmac/tc_none.rb +0 -50
  276. data/test/transport/ossl/hmac/tc_sha1.rb +0 -50
  277. data/test/transport/ossl/hmac/tc_sha1_96.rb +0 -50
  278. data/test/transport/ossl/tc_buffer.rb +0 -97
  279. data/test/transport/ossl/tc_buffer_factory.rb +0 -67
  280. data/test/transport/ossl/tc_cipher_factory.rb +0 -84
  281. data/test/transport/ossl/tc_digest_factory.rb +0 -39
  282. data/test/transport/ossl/tc_hmac_factory.rb +0 -72
  283. data/test/transport/ossl/tc_key_factory.rb +0 -199
  284. data/test/transport/tc_algorithm_negotiator.rb +0 -170
  285. data/test/transport/tc_identity_cipher.rb +0 -52
  286. data/test/transport/tc_integration.rb +0 -115
  287. data/test/transport/tc_packet_stream.rb +0 -184
  288. data/test/transport/tc_session.rb +0 -296
  289. data/test/transport/tc_version_negotiator.rb +0 -86
  290. data/test/userauth/methods/tc_hostbased.rb +0 -136
  291. data/test/userauth/methods/tc_password.rb +0 -89
  292. data/test/userauth/methods/tc_publickey.rb +0 -167
  293. data/test/userauth/tc_agent.rb +0 -223
  294. data/test/userauth/tc_driver.rb +0 -190
  295. data/test/userauth/tc_integration.rb +0 -97
  296. data/test/userauth/tc_userkeys.rb +0 -265
  297. data/test/util/tc_buffer.rb +0 -217
@@ -1,71 +0,0 @@
1
- #--
2
- # =============================================================================
3
- # Copyright (c) 2004,2005 Jamis Buck (jamis@37signals.com)
4
- # All rights reserved.
5
- #
6
- # This source file is distributed as part of the Net::SSH Secure Shell Client
7
- # library for Ruby. This file (and the library as a whole) may be used only as
8
- # allowed by either the BSD license, or the Ruby license (or, by association
9
- # with the Ruby license, the GPL). See the "doc" subdirectory of the Net::SSH
10
- # distribution for the texts of these licenses.
11
- # -----------------------------------------------------------------------------
12
- # net-ssh website : http://net-ssh.rubyforge.org
13
- # project website: http://rubyforge.org/projects/net-ssh
14
- # =============================================================================
15
- #++
16
-
17
- $:.unshift "#{File.dirname(__FILE__)}/../../../lib"
18
- $:.unshift File.dirname( __FILE__ )
19
-
20
- require 'tc_dh' unless defined?(TC_KEX_DH)
21
-
22
- require 'net/ssh/errors'
23
- require 'net/ssh/transport/kex/dh-gex'
24
- require 'net/ssh/util/buffer'
25
- require 'test/unit'
26
- require 'ostruct'
27
-
28
- class TC_KEX_DH_GEX < TC_KEX_DH
29
-
30
- def setup
31
- @kex = Net::SSH::Transport::Kex::DiffieHellmanGroupExchangeSHA1.new(
32
- MockBNs.new, MockDigests.new )
33
- @kex.keys = MockKeys.new
34
- @kex.buffers = MockBuffers.new
35
- @kex.host_key_verifier = Net::SSH::NullHostKeyVerifier.new
36
-
37
- @init = 32
38
- @reply = 33
39
- @session_id = "\0\0\0\1A\0\0\0\1B\0\0\0\1C\0\0\0\1D\0\0\0\1E\0\0\4\0\0\0\0\0\0\0\40\0[2][6][10][20][30]"
40
-
41
- @exchange_keys_script = [
42
- 31,
43
- MockReaderBuffer.new( "\0\0\0\00210\0\0\0\00220" ),
44
- @reply,
45
- MockReaderBuffer.new( "\0\0\0\10key blob\0\0\0\0041001\0\0\0\27\0\0\0\10ssh-test\0\0\0\11signature" ),
46
- 21,
47
- nil
48
- ]
49
-
50
- @exchange_keys_session_id =
51
- "\0\0\0\1A\0\0\0\1B\0\0\0\1C\0\0\0\1D\0\0\0\10key blob\0\0\4\0\0\0\4\0\0\0\40\0[10][20][1024][1001][9]"
52
- end
53
-
54
- def test_generate_key
55
- session = MockSession.new(
56
- 31,
57
- MockReaderBuffer.new( "\0\0\0\00210\0\0\0\00220" )
58
- )
59
-
60
- dh = nil
61
- assert_nothing_raised do
62
- dh = @kex.generate_key( session, { :need_bytes=>200 } )
63
- end
64
-
65
- assert_equal 10, dh.p.to_i
66
- assert_equal 20, dh.g.to_i
67
- assert_equal 1600, dh.priv_key
68
- end
69
-
70
-
71
- end
@@ -1,15 +0,0 @@
1
- -----BEGIN DSA PRIVATE KEY-----
2
- Proc-Type: 4,ENCRYPTED
3
- DEK-Info: DES-EDE3-CBC,CA86D7A7E5A0B7BE
4
-
5
- 1vrZ2e7mdVzJoM+J9kASLq6UPPofc1OPqV4WF0wwobAUBKT1zDL8ufSxBLEGsoss
6
- CJg2qHL4Jq+KYfIjR2AwF0HPvAiAkNE4wZq+DuNRKuNtbv33KeINuD4AhpK0G3a/
7
- uVEr+qjlmwPDeILrhtC6h+s3zfu0pm2RS7azRb/Hgr6Zh1bQ44ld6UyS5ye+9GNo
8
- MJobG7W2IN/9AroaxlzFOOjax9w/f/zEfKjzsf/HaKjGq62rddAD9I19Vo2XSjzw
9
- bVJuTpz8N7bJC14xmd199L/ZJiFTtVjCroQgcrrOvz/fBbJm6TQ0sDP4rwTDygB3
10
- sVdVgkkFrK3d72TTqx4Kf126yLERmH4SUJGaZHu9QixDuGeL5TUuv18ppDvrirk5
11
- 0/DQHop7CzIyr89VDeH3MN5g5Ab2TOz47vifaS9lcED1ipcDuN5kklAtRVKFRs7V
12
- hN9W4u5gjR15+zAva+ELonRcKNCmqL6UmaXeiCJTaPECI0rsWH3TpcOH4ZlCSMkX
13
- HMgqOFgWbqrpjggsYaTAc7w50YSPs7RekiII7/C7drjn43k4TMOIvt1olV271vCs
14
- K8Hreca4AhJQiiw+pSOPqw==
15
- -----END DSA PRIVATE KEY-----
@@ -1,15 +0,0 @@
1
- -----BEGIN DSA PRIVATE KEY-----
2
- Proc-Type: 4,ENCRYPTED
3
- DEK-Info: DES-EDE3-CBC,CA86D7A7E5A0B7BE
4
-
5
- KvrZ2e7mdVzJoM+J9kASLq6UPPofc1OPqV4WF0wwobAUBKT1zDL8ufSxBLEGsoss
6
- CJg2qHL4Jq+KYfIjR2AwF0HPvAiAkNE4wZq+DuNRKuNtbv33KeINuD4AhpK0G3a/
7
- uVEr+qjlmwPDeILrhtC6h+s3zfu0pm2RS7azRb/Hgr6Zh1bQ44ld6UyS5ye+9GNo
8
- MJobG7W2IN/9AroaxlzFOOjax9w/f/zEfKjzsf/HaKjGq62rddAD9I19Vo2XSjzw
9
- bVJuTpz8N7bJC14xmd199L/ZJiFTtVjCroQgcrrOvz/fBbJm6TQ0sDP4rwTDygB3
10
- sVdVgkkFrK3d72TTqx4Kf126yLERmH4SUJGaZHu9QixDuGeL5TUuv18ppDvrirk5
11
- 0/DQHop7CzIyr89VDeH3MN5g5Ab2TOz47vifaS9lcED1ipcDuN5kklAtRVKFRs7V
12
- hN9W4u5gjR15+zAva+ELonRcKNCmqL6UmaXeiCJTaPECI0rsWH3TpcOH4ZlCSMkX
13
- HMgqOFgWbqrpjggsYaTAc7w50YSPs7RekiII7/C7drjn43k4TMOIvt1olV271vCs
14
- K8Hreca4AhJQiiw+pSOPqw==
15
- -----END DSA PRIVATE KEY-----
@@ -1,12 +0,0 @@
1
- -----BEGIN DSA PRIVATE KEY-----
2
- MIIBuwIBAAKBgQCFWkGxWvLT0uy8xsTUCn+Dl+tp8t3ZziTkqxgKCeBEAcgro223
3
- 9+IauVzN7KNuH1yFyVU3pT+jgqWBbicros1sJsktz4rP5Mgwim8kfiz0Rg5i4VXp
4
- Dca7JAk7frWthdTwPswO6xbKH3ZNlcQ3VxE1vGqAOD75053en9oRaO/wlQIVAODO
5
- ZS2mApa35TsWl/kw6L/7lkclAoGAXET5WGUpGXHWUdrK3DUs/Nq8Ews6yYMtnJcV
6
- KdS1mOX5dJXMTtFZ+9y/Yq7cDT5PihL8XG91gar+qtU2hZyJd3afnczQ0t7KY5FV
7
- Urfw0wR4xca40u6q6gtTxXgrQMio/Wxl7dg7AqBoQj5b4H1AUhqrJ6HY0zYNE0Md
8
- alvxxgACgYAlu5scvM48376lMovWPnh71tYLxAc6bkniDtKrYX1HGGOSJ1JtmCmh
9
- ybNniZrUlH6MgT9U8oCgxZ5NZNvp3qAfNly3ZPdxV8cHJ5zKekE6FfPnb0ezt1GM
10
- ybSZ+W8NRKHI6AJemSZHQEyhcDOf3QHhKLIXB8oRyNiblyAW4+ETJAIVAICvqsKR
11
- I73VBK97NFDnvuZe9NyR
12
- -----END DSA PRIVATE KEY-----
@@ -1,12 +0,0 @@
1
- -----BEGIN DSA PRIVATE KEY-----
2
- KIIBuwIBAAKBgQCFWkGxWvLT0uy8xsTUCn+Dl+tp8t3ZziTkqxgKCeBEAcgro223
3
- 9+IauVzN7KNuH1yFyVU3pT+jgqWBbicros1sJsktz4rP5Mgwim8kfiz0Rg5i4VXp
4
- Dca7JAk7frWthdTwPswO6xbKH3ZNlcQ3VxE1vGqAOD75053en9oRaO/wlQIVAODO
5
- ZS2mApa35TsWl/kw6L/7lkclAoGAXET5WGUpGXHWUdrK3DUs/Nq8Ews6yYMtnJcV
6
- KdS1mOX5dJXMTtFZ+9y/Yq7cDT5PihL8XG91gar+qtU2hZyJd3afnczQ0t7KY5FV
7
- Urfw0wR4xca40u6q6gtTxXgrQMio/Wxl7dg7AqBoQj5b4H1AUhqrJ6HY0zYNE0Md
8
- alvxxgACgYAlu5scvM48376lMovWPnh71tYLxAc6bkniDtKrYX1HGGOSJ1JtmCmh
9
- ybNniZrUlH6MgT9U8oCgxZ5NZNvp3qAfNly3ZPdxV8cHJ5zKekE6FfPnb0ezt1GM
10
- ybSZ+W8NRKHI6AJemSZHQEyhcDOf3QHhKLIXB8oRyNiblyAW4+ETJAIVAICvqsKR
11
- I73VBK97NFDnvuZe9NyR
12
- -----END DSA PRIVATE KEY-----
@@ -1 +0,0 @@
1
- ssh-dss AAAAB3NzaC1kc3MAAACBAIVaQbFa8tPS7LzGxNQKf4OX62ny3dnOJOSrGAoJ4EQByCujbbf34hq5XM3so24fXIXJVTelP6OCpYFuJyuizWwmyS3Pis/kyDCKbyR+LPRGDmLhVekNxrskCTt+ta2F1PA+zA7rFsofdk2VxDdXETW8aoA4PvnTnd6f2hFo7/CVAAAAFQDgzmUtpgKWt+U7Fpf5MOi/+5ZHJQAAAIBcRPlYZSkZcdZR2srcNSz82rwTCzrJgy2clxUp1LWY5fl0lcxO0Vn73L9irtwNPk+KEvxcb3WBqv6q1TaFnIl3dp+dzNDS3spjkVVSt/DTBHjFxrjS7qrqC1PFeCtAyKj9bGXt2DsCoGhCPlvgfUBSGqsnodjTNg0TQx1qW/HGAAAAAIAlu5scvM48376lMovWPnh71tYLxAc6bkniDtKrYX1HGGOSJ1JtmCmhybNniZrUlH6MgT9U8oCgxZ5NZNvp3qAfNly3ZPdxV8cHJ5zKekE6FfPnb0ezt1GMybSZ+W8NRKHI6AJemSZHQEyhcDOf3QHhKLIXB8oRyNiblyAW4+ETJA== jgb3@serling
@@ -1,4 +0,0 @@
1
- But soft!
2
- What light through yonder window breaks?
3
- It is the east,
4
- And Juliet is the sun.
@@ -1,2 +0,0 @@
1
- -----BEGIN BOGUS PRIVATE KEY-----
2
- Howdy doody time, pardner!
@@ -1,18 +0,0 @@
1
- -----BEGIN RSA PRIVATE KEY-----
2
- Proc-Type: 4,ENCRYPTED
3
- DEK-Info: DES-EDE3-CBC,E5D25575E4BE33DA
4
-
5
- I0g6GVn6BbpYPtjoq6rXHmVNBdEuNP/ZM2esybJE5sDKOd24KvfEbZfkBJbmRJuv
6
- HKap4LkwW5uGMX2A2Gm1HNmuL3kya+iU2IUiRbE9ucOY/45Il0GRl2EHPbmlSKFO
7
- ir9dKN4PnuJVWTNvg5AlnTFJmrd9gY3q2VzWLqHkJjd2RqcdH32o8P9JNJ3MyBh1
8
- 0r/oD7gvVEhwAldnCqSPZKDKJI7kO3iwl6NJguwpSxAl5aDiH7Cpf1ObCzG5J25j
9
- P72l2Ruuen6tVLUxmisSyVzKqRBgYg9SkjKm1/8gG4giVXOsQFrRMKCzVpd0wB+j
10
- V6u3u3EVqvEOOAzV2X4DyE5a0PECRSyCnjO4s2mPPkxxqpruRxs1aV27hZ0Wr4NI
11
- nAzbDWKdvbI12vZbDPYD7RWNkdC+Plc8g98RvJ1ia8gMuOxCQ7ov1cCrenKFG503
12
- frdSe4ndn1XNc1S5yrcQjPrS2lCE+ev17ZTiOsNWCzhXQwbJVEWr316fkS1Xz50/
13
- TR2kicEWKRJqxhzw2xO3ud1jiSFezBS7KjlB8oR+OSBBjbFdh5mAtkL6Gz0C/CyB
14
- nPrOlyDKMRRBrXgsJ13ty/GpFyrC0n2+0bMVtu7Sn6QDxzLittxV5rD8EBAasHkP
15
- jD+JH4LI/eP+2UtFphrzqFc9sAGtvsicobL4RgMXQaPR5yhXDreW9ynmJSRYeH9Z
16
- PoBVguFkub+IeMQybu8PuSsHcdAVtsbV9CGKztdSaziIIBsZUzBqk+i9DLRi1T5l
17
- 9IAvQiHtrF6+iyVsRD3nVo/4JYnOllhSvk4q1EQKhmLFBjTcZBklIQ==
18
- -----END RSA PRIVATE KEY-----
@@ -1,18 +0,0 @@
1
- -----BEGIN RSA PRIVATE KEY-----
2
- Proc-Type: 4,ENCRYPTED
3
- DEK-Info: DES-EDE3-CBC,E5D25575E4BE33DA
4
-
5
- K0g6GVn6BbpYPtjoq6rXHmVNBdEuNP/ZM2esybJE5sDKOd24KvfEbZfkBJbmRJuv
6
- HKap4LkwW5uGMX2A2Gm1HNmuL3kya+iU2IUiRbE9ucOY/45Il0GRl2EHPbmlSKFO
7
- ir9dKN4PnuJVWTNvg5AlnTFJmrd9gY3q2VzWLqHkJjd2RqcdH32o8P9JNJ3MyBh1
8
- 0r/oD7gvVEhwAldnCqSPZKDKJI7kO3iwl6NJguwpSxAl5aDiH7Cpf1ObCzG5J25j
9
- P72l2Ruuen6tVLUxmisSyVzKqRBgYg9SkjKm1/8gG4giVXOsQFrRMKCzVpd0wB+j
10
- V6u3u3EVqvEOOAzV2X4DyE5a0PECRSyCnjO4s2mPPkxxqpruRxs1aV27hZ0Wr4NI
11
- nAzbDWKdvbI12vZbDPYD7RWNkdC+Plc8g98RvJ1ia8gMuOxCQ7ov1cCrenKFG503
12
- frdSe4ndn1XNc1S5yrcQjPrS2lCE+ev17ZTiOsNWCzhXQwbJVEWr316fkS1Xz50/
13
- TR2kicEWKRJqxhzw2xO3ud1jiSFezBS7KjlB8oR+OSBBjbFdh5mAtkL6Gz0C/CyB
14
- nPrOlyDKMRRBrXgsJ13ty/GpFyrC0n2+0bMVtu7Sn6QDxzLittxV5rD8EBAasHkP
15
- jD+JH4LI/eP+2UtFphrzqFc9sAGtvsicobL4RgMXQaPR5yhXDreW9ynmJSRYeH9Z
16
- PoBVguFkub+IeMQybu8PuSsHcdAVtsbV9CGKztdSaziIIBsZUzBqk+i9DLRi1T5l
17
- 9IAvQiHtrF6+iyVsRD3nVo/4JYnOllhSvk4q1EQKhmLFBjTcZBklIQ==
18
- -----END RSA PRIVATE KEY-----
@@ -1,15 +0,0 @@
1
- -----BEGIN RSA PRIVATE KEY-----
2
- MIICWQIBAAKBgQCuTn+zFINTBX1VFgfIMaO3UiohM1AvmjTOz/1eN6aNmkNZkYic
3
- i818kiKZYY+y7hJSvxzTxzpoBGGbh8PFk6eufFcJoA9EVR7Ehm3FzfieVCUEA/RD
4
- CMWhkhb9pOVc6Iu4nArl3R7upvfC7jXYb+cobHnAGg3jmc40Tuxk4+klTwIBIwKB
5
- gBPrttKjQjVfto1hmn1HgGy47t85EHp4BgkB09BA39WrOuWqO3+a8umqTRjX8ypk
6
- Wd2SLy4lZcK+rBHGX4RLY565Izrru+U2Uh4CkJVubbBPtRZguEOnkkl9xBRQVWC0
7
- DlWRdVC80n7NJg4dVVPAmeIteBQgYdGSHDBS+QGdMvMrAkEA6EawWVxTzFEB799C
8
- RYaHMVWKqbLTyLJ1Djy6bC8EKzMB3TiuaCMvBtDGA3S09LHXCoHePvBzpmCpYAcn
9
- q1wvbQJBAMAcFbgG2u1/PAAdaAIyUGle9Yv1H0XTKXdmkXnLSpXbSgYPtQDJ6h0a
10
- AWoWhqXy1lQdMb/FhjT25BjibxkPJisCQH4XvtFsooTbhLVqkbC2vms9EMKFpisf
11
- DFgvmGadLiYUYBkBgz/Yld8g4IWIf32FHPcTTMMU0REtKL8Z07TLpLcCQDFmTrpK
12
- 59arsFfNDB3SbHLd516A3Cfl13Z5dd19avNVpVIECfjjdrcGr+gUa8RFwhWhG2vT
13
- tMvKdSr4ZbX8lMkCQHNIw7sJCz4z5VL5eX2Hg9UHkKKgMGpR/eaFZ+lmNeii57qB
14
- SW+tgWxJksxLImWNuBdV13/PQ6TQEiIENOs/AYE=
15
- -----END RSA PRIVATE KEY-----
@@ -1,15 +0,0 @@
1
- -----BEGIN RSA PRIVATE KEY-----
2
- KIICWQIBAAKBgQCuTn+zFINTBX1VFgfIMaO3UiohM1AvmjTOz/1eN6aNmkNZkYic
3
- i818kiKZYY+y7hJSvxzTxzpoBGGbh8PFk6eufFcJoA9EVR7Ehm3FzfieVCUEA/RD
4
- CMWhkhb9pOVc6Iu4nArl3R7upvfC7jXYb+cobHnAGg3jmc40Tuxk4+klTwIBIwKB
5
- gBPrttKjQjVfto1hmn1HgGy47t85EHp4BgkB09BA39WrOuWqO3+a8umqTRjX8ypk
6
- Wd2SLy4lZcK+rBHGX4RLY565Izrru+U2Uh4CkJVubbBPtRZguEOnkkl9xBRQVWC0
7
- DlWRdVC80n7NJg4dVVPAmeIteBQgYdGSHDBS+QGdMvMrAkEA6EawWVxTzFEB799C
8
- RYaHMVWKqbLTyLJ1Djy6bC8EKzMB3TiuaCMvBtDGA3S09LHXCoHePvBzpmCpYAcn
9
- q1wvbQJBAMAcFbgG2u1/PAAdaAIyUGle9Yv1H0XTKXdmkXnLSpXbSgYPtQDJ6h0a
10
- AWoWhqXy1lQdMb/FhjT25BjibxkPJisCQH4XvtFsooTbhLVqkbC2vms9EMKFpisf
11
- DFgvmGadLiYUYBkBgz/Yld8g4IWIf32FHPcTTMMU0REtKL8Z07TLpLcCQDFmTrpK
12
- 59arsFfNDB3SbHLd516A3Cfl13Z5dd19avNVpVIECfjjdrcGr+gUa8RFwhWhG2vT
13
- tMvKdSr4ZbX8lMkCQHNIw7sJCz4z5VL5eX2Hg9UHkKKgMGpR/eaFZ+lmNeii57qB
14
- SW+tgWxJksxLImWNuBdV13/PQ6TQEiIENOs/AYE=
15
- -----END RSA PRIVATE KEY-----
@@ -1 +0,0 @@
1
- ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEArk5/sxSDUwV9VRYHyDGjt1IqITNQL5o0zs/9XjemjZpDWZGInIvNfJIimWGPsu4SUr8c08c6aARhm4fDxZOnrnxXCaAPRFUexIZtxc34nlQlBAP0QwjFoZIW/aTlXOiLuJwK5d0e7qb3wu412G/nKGx5wBoN45nONE7sZOPpJU8= jgb3@serling
@@ -1,58 +0,0 @@
1
- #--
2
- # =============================================================================
3
- # Copyright (c) 2004,2005 Jamis Buck (jamis@37signals.com)
4
- # All rights reserved.
5
- #
6
- # This source file is distributed as part of the Net::SSH Secure Shell Client
7
- # library for Ruby. This file (and the library as a whole) may be used only as
8
- # allowed by either the BSD license, or the Ruby license (or, by association
9
- # with the Ruby license, the GPL). See the "doc" subdirectory of the Net::SSH
10
- # distribution for the texts of these licenses.
11
- # -----------------------------------------------------------------------------
12
- # net-ssh website : http://net-ssh.rubyforge.org
13
- # project website: http://rubyforge.org/projects/net-ssh
14
- # =============================================================================
15
- #++
16
-
17
- $:.unshift "#{File.dirname(__FILE__)}/../../../../lib"
18
-
19
- require 'net/ssh/transport/ossl/hmac/hmac'
20
- require 'test/unit'
21
-
22
- class TC_HMAC < Test::Unit::TestCase
23
-
24
- class MockHMAC < Net::SSH::Transport::OSSL::HMAC::Abstract
25
- def initialize
26
- @mac_length = 10
27
- @key_length = 8
28
- @digest_class = OpenSSL::Digest::MD5
29
- end
30
- end
31
-
32
- def setup
33
- @hmac = MockHMAC.new.new( "12345678901234567890" )
34
- end
35
-
36
- def test_key
37
- assert_equal "12345678", @hmac.key
38
- end
39
-
40
- def test_key_length
41
- assert_equal 8, @hmac.key_length
42
- end
43
-
44
- def test_mac_length
45
- assert_equal 10, @hmac.mac_length
46
- end
47
-
48
- def test_digest_class
49
- assert_equal OpenSSL::Digest::MD5, @hmac.digest_class
50
- end
51
-
52
- def test_digest
53
- expect = "\221r\262\202\210\234\346 \242 "
54
- assert_equal expect,
55
- @hmac.digest( "To be, or not to be, that is the question" )
56
- end
57
-
58
- end
@@ -1,50 +0,0 @@
1
- #--
2
- # =============================================================================
3
- # Copyright (c) 2004,2005 Jamis Buck (jamis@37signals.com)
4
- # All rights reserved.
5
- #
6
- # This source file is distributed as part of the Net::SSH Secure Shell Client
7
- # library for Ruby. This file (and the library as a whole) may be used only as
8
- # allowed by either the BSD license, or the Ruby license (or, by association
9
- # with the Ruby license, the GPL). See the "doc" subdirectory of the Net::SSH
10
- # distribution for the texts of these licenses.
11
- # -----------------------------------------------------------------------------
12
- # net-ssh website : http://net-ssh.rubyforge.org
13
- # project website: http://rubyforge.org/projects/net-ssh
14
- # =============================================================================
15
- #++
16
-
17
- $:.unshift "#{File.dirname(__FILE__)}/../../../../lib"
18
-
19
- require 'net/ssh/transport/ossl/hmac/md5'
20
- require 'test/unit'
21
-
22
- class TC_HMAC_MD5 < Test::Unit::TestCase
23
-
24
- def setup
25
- @hmac = Net::SSH::Transport::OSSL::HMAC::MD5.new.new( "1234567890123456789012345" )
26
- end
27
-
28
- def test_key
29
- assert_equal "1234567890123456", @hmac.key
30
- end
31
-
32
- def test_key_length
33
- assert_equal 16, @hmac.key_length
34
- end
35
-
36
- def test_mac_length
37
- assert_equal 16, @hmac.mac_length
38
- end
39
-
40
- def test_digest_class
41
- assert_equal OpenSSL::Digest::MD5, @hmac.digest_class
42
- end
43
-
44
- def test_digest
45
- expect = "\242\214\260\003\320q\214i%\306\rG\326O\261\245"
46
- assert_equal expect,
47
- @hmac.digest( "To be, or not to be, that is the question" )
48
- end
49
-
50
- end
@@ -1,50 +0,0 @@
1
- #--
2
- # =============================================================================
3
- # Copyright (c) 2004,2005 Jamis Buck (jamis@37signals.com)
4
- # All rights reserved.
5
- #
6
- # This source file is distributed as part of the Net::SSH Secure Shell Client
7
- # library for Ruby. This file (and the library as a whole) may be used only as
8
- # allowed by either the BSD license, or the Ruby license (or, by association
9
- # with the Ruby license, the GPL). See the "doc" subdirectory of the Net::SSH
10
- # distribution for the texts of these licenses.
11
- # -----------------------------------------------------------------------------
12
- # net-ssh website : http://net-ssh.rubyforge.org
13
- # project website: http://rubyforge.org/projects/net-ssh
14
- # =============================================================================
15
- #++
16
-
17
- $:.unshift "#{File.dirname(__FILE__)}/../../../../lib"
18
-
19
- require 'net/ssh/transport/ossl/hmac/md5-96'
20
- require 'test/unit'
21
-
22
- class TC_HMAC_MD5_96 < Test::Unit::TestCase
23
-
24
- def setup
25
- @hmac = Net::SSH::Transport::OSSL::HMAC::MD5_96.new.new( "1234567890123456789012345" )
26
- end
27
-
28
- def test_key
29
- assert_equal "1234567890123456", @hmac.key
30
- end
31
-
32
- def test_key_length
33
- assert_equal 16, @hmac.key_length
34
- end
35
-
36
- def test_mac_length
37
- assert_equal 12, @hmac.mac_length
38
- end
39
-
40
- def test_digest_class
41
- assert_equal OpenSSL::Digest::MD5, @hmac.digest_class
42
- end
43
-
44
- def test_digest
45
- expect = "\242\214\260\003\320q\214i%\306\rG"
46
- assert_equal expect,
47
- @hmac.digest( "To be, or not to be, that is the question" )
48
- end
49
-
50
- end
@@ -1,50 +0,0 @@
1
- #--
2
- # =============================================================================
3
- # Copyright (c) 2004,2005 Jamis Buck (jamis@37signals.com)
4
- # All rights reserved.
5
- #
6
- # This source file is distributed as part of the Net::SSH Secure Shell Client
7
- # library for Ruby. This file (and the library as a whole) may be used only as
8
- # allowed by either the BSD license, or the Ruby license (or, by association
9
- # with the Ruby license, the GPL). See the "doc" subdirectory of the Net::SSH
10
- # distribution for the texts of these licenses.
11
- # -----------------------------------------------------------------------------
12
- # net-ssh website : http://net-ssh.rubyforge.org
13
- # project website: http://rubyforge.org/projects/net-ssh
14
- # =============================================================================
15
- #++
16
-
17
- $:.unshift "#{File.dirname(__FILE__)}/../../../../lib"
18
-
19
- require 'net/ssh/transport/ossl/hmac/none'
20
- require 'test/unit'
21
-
22
- class TC_HMAC_None < Test::Unit::TestCase
23
-
24
- def setup
25
- @hmac = Net::SSH::Transport::OSSL::HMAC::None.new.new( "12345678901234567890" )
26
- end
27
-
28
- def test_key
29
- assert_equal "", @hmac.key
30
- end
31
-
32
- def test_key_length
33
- assert_equal 0, @hmac.key_length
34
- end
35
-
36
- def test_mac_length
37
- assert_equal 0, @hmac.mac_length
38
- end
39
-
40
- def test_digest_class
41
- assert_nil @hmac.digest_class
42
- end
43
-
44
- def test_digest
45
- expect = ""
46
- assert_equal expect,
47
- @hmac.digest( "To be, or not to be, that is the question" )
48
- end
49
-
50
- end
@@ -1,50 +0,0 @@
1
- #--
2
- # =============================================================================
3
- # Copyright (c) 2004,2005 Jamis Buck (jamis@37signals.com)
4
- # All rights reserved.
5
- #
6
- # This source file is distributed as part of the Net::SSH Secure Shell Client
7
- # library for Ruby. This file (and the library as a whole) may be used only as
8
- # allowed by either the BSD license, or the Ruby license (or, by association
9
- # with the Ruby license, the GPL). See the "doc" subdirectory of the Net::SSH
10
- # distribution for the texts of these licenses.
11
- # -----------------------------------------------------------------------------
12
- # net-ssh website : http://net-ssh.rubyforge.org
13
- # project website: http://rubyforge.org/projects/net-ssh
14
- # =============================================================================
15
- #++
16
-
17
- $:.unshift "#{File.dirname(__FILE__)}/../../../../lib"
18
-
19
- require 'net/ssh/transport/ossl/hmac/sha1'
20
- require 'test/unit'
21
-
22
- class TC_HMAC_SHA1 < Test::Unit::TestCase
23
-
24
- def setup
25
- @hmac = Net::SSH::Transport::OSSL::HMAC::SHA1.new.new( "1234567890123456789012345" )
26
- end
27
-
28
- def test_key
29
- assert_equal "12345678901234567890", @hmac.key
30
- end
31
-
32
- def test_key_length
33
- assert_equal 20, @hmac.key_length
34
- end
35
-
36
- def test_mac_length
37
- assert_equal 20, @hmac.mac_length
38
- end
39
-
40
- def test_digest_class
41
- assert_equal OpenSSL::Digest::SHA1, @hmac.digest_class
42
- end
43
-
44
- def test_digest
45
- expect = "\203\266\253\336\242\311zE\360~\325j\322\271<\371\375\253\244k"
46
- assert_equal expect,
47
- @hmac.digest( "To be, or not to be, that is the question" )
48
- end
49
-
50
- end