Hi there Sorry to cross-post (see bottom).
I'm trying to have my AppEngine application verify signed requests from my iGoogle gadget. I'm very ignorant in this regard so please excuse me. I'm basically following this guide http://wiki.opensocial.org/index.php?title=Building_an_OpenSocial_App_with_Google_App_Engine However, that guide has the public key for Orkut. I found this public key for iGoogle (see bottom). I understand that I need to extract a base and exponent from it in order to construct an RSA object. In the guide, it seems the exponent has already been extracted in hexadecimal. It's easy enough to convert base64 to hex (see bottom). This guide http://stackoverflow.com/questions/544433/how-do-you-verify-an-rsa-sha1-signature-in-python seems to suggest that extracting the base and exponent is simply a matter of knowing the offset in the hex. Can anyone help me out? Thanks! PS Sorry to cross-post: I posted this in the iGoogle group but got banned by the owner. I'm not sure why. -----BEGIN CERTIFICATE----- MIIDBDCCAm2gAwIBAgIJAK8dGINfkSTHMA0GCSqGSIb3DQEBBQUAMGAxCzAJBgNV BAYTAlVTMQswCQYDVQQIEwJDQTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzETMBEG A1UEChMKR29vZ2xlIEluYzEXMBUGA1UEAxMOd3d3Lmdvb2dsZS5jb20wHhcNMDgx MDA4MDEwODMyWhcNMDkxMDA4MDEwODMyWjBgMQswCQYDVQQGEwJVUzELMAkGA1UE CBMCQ0ExFjAUBgNVBAcTDU1vdW50YWluIFZpZXcxEzARBgNVBAoTCkdvb2dsZSBJ bmMxFzAVBgNVBAMTDnd3dy5nb29nbGUuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GN ADCBiQKBgQDQUV7ukIfIixbokHONGMW9+ed0E9X4m99I8upPQp3iAtqIvWs7XCbA bGqzQH1qX9Y00hrQ5RRQj8OI3tRiQs/KfzGWOdvLpIk5oXpdT58tg4FlYh5fbhIo VoVn4GvtSjKmJFsoM8NRtEJHL1aWd++dXzkQjEsNcBXwQvfDb0YnbQIDAQABo4HF MIHCMB0GA1UdDgQWBBSm/h1pNY91bNfW08ac9riYzs3cxzCBkgYDVR0jBIGKMIGH gBSm/h1pNY91bNfW08ac9riYzs3cx6FkpGIwYDELMAkGA1UEBhMCVVMxCzAJBgNV BAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRMwEQYDVQQKEwpHb29nbGUg SW5jMRcwFQYDVQQDEw53d3cuZ29vZ2xlLmNvbYIJAK8dGINfkSTHMAwGA1UdEwQF MAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAYpHTr3vQNsHHHUm4MkYcDB20a5KvcFoX gCcYtmdyd8rh/FKeZm2me7eQCXgBfJqQ4dvVLJ4LgIQiU3R5ZDe0WbW7rJ3M9ADQ FyQoRJP8OIMYW3BoMi0Z4E730KSLRh6kfLq4rK6vw7lkH9oynaHHWZSJLDAp17cP j+6znWkN9/g= -----END CERTIFICATE----- And this time in hex: 308203043082026DA003020102020900AF1D18835F9124C7300D06092A864886F70D01010505003 060310B3009060355040613025553310B3009060355040813024341311630140603550407130D4D6 F756E7461696E205669657731133011060355040A130A476F6F676C6520496E63311730150603550 403130E7777772E676F6F676C652E636F6D301E170D3038313030383031303833325A170D3039313 030383031303833325A3060310B3009060355040613025553310B300906035504081302434131163 0140603550407130D4D6F756E7461696E205669657731133011060355040A130A476F6F676C65204 96E63311730150603550403130E7777772E676F6F676C652E636F6D30819F300D06092A864886F70 D010101050003818D0030818902818100D0515EEE9087C88B16E890738D18C5BDF9E77413D5F89BD F48F2EA4F429DE202DA88BD6B3B5C26C06C6AB3407D6A5FD634D21AD0E514508FC388DED46242CFC A7F319639DBCBA48939A17A5D4F9F2D838165621E5F6E1228568567E06BED4A32A6245B2833C351B 442472F569677EF9D5F39108C4B0D7015F042F7C36F46276D0203010001A381C53081C2301D06035 51D0E04160414A6FE1D69358F756CD7D6D3C69CF6B898CECDDCC73081920603551D2304818A30818 78014A6FE1D69358F756CD7D6D3C69CF6B898CECDDCC7A164A4623060310B3009060355040613025 553310B3009060355040813024341311630140603550407130D4D6F756E7461696E2056696577311 33011060355040A130A476F6F676C6520496E63311730150603550403130E7777772E676F6F676C6 52E636F6D820900AF1D18835F9124C7300C0603551D13040530030101FF300D06092A864886F70D0 101050500038181006291D3AF7BD036C1C71D49B832461C0C1DB46B92AF705A17802718B6677277C AE1FC529E666DA67BB7900978017C9A90E1DBD52C9E0B8084225374796437B459B5BBAC9DCCF400D 01724284493FC3883185B7068322D19E04EF7D0A48B461EA47CBAB8ACAEAFC3B9641FDA329DA1C75 994892C3029D7B70F8FEEB39D690DF7F8 --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google App Engine" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/google-appengine?hl=en -~----------~----~----~----~------~----~------~--~---
