27
Feb
07

Free, Open Source C# OpenId Client & Server


Well, Scott let the cat out of the bag. One of my nightly projects lately has been working on porting Grant Morton's Boo version of the JanRain OpenID libraries.

You can find it here.

The project is really picking up steam as Scott Hanselman joined in this past week to throw his muscle into the effort. Scott came across the project as he started working on the same issue.

It's been a fun little project. Luckily, I had done quite a bit of Python 4-5 years ago, writing a Python and Zope-based forums application. So, it hasn't been too difficult porting, but there's always some fun in there. The bigger hurdles to tackle were the fact that it used a encryption algorithm called Diffie-Hellman, which .NET 2.0's Crypto libraries had no concept of. Doing some searching, there was a library out there we were able to pull in.

Phase 1's goal is to do a straight port from Boo and make sure we're back to square 1, with working libraries. Phase 2 will be building out some other peripheral controls, or leverage Andrew Arnott's controls.

I'll keep you updated, though. The pace is picking up and it's really taking off. We should be done with Phase 1 within the next few weeks, baring no unforeseen issues.



3 Responses to “Free, Open Source C# OpenId Client & Server“


  1. #1 The Admin 2.27.2007 at 9:36 PM

    Jason,

    I read your comment on his blog about the ASP.NET control wrapper over the JanRain Boo OpenId implementation, and felt compelled to say something.

    OpenId, and Microsoft's efforts to embrace it and integrate the Cardspace and anti-phishing technology  are a very big step in the right direction, IMHO.

    If you do a Codeplex or other project on this, count me in as a contributor, time permitting.

    The key goal should be an open-source control set that allows total dummies to integrate OpenId with ASP.NET Membership. If you can make this a no-brainer with sample code "out of the box" you will forever be in my esteem.

    Peter

    eggheadcafe.com

  2. #2 The Admin 3.04.2007 at 2:03 AM

    Hello Jason, I've actually also thought about doing a port for C#, but one of the objectives was not to use Mono's implementation of Diffie-Hellman and BigInteger to eliminate the dependency on Mono.

    Fortunately, the Mono class library are under the MIT/X11 license so one can do whatever it wants with them.

    My idea was to have a full C# port AND copy the necessary implementation details from Mono to have a standalone and completely independent library that works on both Mono and MS .NET (while on Mono, we can relink it directly with the Mono code instead of the built in grabbed code).

    If you need help, or anything like that, ping me :-)

  3. #3 The Admin 3.19.2007 at 7:12 AM

    I'd like to contribute.

    Hi, I'm a developer and we're about to build a OpenID server (and later on consumer) in c#. I'd love to be involved in the project and may be able to contribute a fair bit of time.

    Contact me via email - willem.muller@netidme.com and we can take it further.





Search

My Tweets

  • @davidmohara I'm right there with ya, bud!
  • at my neice's graduation at OU. Tomorrow she's on to PA school.
  • Mmm... beef jerky for breakfast. Yum.
  • @calebjenkins homestarrunner is greatness! it's all about Strongbad!
  • *yawn* I haven't done this late night thing with my kids in awhile. Sick kids != fun.