Test the RSA-SHA1 signature method.

This commit is contained in:
laserlemon 2010-10-13 10:07:18 -04:00
parent 644b8bb2fe
commit d05bed55d2
2 changed files with 29 additions and 29 deletions

View file

@ -1,27 +1,16 @@
-----BEGIN RSA PRIVATE KEY-----
MIIEogIBAAKCAQEA2jIkb36vr5SYN0bvwfQeAKvjLr52zCsolZLyhLwwwDFVdYhS
Cd7P4rd/AzFliX1SgcEzgQ6SIujVfB5o8SKXVxpL/6YGZ4bq4WN7HTVHjR2giadB
JE5cFnzzaXxMEn+N50bDX7bC53aoy+GDLw4Q+fUfpxZzv0zjNWaqowwnW+amF0aM
dbS/DMcNOhlHoNQw8IYA/h1n/RseGf43sAxuwXap6UA12RzPO5us1zi7JK4OdyZf
fWZHUnAy2T6LFb6ROIkOvy3radxOlneRzxRNWB/COBgXdOQ+1TOIkwd15uv3IIWR
bPPGlfrmRp73PuYGPEyBaVFb6QKgiMEwYFUB+wIBIwKCAQB2cv3WIDN8kn6EaFZE
t7iEBYn0zct2Jg63mOoNirthBNae45o/31roygMe/Y7kPLfCx/djUQ2AqkgBjNnh
/NXQMtjMm/TZHVrvYeO/ZhDmNKebLujZMdo4F/HaLYhh0DcXJmoPYzaa6KTGcxtU
DvNF3NarKXIIw1bFN7u3mOIqkiYMm/yS8TB6wjcFVzTmTaoXvym30P7CdJmo1SfA
hg5joxLwYhfhqK2d45AsCIf6ofaF9QpII4JzQfmO0/SLiyuMo6QcWeUyLcl+/8gL
zr8erLCdg8Y2qjQWC2OG03w2qlL6F4taifpvW8qD0izf/F8lMQHVBvOMfoDnAxbA
TiUbAoGBAPhPnAASLpNUG9X9rzKJ8/NG4yNLBnSBfeWQh9RxAwpKPkqrFVitYRZB
N+OqYiKYjBNsqHeQJ07O2kw3/XKt2NwDrdObn4k6N+NTgnuXl2FdQjGmLdUTvrys
8hhClLQQGA9V0F//NGjHvt3wL9++agInl7NvLnnL//FWgdxRsQejAoGBAODzzpKz
KDC7lkslGkfabB9H/1r0sOhLTSr0I6DBcMM48QZ14fSMC7yGsx3pMquIi9aadyXU
Jfq8vg1xuqbFKLXTd+Rol/HgrmPfv5g8rzsTM6mKtCYXZT0oEYMUt0jQcbq6pMTv
YuFR8UJxFFkMTM4TkGxJS/kMu1X0fQG53iHJAoGBAIbMIXxhpEFZi3QqoO+Mt6FS
XgvYRVUwWklrt3NTSssSXFRrgJ3adohsjA3gJqUQ+5WEIPBy04KNjHKEy2oj3B+q
Ocqk8DSNUYoIwy0maB7pe7SNaVZpzfFlMvc6FjXc2dxwac22bOhsbu2CYyGwgrC2
aEt23rclmZGj/VpYO4fNAoGBANqGcOZHo2KKV3wyq9DFjZq6+A82170V8zEKa8C7
6eI3UInu23/YgG3/MagHG0eL9Y6krkIBSXc7AcPq0pNgcLChimjaojtsjCaBlYyS
uNpNKt82SJoIGTQYS4amaOel6tKmrrCuCEiYvnsOw08whR/1v38ioZLZKwMKwpP2
YsG7AoGAJvdkMO773z84hLYhZlFSSGVt0Asdxlnf8SNu8WX1XFiw50IwVFwYdg0l
ICfih91vOnfZb2zByS+bQxj70h62xAkeIlVqef9FI2giUujS5ZGVQ9+kTk4elBk0
kmzssqjPyyIqS7vTV6qW6g4ftzweXR2LIoqSt2XO4rXn89OZFgc=
-----END RSA PRIVATE KEY-----
-----BEGIN PRIVATE KEY-----
MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBALRiMLAh9iimur8V
A7qVvdqxevEuUkW4K+2KdMXmnQbG9Aa7k7eBjK1S+0LYmVjPKlJGNXHDGuy5Fw/d
7rjVJ0BLB+ubPK8iA/Tw3hLQgXMRRGRXXCn8ikfuQfjUS1uZSatdLB81mydBETlJ
hI6GH4twrbDJCR2Bwy/XWXgqgGRzAgMBAAECgYBYWVtleUzavkbrPjy0T5FMou8H
X9u2AC2ry8vD/l7cqedtwMPp9k7TubgNFo+NGvKsl2ynyprOZR1xjQ7WgrgVB+mm
uScOM/5HVceFuGRDhYTCObE+y1kxRloNYXnx3ei1zbeYLPCHdhxRYW7T0qcynNmw
rn05/KO2RLjgQNalsQJBANeA3Q4Nugqy4QBUCEC09SqylT2K9FrrItqL2QKc9v0Z
zO2uwllCbg0dwpVuYPYXYvikNHHg+aCWF+VXsb9rpPsCQQDWR9TT4ORdzoj+Nccn
qkMsDmzt0EfNaAOwHOmVJ2RVBspPcxt5iN4HI7HNeG6U5YsFBb+/GZbgfBT3kpNG
WPTpAkBI+gFhjfJvRw38n3g/+UeAkwMI2TJQS4n8+hid0uus3/zOjDySH3XHCUno
cn1xOJAyZODBo47E+67R4jV1/gzbAkEAklJaspRPXP877NssM5nAZMU0/O/NGCZ+
3jPgDUno6WbJn5cqm8MqWhW1xGkImgRk+fkDBquiq4gPiT898jusgQJAd5Zrr6Q8
AO/0isr/3aa6O6NLQxISLKcPDk2NOccAfS/xOtfOz4sJYM3+Bs4Io9+dZGSDCA54
Lw03eHTNQghS0A==
-----END PRIVATE KEY-----

View file

@ -84,7 +84,7 @@ class SimpleOAuthTest < Test::Unit::TestCase
# Using the RSA-SHA1 signature method, the consumer secret must be a valid
# RSA private key. When parsing the header on the server side, the same
# consumer secret must be included in order for the header to validate.
secrets = {:consumer_secret => File.read('test/rsa_private_key').to_s}
secrets = {:consumer_secret => File.read('test/rsa_private_key')}
header = SimpleOAuth::Header.new(:get, 'https://api.twitter.com/1/statuses/friends.json', {}, secrets.merge(:signature_method => 'RSA-SHA1'))
parsed_header = SimpleOAuth::Header.new(:get, 'https://api.twitter.com/1/statuses/friends.json', {}, header)
assert_raise(TypeError){ parsed_header.valid? }
@ -258,7 +258,18 @@ class SimpleOAuthTest < Test::Unit::TestCase
end
def test_rsa_sha1_signature
# Pending
# Sample request taken from:
# http://wiki.oauth.net/TestCases
options = {
:consumer_key => 'dpf43f3p2l4k3l03',
:consumer_secret => File.read('test/rsa_private_key'),
:nonce => '13917289812797014437',
:signature_method => 'RSA-SHA1',
:timestamp => '1196666512'
}
successful = 'OAuth oauth_consumer_key="dpf43f3p2l4k3l03", oauth_nonce="13917289812797014437", oauth_signature="jvTp%2FwX1TYtByB1m%2BPbyo0lnCOLIsyGCH7wke8AUs3BpnwZJtAuEJkvQL2%2F9n4s5wUmUl4aCI4BwpraNx4RtEXMe5qg5T1LVTGliMRpKasKsW%2F%2Fe%2BRinhejgCuzoH26dyF8iY2ZZ%2F5D1ilgeijhV%2FvBka5twt399mXwaYdCwFYE%3D", oauth_signature_method="RSA-SHA1", oauth_timestamp="1196666512", oauth_version="1.0"'
header = SimpleOAuth::Header.new(:get, 'http://photos.example.net/photos', {:file => 'vacaction.jpg', :size => 'original'}, options)
assert_equal successful, header.to_s
end
def test_private_key